並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 84件

新着順 人気順

TDDの検索結果1 - 40 件 / 84件

  • TDDはゆるく実践しても大丈夫 - 千里霧中

    最近、TDDのテストコードは捨てても良いかみたいな議論を見ました。 これに対する自分個人の経験上の意見ですが、TDDは雑多にテストコードを使い捨てても効果を出せると思います。 もちろん、TDDで保守性が高く価値あるテストを書いて、捨てずにCIや中長期的なリファクタリングで再利用していくと、TDDの効果を増幅できます。ただ、それをするにはスキルや事前の工夫、労力が必要ですし、できる場面に限りがあります。 そういったことをやらず、もっとゆるい姿勢で取り組んでも、費用対効果をプラスにできる手法がTDDだと考えています。 今回は、そのTDDでゆるくしてもよいポイントを、実経験からまとめたいと思います。 TDDのテストは使い捨てでいい TDDのテストはプログラマのこまごまな課題に応じて累積的に作られるため、保守コストがかかるテスト・保守する価値の低いテストが生まれがちです。そのためテストの使い捨ての

      TDDはゆるく実践しても大丈夫 - 千里霧中
    • TDD Boot Camp 2020 Online #1 基調講演/ライブコーディング

      本編開始は 19:05 からです こちらのイベントのYoutubeLive配信のアーカイブです https://tddbc.connpass.com/event/183044/ チャプター 0:00:00 準備開始 0:19:05 講演開始 0:41:55 ライブコーディング開始 0:57:20 プログラミング開始 1:02:00 最初の RED ? 1:19:00 fake it 1:26:50 最初のリファクタリングおわり 1:36:40 質問タイム 1:51:20 5の倍数に着手 1:53:40 前半のデモのまとめ 1:55:20 質問タイム2回目 1:56:45 リリースから3年後の世界(テストをメンテナンスしやすくする) 2:14:20 テストの構造化とリファクタリングの説明

        TDD Boot Camp 2020 Online #1 基調講演/ライブコーディング
      • テスト駆動開発(TDD)のゴール「動作するきれいなコード」について考えてみる - やっとむでぽん

        「偉大な書籍は偉大な出だしで始まる。ケント・ベック著『テスト駆動開発』(2003, 2017)はこう始まります。 「動作するきれいなコード」。Ron Jeffriesのこの簡潔な言葉が、テスト駆動開発(TDD)のゴールだ。 」 テスト駆動開発エバンジェリストとして活躍している、和田卓人さん(t_wada)の講演より引用 セミナー講師やアジャイルコーチの立場で、私もTDDを教えることがよくあります。そんなときはこの言葉を意識しつつ、TDDはあくまでスキル、手法のひとつに過ぎず、本当に求めるべきは動作するきれいなコードなのだと、伝えるようにしています。そのことを説明する補助として、こんな図を作りました。 絵を描いてみて気づいたのですが、「動作する(Works)」には2つの側面があります。書いたコードが、書いたつもりの通りに動くこと(Verification)と、期待に応えて働き実際に役立つこと

          テスト駆動開発(TDD)のゴール「動作するきれいなコード」について考えてみる - やっとむでぽん
        • フロントエンド(React Testing Library)で TDD(テスト駆動開発)をする

          私はフロントエンドエンジニアとして働いてはいるのですが、巡り合わせが悪いのでしょうか?まともなテストを書いたことがないんですよね。まあ、それもでテストくらい書けないとなぁ。なんて思ってはちょいちょい調べたりする日々を過ごしていました。 そんなある日、たまたま TDD(テスト駆動開発) についての動画を視聴してみました。 TDD 自体は知ってはいて、なんとなく知っているくらいの知識ではありましたが、分かりやすい説明とその思想が好きで、のめり込むように見てしまいました。 その後も何度か視聴して、フロントエンドでも TDD したいなと考え始めました。 普段テストすら書いていないのにいきなり TDD とも思わないこともなかったですが、実際に普段自分がさわっているようなコードに落とし込んで書いていくと、テストする本当の意味というものが、より正確に理解できてきたような気がします。 そんなテスト初心者の

            フロントエンド(React Testing Library)で TDD(テスト駆動開発)をする
          • 書評:GitHub Copilot とのペアプロ TDD でつくるローグライク RPG - 若くない何かの悩み

            本記事は「GitHub Copilot とのペアプロ TDD でつくるローグライク RPG」の書評です。題名にローグライクRPGとあるのでゲーム開発の本なのかなと思ってしまいますが、本題は仕様の端的な表現をもたないシステムを LLM を使って真っ当に開発する方法の解説だと思います。タイトルにローグライクRPGと書いていることでゲーム開発に興味のない人の興味を失わせてしまい損をしている気がします。 背景 最近の LLM の流行を受けて私も Chat-GPT や GitHub Copilot といった LLM を開発で利用しています。端的に仕様を表現できるシステムは LLM に質問して実装を得る方が自分で実装するより圧倒的に速く正確であるという感想を抱いています。ただ端的に仕様を表現できるシステムばかりではありません。えてして価値を生んでいるシステムというのは端的な仕様の表現が存在しないもので

              書評:GitHub Copilot とのペアプロ TDD でつくるローグライク RPG - 若くない何かの悩み
            • 実践ATDD 〜TDDから更に歩みを進めたソフトウェア開発へ〜 / ATDD by genba example

              ソフトウェア開発において、不確実性にどのように立ち向かっていくかは大きな課題です。 PHPerとしては、開発中にいかにコード品質を上げるかといったことは大きな関心で、その一つの規律のとり方としてTDDを実践されてきた方は多いのではないでしょうか。 トークの表題であるATDDは、Acceptance Test Driven Developmentの略です。TDD Cycleよりももう一つ大きなスコープでのフィードバックループをテストによって駆動します。特にアジャイル開発の文脈で「Agile Testing」という一つのテーマ内で紹介されることが多い手法です。 ユニットテスト・コンポーネントテストをカバーするテストによって開発を駆動するTDDに対して、ATDDはよりビジネスフォーカスの強いテストによって開発を駆動します。ATDDの開発プロセスの実践によって、技術レイヤ横断的な製品全体の回帰テス

                実践ATDD 〜TDDから更に歩みを進めたソフトウェア開発へ〜 / ATDD by genba example
              • AI時代にこそTDDだと思う話

                GitHub Copilot、みなさん使ってますか?すでに多くの方が利用しており、「ないと困る」という方から「提案の質に問題がある」「まだまだ使えない」という方まで、様々な意見を聞きます。 筆者はGitHub Copilotに対して非常にポイティブな立場です。GitHub Copilotは使い方次第で開発速度を格段に向上させることを身をもって体験しており、これからの時代においてはGitHub CopilotなどのAIツールを使いこなせるかどうかで、個人の開発速度に非常に大きな差が出ると考えています。 重要なのは使い方次第と言う点です。前述のように様々な感想が溢れているのはAIツールの習熟度が大きく影響しているようにも感じます。AIツールは静的解析同様、利用者側の手腕が大きく問われるツールであると筆者は感じています。コマンドプロンプトエンジニアリングという言葉もあるように、AIツールを使いこ

                  AI時代にこそTDDだと思う話
                • 私がTDDを実践しない理由(翻訳)|TechRacho by BPS株式会社

                  概要 元サイトの許諾を得て翻訳・公開いたします。 英語記事: 37signals Dev — Pending tests 原文公開日: 2023/03/01 原著者: Jorge Manrubia -- 37signalsのエンジニアです 日本語タイトルは内容に即したものにしました。 私は「テストファースト」で作業することも、テストでコードの設計を支援することも、めったにありません。 最近の私は、37signalsである新しいことに取り組み始めました。何も決まっていない白紙の状態なので作業はすいすい進み、来る日も来る日もこってりしたプルリクを作成しています。会議に先立って早めに投げておきたいと思っていたプルリクには、もれなく以下が含まれていました。 ご覧のように、私はほとんどの場合テストを最後に書いていることが見て取れます。例外があるとすれば、テストを書くことで最短で結果をフィードバックで

                    私がTDDを実践しない理由(翻訳)|TechRacho by BPS株式会社
                  • TDD実践を経て変わったこと

                    Qiita × Uzabase Tech Meetup#1 技術講演②「TDD実践を経て変わったこと」 で発表した内容になります。 https://connpass.com/event/210103/

                      TDD実践を経て変わったこと
                    • テスト駆動開発(TDD)とは何か。コードで実践方法を解説します - パンダのプログラミングブログ

                      この記事は、弁護士ドットコム Advent Calendar 2019 - Qiitaの2日目の記事です。 TL;DR TDDの実践方法を実際にコードを書いて解説します TDDの「レッド・グリーン・リファクタリング」のリズムを学ぼう 何度もテストを実行して、プログラムに対する不安を取り除こう TDDはテスト技法ではなく設計手法 TDD Boot Camp Sendai 9thに参加しました。TDDの伝道師和田さん(@t_wada)を講師に迎え、有志たちで開かれた勉強会でした。 午前中は和田さんによるTDDに関する講演とライブコーディング。午後は参加者同士のペアプロで出題されたお題を実装していく活気あるイベントでした。 イベントを通じてTDDはテストファーストのことだと考えていた自分は目を見開かされました。TDDは単にテストファーストでプログラムを実装することではなく、実装(ソフトウェア)が

                        テスト駆動開発(TDD)とは何か。コードで実践方法を解説します - パンダのプログラミングブログ
                      • ふつうの開発と TDD ワークショップ - Pepabo Tech Portal

                        執行役員 VP of Engineering 兼技術部長の @hsbt です。9月に発売する LOST JUDGEMENT に備えて龍が如くシリーズの過去作品を一通りプレイし終えたので、次はモンハンストーリーズ2か何をプレイしようかなあと迷っている日々です。 GMO ペパボ(以下、ペパボ)では 2021 年の技術方針として「ふつうの開発をできるようになる」というスローガンを掲げています。 「ふつうの〜」という私が以前に所属していた永和システムマネジメントでよく使われていた形容詞です。すごいエンジニアがすごいテクノロジーを使ってすごいプロダクトを作って世界を変える、そういうやり方を夢見るのではなく、開発者一人一人が毎日の「ふつうの開発」のやり方のレベルを少しずつ高めていくことですごいプロダクトを作っていこう、という意味がこのスローガンにはこめられています。 ふつうの開発をできるようになる で

                          ふつうの開発と TDD ワークショップ - Pepabo Tech Portal
                        • TDD with git. Long live engineering.

                          Kaigi on Rails STAY HOME Edition (https://kaigionrails.org/) Video: https://www.youtube.com/watch?v=fyvUDLJvpp8&feature=youtu.be

                            TDD with git. Long live engineering.
                          • TDD研修 by t_wada さん を開催しました - Classi開発者ブログ

                            こんにちは。エンジニアの原です。 先日、「テスト駆動開発」の翻訳者として知られるt_wadaさんこと和田卓人さんをお招きして、テスト駆動開発ワークショップの第1回目をオンラインで開催しました。 今回はその様子をお届けします。 本日は Classi 株式会社様にお招きいただき、1日コースの TDD ワークショップをオンラインで行いました。参加される皆様のレベルが高めなので反転学習の要素を取り入れた研修を設計しましたが、予想以上に効果があったと手応えを感じています。ご参加くださいました皆様、ありがとうございました!— Takuto Wada (@t_wada) December 15, 2020 きっかけ Classiでは毎年外部講師をお招きして勉強会を行っています。 新卒研修を行う中で、「テストコードを実装する際の勘所」をどう伝えようかという話があり、第一人者のt_wadaさんをお呼びして研

                              TDD研修 by t_wada さん を開催しました - Classi開発者ブログ
                            • t_wadaさんによるTDD研修をワードクラウド・名言5選で振り返ってみた - Link and Motivation Developers' Blog

                              (※以下は去年の弊社のQiita アドベントカレンダーに投稿したものです。) リンクアンドモチベーションで、QAエンジニアをしています、代慶と申します。 先日のレガシーコード改善のワークショップに引き続き、和田卓人(t_wada)さんにTDD(テスト駆動開発)に関してワークショップを開催してもらいました。 本記事では、t_wadaさんの頻出していた言葉や名言と共に、当日の研修での学びの概要を伝えていきたいと思います! 当日の流れ 当日は、10人のエンジニアが10時から16時まで研修を受講しました。 前半は、座学メインで、適宜質問にも答えていただきました。 後半は、実習メインで、TDDの実践を行い、t_wadaさんとの公開1on1の時間を設けていただきました。 ※今回の講義は、前もってTDD Boot Campの動画の視聴も行い、よりTDDの理解を深めることができました。 TDDの概要 TD

                                t_wadaさんによるTDD研修をワードクラウド・名言5選で振り返ってみた - Link and Motivation Developers' Blog
                              • React でつくるフォーム UI の単体テストと TDD

                                はじめに 最近「単体テストの考え方/使い方」を読みました。 普段フロントエンドエンジニアとして実装をしている中で、自分が作っている単体テストについての言語化をサポートしてくれました。 この記事では、フォーム UI の実装を通して、コンポーネントに対する効果的な単体テストについて考察し、具体的なテストの書き進め方の一例を提示してみます。 最終的な成果物 この記事で実装するフォーム UI の最終的な成果物は codesandbox で確認できるようにしています。右のペインの「Tests」をクリックするとテストも実行できます。 注意 この記事は「単体テストの考え方/使い方」(以下、本書)の内容に触れていますが、読んでいなくても理解できるように補足をしているつもりです。それぞれのトピックで、文中に本書の該当ページの番号を「(p123)」のように表示しています(いずれも初版のものです)。 react

                                  React でつくるフォーム UI の単体テストと TDD
                                • TDD in a React frontend

                                  2021-01-19 React, tddTDD in a React frontendNowadays, only a few professional developers are left that seriously doubt the value of test-driven-development and test-driven-design (tdd). But the reality of many codebases I have seen is that tdd is often limited to the backend, where the "business logic" lives. Part of this is due to a stigma that frontend development is not "real software developme

                                    TDD in a React frontend
                                  • GitHub - Typescript-TDD/ts-auto-mock: Typescript transformer to unlock automatic mock creation for interfaces and classes

                                    A few years ago we've created this project with the idea in mind that typescript transformers would be easier to configure. Unfortunately the typescript team has no intention to improve the developer experience. You can see more information at this link. We believe that stop developing new features is the best decision to inform who is currently using it and who find it for the first time. We will

                                      GitHub - Typescript-TDD/ts-auto-mock: Typescript transformer to unlock automatic mock creation for interfaces and classes
                                    • t_wadaさんによるTDDワークショップを開催しました - Pepabo Tech Portal

                                      TDDワークショップの開催 こんにちは。EC事業部エンジニアの@symmondsです。 2021年の10月に入社しEC事業部のCREチームで活動しています。詳しい活動内容については以前に記事を書いたので、興味がある方はぜひ読んでみてください。 GMO ペパボ(以下、ペパボ)では2021年に引き続き、今年も日本のTest Driven Development(TDD) の第一人者である @t_wada さんをお招きしてワークショップを開催しました。 「なぜTDDワークショップを開催したのか?」については、去年のTDDワークショップの記事で詳しく説明していますので、こちらをご覧ください。 研修内容 ここからはホスティング事業部の@matsusukeがご説明します。 2022年の3月にペパボに中途入社しました。最近はFall Guysにはまっていますが未だに一位が取れず、夜しか眠れません。 今回

                                        t_wadaさんによるTDDワークショップを開催しました - Pepabo Tech Portal
                                      • t_wadaさんによるTDD研修をワードクラウド・名言5選で振り返ってみた - Qiita

                                        始めに リンクアンドモチベーションでQAエンジニアをしています、代慶と申します。 先日のレガシーコード改善のワークショップに引き続き、和田卓人(t_wada)さんにTDDに関してワークショップを開催してもらいました。 本記事では、t_wadaさんが研修の中で頻度高く発言していた言葉や名言と共に、当日の研修での学びの概要を伝えていきたいと思います! 当日の流れ 当日は、10人のエンジニアが10時から16時まで研修を受講しました。 前半は、座学メインで、適宜質問にも答えていただきました。 後半は、実習メインで、TDDの実践を行い、t_wadaさんとの公開1on1の時間を設けていただきました。 ※今回の講義は、前もってTDD Boot Campの動画の視聴も行い、よりTDDの理解を深めることができました。 TDDの概要 TDD(テスト駆動開発)とは・・・Red ⇒ Green ⇒ Refacto

                                          t_wadaさんによるTDD研修をワードクラウド・名言5選で振り返ってみた - Qiita
                                        • 最近のProduct Teamのペアプロ×TDDの文化をご紹介します - Uzabase for Engineers

                                          はじめに はじめまして。Product Teamの中嶋です。今月からチームシャッフル*1でSPEEDAのR&D機能の開発を担当しています。 Product TeamではフルタイムでのペアプロとTDDを常に実践しています。 この話を社外でお話すると「どんな風にやっていくのかが想像つかない」とよく言われます。 私も前職で一時的にペアプロを導入することはありましたが、それを常にやり続けるというProduct Teamのペアプロ文化が入社するまで全く想像できませんでした。 そこで本記事ではProduct Teamがどのようにペアプロをしているのかをお届けしようと思います。 はじめに ツールについて ストーリーとペアはサインアップで決める まずはテストから書く 1時間に一度は休憩とペアチェンジを行う ソースコードのPushとデプロイ ソースコードのPushタイミングについて わからなければすぐ別のペ

                                            最近のProduct Teamのペアプロ×TDDの文化をご紹介します - Uzabase for Engineers
                                          • TDDで過去と戦った話 - BASEプロダクトチームブログ

                                            TDDで過去と戦った話 この記事はBASE Advent Calendar 2020 20日目の記事です。 devblog.thebase.in こんにちは。BASE BANK 株式会社 Dev Division にて、 Software Developer をしている永野(@glassmonekey )です。 今回は先日リリースした「BASE」上での売上情報をCSVでダウンロードできる売上データダウンロードAppの裏話的な内容となります。 タイトルにTDDとつけたものの、そこまでTDDの話は出てきませんのでご了承ください。 BASE( ᐛ )⛺️ 新しい機能「売上データダウンロード App」が誕生しました〜!👶🎉 売上にまつわるデータをCSVにてダウンロードすることが可能💡 またサービス手数料や、決済手数料についても確認することができます👍 利益の分析にも使うことができるので、ぜ

                                              TDDで過去と戦った話 - BASEプロダクトチームブログ
                                            • TDDのTips - BASEプロダクトチームブログ

                                              前置き この記事はBASE Advent Calendar 2020 13日目の記事です。 devblog.thebase.in こんにちは、BASE株式会社 Product Dev Division でバックエンドエンジニアを務めている元木です。 以前、社内で同僚のエンジニアと話していたとき、 「TDDって頭では分かっているけど、テストから書くってなかなか難しいよね」 という話がありました。 そこで、自分がTDDでプログラムを書くときに行なっているTips的なものを紹介してみたいと思います。 あくまで 「自分はこういう感じで実践している」 というものであり、 「これが正しいTDDだ!」 と主張するものではありませんので、軽い気持ちで読んでいただけたら幸いです。 そもそも、TDDとは? テスト駆動開発 (Test Driven Development) のことです。いいね? 本題 前置きが

                                                TDDのTips - BASEプロダクトチームブログ
                                              • twadaさんによる2023年度版TDDワークショップを開催しました - Pepabo Tech Portal

                                                挨拶 こんにちは。2023年04月に入社した、minne事業部エンジニアの@kazuです。 この度、弊社GMO ペパボ(以下、ペパボ)では2022年に引き続き、今年も日本のTest-Driven Development(TDD) の第一人者である @t_wada さんをお招きしてTDDワークショップを開催しました。前回:『t_wadaさんによるTDDワークショップを開催しました』 なぜTDDワークショップを開催しているのかについては、こちらの記事『ふつうの開発と TDD ワークショップ』で詳しく説明していますのでご覧ください。 さて、それでは今回のTDDワークショップで何をしたのか、どんな気づきがあったのかなどについて、参加パートナーからそれぞれお話ししてまいります。 具体的な研修内容 概要 ワークショップは、事前に各参加パートナーが基調講演/ライブコーディングの動画を予習し、動画内でのラ

                                                  twadaさんによる2023年度版TDDワークショップを開催しました - Pepabo Tech Portal
                                                • TDDが必要なのはどんな時?新人の質問からテスト駆動開発の理解を深める - BIGLOBE Style | BIGLOBEの「はたらく人」と「トガッた技術」

                                                  開発部門(基盤本部)でエンジニアの育成を担当している高玉です。 BIGLOBEでは週に1日、集合型の新人エンジニア研修を開催しています。インターネットに公開された教育コンテンツを活用しながら、手を動かして学ぶ(Learn by doing)が特長です。 style.biglobe.co.jp 研修の後に必ずアンケートに回答してもらっているのですが、新人ならではの質問をもらえるのがいつも楽しみです。 さて、テスト駆動開発(Test Driven Development:TDD)について学んだ後にもらったのが、次の質問です。 Q 仕様がコロコロ変わるケースや、コードを触りながらわかっていくような非機能要件などには適用できなさそうだと思いました。どういったケースにTDDが用いられるのでしょうか。逆にどういったケースには向かないのでしょうか? 研修の様子をお伝えするために、この質問にどう回答したの

                                                    TDDが必要なのはどんな時?新人の質問からテスト駆動開発の理解を深める - BIGLOBE Style | BIGLOBEの「はたらく人」と「トガッた技術」
                                                  • テスト駆動開発(TDD)ハンズオンのすすめ - RAKUS Developers Blog | ラクス エンジニアブログ

                                                    こんにちは、あるいはこんばんは。すぱ..すぱらしいサーバサイドのエンジニアの(@taclose)です☆ 弊社では先日テスト駆動開発(以降、TDDと呼ぶ)ハンズオン勉強会を開催しました! 今回の記事の内容はズバリ2つ 誤解してる!?テスト駆動開発の良さ!学ぶ事の意味! TDDハンズオン勉強会を開催する意図や実施内容、感想! 読者のターゲットは TDDを誤解している人 TDDハンズオン勉強会を弊社でもやろう!とか思ってる人 を想定していますっ。 誤解されがちなTDD、記事にするには書ききれないTDD...なるべく小難しい内容は省いて興味を持ってもらうための記事を書いてみようと思います! テスト駆動開発(TDD)は良い物だ! テスト駆動開発(TDD)とは何か? TDDに対する誤解 TDDハンズオンについて TDDハンズオンの趣旨 TDDハンズオンの計画 事前準備 スケジュールと概要 TDDハンズ

                                                      テスト駆動開発(TDD)ハンズオンのすすめ - RAKUS Developers Blog | ラクス エンジニアブログ
                                                    • AIコードジェネレーターとTDDって親和性高くない、、、? - Qiita

                                                      目的 先日、GitHub Copilotに関するオンラインセミナーを受けていたところ 「GitHub Copilotは、エディタ上で開かれているソースの内容も考慮してソースを推論する」という特徴を聞きました。 ふと、 「テストコードさえ書いたらその要件を満たすコードを勝手に生成してくれるのでは、、、? なんて興味が湧いたので検証してみようと思います。 もし、期待通りになったらTDDが今後さらに熱を帯びるのではないでしょうか。 使用言語: python テストフレームワーク: pytest まずは簡単なコードで試す 関数名から推論されないように無機質な名前にしています。 class Functions: def function(a ,b): return a + b class TestClass: def test_function1(self): assert Functions.fu

                                                        AIコードジェネレーターとTDDって親和性高くない、、、? - Qiita
                                                      • TypeScript Compiler API で型を自動生成する仕組みを TDD で実装する

                                                        Compiler API で yaml から型を自動生成する この記事は TypeScript Compiler API を実際に使って TypeScript の型を自動生成する方法を紹介しています。 記事内では Google Analytics のイベントの型の自動生成にトライしています。 題材として GA を選んだのは、以前 Next.js に Google Analytics(GA) を導入する方法を紹介した記事でGA のイベントで使う型を yaml から自動生成するのはどうか と書いていたからです。 正直なところ、GA のイベントに馴染みのない方もいらっしゃると思うので、最初はもっと一般的な例にしようかなとも考えました。 しかし、一般的なことを例に挙げると「ふーん、便利だね」という感想で終わってしまい、業務で自分が使うようなイメージが湧かないかもしれないと考えました。 そこで、あえ

                                                          TypeScript Compiler API で型を自動生成する仕組みを TDD で実装する
                                                        • t-wadaさん直伝・TDDワークショップを開催して、社内にテスト文化が芽生え始めた! | PR TIMES 開発者ブログ

                                                          こんにちは、バックエンドエンジニアの江間です。 先日、テスト駆動開発(TDD)の日本での第一人者として知られる和田卓人(@t_wada)さんをお招きして、オンラインでテスト駆動開発ワークショップを開催しました。 抱えていた課題感 もともとPR TIMESには自動テストを書いていく文化がありませんでした。2022年初頭あたりから徐々に自動テストを追加するようになって来ましたが、テストを書く経験が浅いメンバーが多く、何となくテストコードを書いている状況でした。 メンバーとしては、テストを書こうとしても、何をテストすればいいのか?どうやって書いていけばいいのか?などが分かっておらず、テストを書くことへのスキル不足が課題となっていました。 また、 PHP のエキスパートとしてジョインしている uzulla さんが「テストの書けるコードがいいコード」と伝えてきましたが、テストの経験が浅いメンバーにと

                                                          • はじめの一歩からわかる「TDD Boot Camp」の開き方 #tddbc | DevelopersIO

                                                            皆さんはTDDBCというイベントをご存知でしょうか?非常に人気のあるイベントですが、その反面都市部での開催だとあっという間に枠が埋まってしまい、参加したくてもできないということも多いのではないでしょうか。そんなあなたにオススメなのが「自分でTDDBCを開いてしまう」ことです。本エントリでは、新潟県長岡市で2回のTDDBCを開催した筆者の経験を元に、TDDBCを開くにはどうすれば良いのか紹介します。 皆さんはTDD Boot Camp(TDDBC)というイベントをご存知でしょうか? TDDBCはTDD(テスト駆動開発)について一から学べるイベントです。実際にどのようなイベントなのかは公式サイトから引用します。 TDD Boot Camp(TDDBC) とは、テスト駆動開発(Test Driven Development)について、座学だけでなく、実習形式で手を動かして体得することを目的とする

                                                              はじめの一歩からわかる「TDD Boot Camp」の開き方 #tddbc | DevelopersIO
                                                            • HaskellでのTDDを楽しくするライブラリ methodを作りました。

                                                              はじめに Haskellでテスト駆動開発を行う際、純粋な関数は単体テストを書きやすいですが、 返り値がモナドの関数(この記事ではそのような関数をメソッドと呼びます)にたいして単体テストを書くのは簡単ではありません。 今回、メソッドに対して単体テストを書きやすくなるライブラリ methodを作成しました。 methodとは methodでは a1 -> ... -> an -> m b型の関数のことをメソッドと呼びます。 ここでmはモナドです。(->) rモナドを除く大抵のモナドはサポートしていますが、独自のモナドをメソッドにするにはMethod型クラスを実装する必要があります。 モックの作成 methodでは任意のメソッドのモックをDSLで書くことができます。 import Test.Method import RIO (throwString) f,f' :: Int -> String

                                                                HaskellでのTDDを楽しくするライブラリ methodを作りました。
                                                              • UnityでTDDハンズオンRepositoryを作っている - imog

                                                                最近更新したのでちょっと宣伝。 github.com なにこれ 最近、副業だったりプライベートなどでUnityを使う人でテストに興味ある方を対象にTDDについてお話する活動などをしています。その際に座学としてお話することもあれば、ハンズオン形式で実際に手を動かして書いてもらうということもあります。その際に使うサンプルリポジトリです。 ぜひお手元で考えながら書いてみてください。勉強会の資料などで使っていただいても大丈夫です。 なぜやってるのか ゲーム開発はソフトウェア開発の中でもかなり複雑性が高いと感じています。そして性質上変更頻度も高い。ゲームごとに作り方が変わる以上これは仕方ないことだと考えています。だからこそより変化に対応できるようにテスタビリティの高いコードになっていてほしいと考えていますがその難易度、そしてそもそものテストコード文化というものがないためにテストコードが書かれているこ

                                                                  UnityでTDDハンズオンRepositoryを作っている - imog
                                                                • 和田卓人(t_wada)さんによる『TDDワークショップ』をマネーフォワードと共同で開催しました! - SMARTCAMP Engineer Blog

                                                                  スマートキャンプで Biscuet を作っているエンジニアの中川です。 本記事は2月5日に弊社で開催したTDDワークショップについて紹介します! TDD: テスト駆動開発のこと。テスト駆動開発とは、テストファーストとして初めにテストコードを書き、その後テストをパスするコードを実装し、さらにその後コードをリファクタリングして良くする、というサイクルを回していく開発手法のこと。 今回のワークショップはマネーフォワードと共同開催し、合計20名のエンジニアが参加しました! また、講師としてテスト駆動開発の第一人者である和田卓人(@t_wada)さんにお越しいただきました。 本日はスマートキャンプ株式会社様および株式会社マネーフォワード様にお招きいただき、1日コースのTDDワークショップを開催させていただきました。午後の演習とコードレビューでは鋭い質問がたくさん飛び出し、議論が盛り上がりました。ご参

                                                                    和田卓人(t_wada)さんによる『TDDワークショップ』をマネーフォワードと共同で開催しました! - SMARTCAMP Engineer Blog
                                                                  • TDDへの違和感をつかめた気がする

                                                                    wtnabe, yet another yak shaver @wtnabe @kyon_mm 結局のところ、1) サイクルがあること、2) サイクルが重くなりにくいこと、が満たせるかどうかなんじゃないですかね。TDDは最も小さくて速いサイクルを実現するのに向いてる。 2020-02-25 09:54:34

                                                                      TDDへの違和感をつかめた気がする
                                                                    • TDDでVue.jsによるAzure公開解説書 - mojiru【もじをもじる】

                                                                      Vue CLIがわかる!使える!TDDでつくるアプリ開発入門Vue CLIがわかる!使える!TDDでつくるアプリ開発入門 「Vue CLIがわかる!使える!TDDでつくるアプリ開発入門」発行主旨・内容紹介 「Vue CLIがわかる!使える!TDDでつくるアプリ開発入門」目次 「Vue CLIがわかる!使える!TDDでつくるアプリ開発入門」Amazonでの購入はこちら 「Vue CLIがわかる!使える!TDDでつくるアプリ開発入門」楽天市場での購入はこちら Vue CLIがわかる!使える!TDDでつくるアプリ開発入門Vue CLIがわかる!使える!TDDでつくるアプリ開発入門 インプレスグループで電子出版事業を手がけるインプレスR&Dは、技術書典や技術書同人誌博覧会をはじめとした各種即売会や、勉強会・LT会などで頒布された技術同人誌を底本とした商業書籍を刊行し、技術同人誌の普及と発展に貢献す

                                                                        TDDでVue.jsによるAzure公開解説書 - mojiru【もじをもじる】
                                                                      • 2023年 新卒研修② エンジニア・デザイナーが合同でモノづくりを学ぶ テスト駆動開発(TDD)編

                                                                        Visionalグループ 株式会社ビズリーチでは、2023年4月に入社した新卒プロダクト職(エンジニア/デザイナー)を対象とした新卒研修を約3ヶ月の間実施しました。最初の約1ヶ月間はビジネス職と合同で顧客志向を中心に学び、その後はプロダクト職としてモノづくりのプロセスや品質の基礎を学びました。 研修を通して得た学びや変化について、受講した社員が3回にわたりご紹介します。 本記事では、テスト駆動開発(TDD)の日本での第一人者として知られる和田卓人(@t_wada)さんを講師としてお招きし、品質の大切さを学んだ「TDDワークショップ」について、プロダクト職(エンジニア)の渋谷がお伝えします。 TDDワークショップの概要 ワークショップの構成 TDDとはプログラム実装前にテストコードを書き、そのテストに適合するようにコードを実装する開発手法です。今回のTDDワークショップでは、@t_wadaさ

                                                                          2023年 新卒研修② エンジニア・デザイナーが合同でモノづくりを学ぶ テスト駆動開発(TDD)編
                                                                        • TDDワイワイ会でテスト駆動開発に再挑戦しました - りんごとバナナとエンジニア

                                                                          tddyyx.connpass.com 最近会社のチームでTDDをやり始めたばかりなのですが、チームの先輩に誘われてTDDをやってみるイベントに参加してみました。TDD本は読んだことがあるのですが、あまり腹落ちしきっておらず、もう一度読まないといけないかなと思っていたタイミングだったので、実践で理解を深める良い機会でした。 進め方 4人1チームに分かれて、cyber-dojoのお題をやっていくというオーソドックスなスタイルなのですが、一番良かったのはワイワイ会の運営スタッフの方にファシリテーションを行っていただけたことです。TDDの進め方のスライドがあらかじめ準備されており、導入部分が型として磨かれていたので、スムーズにTDDに入ることができました。 今回のTDDはモブプロ形式を取り入れ、REDの状態からDriverが作業を開始し、最低限の実装でGREENにする->コードをリファクタリング

                                                                            TDDワイワイ会でテスト駆動開発に再挑戦しました - りんごとバナナとエンジニア
                                                                          • t_wadaさんに社内向けTDD研修を開いてもらったよ - for Startups Tech blog

                                                                            どうも、ばやし(@bayashimura)です。 先日、和田卓人(@t_wada)さんにフォースタートアップスのエンジニア向けにTDD(テスト駆動開発)研修をやってもらったので、紹介していきます。 きっかけ フォースタートアップスでは私が入社する前から自動テストに一定の投資をしていました。 大体の機能に関してはテストが存在し、テストを書かずにプルリクを投げると「書いてください」と返ってくる文化でもあります。 しかしプロダクトのコードが増えるに従い、テストコードも増加し、以下のような問題が発生しておりました。 テストの可読性が低く、テスト内容に対する認知負荷が高い テストのメンテナンスコストが高くてしんどい(すぐ壊れる) e2eテストを導入したがflakyで、導入したことをちょっと後悔してる こういった課題にもやもやしたものを抱えつつそのうちどうにかしないとな、と日々を過ごしていた中、CTO

                                                                              t_wadaさんに社内向けTDD研修を開いてもらったよ - for Startups Tech blog
                                                                            • TDDでNext.jsアプリに機能追加してみた - Pepabo Tech Portal

                                                                              はじめに こんにちは、minne事業部Webエンジニアの@inowayです。7/6に公開したtwadaさんによる2023年度版TDDワークショップを開催しましたの記事に執筆者の一人として参加していました。単独での記事公開は今回が初めてです。 @t_wada さんのワークショップを通して、自動テストの重要性を改めて実感しました。参加後に、おすすめされていた『テスト駆動開発』や『単体テストの考え方/使い方』を読み、今では完全に自動テストの魅力にはまっています。 参加直後は「実務でTDDを実践するぞ!」と息巻いていましたが、タイムリミットのある状況下で慣れない開発手法を実践するのは心理的ハードルが高く、Red->Green->Refactoringのステップを踏みながら開発することができていませんでした。そこで、本記事では「TDDに慣れる」をテーマに、TDDで機能追加することに挑戦します。アジャ

                                                                                TDDでNext.jsアプリに機能追加してみた - Pepabo Tech Portal
                                                                              • TDDを実践する中で身につけてた「設計に関するスキル」を3つ - Mitsuyuki.Shiiba

                                                                                TDDを実践する中で身につけた「設計に関するスキル」があるなぁと思ったのでメモを残しておくことにする。TDDをやるときのスキルではなく設計をするときのスキル。 染み込んでいる TDDは以前に書いたように(ってもう7年も前か・・・)あんまり使わなくなっている。でも心の中にある。ウェブアプリケーションエンジニアとしての自分にとても大きな影響を与えている。 bufferings.hatenablog.com TDDから学んだ設計に関するスキル 3つ思い浮かんだ まずは動くものを作る 必要な分だけ作る 「ありえない」の処理を考える 注意 ウェブアプリケーションを書くときのことを考えながら書いている。ライブラリやフレームワークのようないろんなユーザーから利用されるものは、今回の話の対象ではない。 1. まずは動くものを作る TDDで実装を書くときは「キレイじゃなくてもいいからテストがグリーンになる(

                                                                                  TDDを実践する中で身につけてた「設計に関するスキル」を3つ - Mitsuyuki.Shiiba
                                                                                • 【翻訳記事】TDD: 目的と実践 - ブロッコリーのブログ

                                                                                  目次 目次 はじめに TDD: 目的と実践 TDDとは何ですか? TDDの意図 TDDはTestingですか? TDDはユニットテストを書くことですか? TDDだけで良いのでしょうか? TDDは良い設計を強要しません 悪いテストはリファクタリングを妨げます なぜ悪評が多いのですか? はじめに 今回は著者本人の許可をもらった上で、TDD: 目的と実践(原題は「TDD: Purposes and Practices」)を翻訳したので紹介します。 www.industriallogic.com この記事はIndustrial Logic社のTim Ottingerが書いた記事です。Tim OttingerはClean Codeの執筆にも関わっています。 Clean Code アジャイルソフトウェア達人の技 (アスキードワンゴ) 作者:Robert C.Martin,花井 志生発売日: 2017/

                                                                                    【翻訳記事】TDD: 目的と実践 - ブロッコリーのブログ