Your SlideShare is downloading. ×
TDD #NagoyaTesting
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

TDD #NagoyaTesting

2,513
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,513
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. うさぎ組 inNagoya.Testing 2012.02.26
    • 2. Self Introduction名前:きょん(kyon_mm)Blog : うさぎ組Target : 開発環境改善Groovy、テスト、自動化、アジャイル、品質保証24歳うさみみ系男子SCMBootCamp、Nagoya.Testing主宰
    • 3. 今日のテーマ
    • 4. TDD概論
    • 5. 以降は個人の解釈に基づく ものであり公式見(ry
    • 6. TDD概論TDDとは?TDDはテストなのか?TDDの種類は?TDDの特性は?TDDのスキルまとめ
    • 7. TDD概論TDDとは?TDDはテストなのか?TDDの種類は?TDDの特性は?TDDのスキルまとめ
    • 8. TDDはドッグフーディング により不安を解消する
    • 9. TDDのライフサイクル
    • 10. TDDのライフサイクル 画像引用元 http://d.hatena.ne.jp/shuji_w6e/20110429/1304079615
    • 11. TDDのライフサイクル TODOリスト 画像引用元 http://d.hatena.ne.jp/shuji_w6e/20110429/1304079615
    • 12. TDDのライフサイクル TODOリスト RED -> GREEN -> REFACTORING -> 画像引用元 http://d.hatena.ne.jp/shuji_w6e/20110429/1304079615
    • 13. TDDのライフサイクル テストリスト RED -> GREEN -> REFACTORING -> 個人的に重要なのは テストリスト REFACTORING 画像引用元 http://d.hatena.ne.jp/shuji_w6e/20110429/1304079615
    • 14. TDD概論TDDとは?TDDはテストなのか?TDDの種類は?TDDの特性は?TDDのスキルまとめ
    • 15. TDDはテストをしているわけじゃない
    • 16. プロダクトに自信をもつための行為がTDDであり、現状では単体テスト以降の 自動テストにも流用できている。
    • 17. 現状の結果として単体テストの代替物と勘違いさ れることがある
    • 18. Developer TestCustomer Test QA Test
    • 19. TDD Developer Test結合テストなど Customer Test 非機能 QA Test
    • 20. TDD Developer Test これはテストじゃない結合テストなど Customer Test 非機能 QA Test
    • 21. でも、
    • 22. 品質保証の自動テストに流用できるように する方向でいくなら、TDDはTest Architecture として捉えられるので テストになると思う。
    • 23. TDD概論TDDとは?TDDはテストなのか?TDDの種類は?TDDの特性は?TDDのスキルまとめ
    • 24. TDDの種類TDDBDDSTDDSATDDUATDDVOTDD
    • 25. TDDの種類TDD TDDとBDDは表現方法の違いBDDSTDDSATDD STDD, SATDD, UATDD, VOTDDはTDDのUATDD 何かを明確にしたり、付加したものVOTDD
    • 26. TDD(=テスト)開発者の不安を対象にテストコードを書くいわゆる原義のTDDこの頃はxUnit系と言われているテストフレームワークが主流だった
    • 27. BDD(=振る舞い)基本的にはTDDと一緒(表現方法が異なるのみ)決定的に違うのは自然言語指向で書くということ目的は顧客やPOに書いてもらえるテストコードこれを実現するためにSpec系のテストフレームワークが発生Webアプリ化したのがFitNesse
    • 28. STDD(=ストーリーテスト)ユースケースやユーザーシナリオをテストコードにするSpec系フレームワークで書かれる事が多いBDDではSTDDとTDDがあると言われる事が多いが、BDDは表現方法が異なるだけなので、TDDが他のTDDになりえるようにBDDも他のTDDになりえる。
    • 29. SATDD(=ストーリー受け入れテスト)スクラムなどをはじめとするアジャイルでのストーリーに対する受け入れテストをテストコードにする個人的にはストーリーって言うよりフィーチャーの方が似合っていると思うというか、随分とプロセス依存な名前だなぁと思ったり。
    • 30. UATDD(=ユーザー受け入れテスト)ユーザーの受け入れ基準をテストコードにするATDDの初出はUATDDの意味合いで出てきたけど、STDDが派生して、アジャイルの文脈でSATDDが出現してきたように見える。
    • 31. VOTDD(=検証指向テスト)TDDに検証指向のテストを組み込んだプロセス目標はTDDに検証を持ち込む点なので、従来のソフトウェアテストのあらゆるフェーズや技法が投入可能だと思われる例)AllPair法、原因結果グラフ、HAYST法、ゆもつよメソッド
    • 32. TDD概論TDDとは?TDDはテストなのか?TDDの種類は?TDDの特性は?TDDのスキルまとめ
    • 33. TDDの特性テストコードを書くタイミングリファクタリングをするタイミング網羅基準対象範囲モックやスタブの範囲
    • 34. テストコードを書くタイミングTestFirstプロダクトコード変更前に必ず失敗するテストコードを書く変更箇所対象切り替え毎次の変更箇所に移るまでには現在実装している箇所のテストコードを書く対象機能実装完了時現在取り組んでいる機能が実装できてからテストコードを書く
    • 35. リファクタリングをするタイミングGreenになったらテストコードが通るたびにリファクタリングの機会を伺う変更箇所対象切り替え毎次の変更箇所に移るまでには現在実装している箇所のリファクタリングをする対象機能実装完了時現在取り組んでいる機能が実装できてからリファクタリングをする
    • 36. 網羅基準三角測量、境界値分析、原因結果グラフ、状態遷移など、どの程度まで厳密にテストコードに表現するか
    • 37. 対象範囲テストコードを書く対象をどこまで広げるか モデル、GUI、DB、通信処理など
    • 38. モックやスタブの範囲どこまでをプロダクトコード以外のモックやスタブとするか パッケージレベルでの境界、ネットワークレベルでの境界など
    • 39. TDD概論TDDとは?TDDはテストなのか?TDDの種類は?TDDの特性は?TDDのスキルまとめ
    • 40. TDDのスキル成長=TDDしなくなること
    • 41. TDD概論TDDとは?TDDはテストなのか?TDDの種類は?TDDの特性は?TDDのスキルまとめ
    • 42. TDD概論まとめTDDはテストではないいろんな種類があるけど、自分で認識してカテゴライズできればそれでいい原則や行為のレベルを自分で最適化することが大切最後にはTDDしなくてもいいようになろう
    • 43. ご清聴ありがとうぴょん◆