Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to ATDD (ATDD入門)

Avatar for Cyan Cyan
August 30, 2018

Introduction to ATDD (ATDD入門)

Avatar for Cyan

Cyan

August 30, 2018
Tweet

More Decks by Cyan

Other Decks in Programming

Transcript

  1. ATDDとBDD - ATDDとBDD (Behavior-driven development) の関係性について諸説あり - 「BDDはATDDの改良版だ」 https://blog.jbrains.ca/permalink/the-worlds-shortest-article-on-behavior-driven-develop ment-revisited

    - 「BDDとATDDのフォーカスが違う」 http://bufferings.hatenablog.com/entry/2014/09/11/083430 - 「BDD = ATDD + TDD」 http://toolsqa.com/blogs/test-approach-and-comparisons-between-atdd-tdd-and-bdd/ - ATDDとBDDの違いについて深掘りしなくてもいい - 何を目指して作るかさえ明確化すればいいでしょう
  2. Specification by Example ちなみに、Specification by Example (SbE) という言葉も存在する。 ATDDの類義語だと考えば結構でしょう。 https://less.works/less/technical-excellence/specification-by-example.html

    他に、Example-Driven Development (EDD)やStorytest-Driven Development (SDD)があったりするが、気にせず同一視すれば OK http://xunitpatterns.com/example-driven%20development.html https://www.industriallogic.com/blog/storytest-driven-development-article/
  3. 共通認識 - 「Given(前提)」→「前提 / 状態 / 状況」 - 「When(もし)」→「アクション :

    もし〜ならば / したら」 - 「Then(ならば)」→「結果 : 〜になる / が起きる」 - Given(前提) 私の銀行口座に預金があり、 かつ最近引き出していない (my bank account is in credit, and I made no withdrawals recently,) - When(もし) 私は限度より低い金額を引き出す (I attempt to withdraw an amount less than my card's limit,) - Then(ならば) 引き出しはエラーと警告なく完了できる (the withdrawal should complete without errors or warnings) https://www.agilealliance.org/glossary/gwt