Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
アマチュアでも出来るTDD
Search
高見知英
PRO
January 24, 2009
Programming
0
37
アマチュアでも出来るTDD
2009-01-24 わんくま同盟東京勉強会 No. 28で発表した資料です。
高見知英
PRO
January 24, 2009
Tweet
Share
More Decks by 高見知英
See All by 高見知英
ポッドキャストをはじめよう ポッドキャストのやりかたと続けるコツ
takamichie
PRO
0
57
高見知英とAndroid
takamichie
PRO
0
40
大人になってからのゲームデビューのハナシ
takamichie
PRO
0
54
最近のゲーム実況のハナシ
takamichie
PRO
0
64
健常者から見たAndroidのアクセシビリティ機能
takamichie
PRO
0
480
山手縁乃庭のいまとこれから考えていること
takamichie
PRO
0
120
子どもとゲームとそのほかいろいろのハナシ
takamichie
PRO
0
110
高見知英のヒストリー
takamichie
PRO
0
85
SRPGがやりたい!
takamichie
PRO
0
230
Other Decks in Programming
See All in Programming
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
190
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
「待たせ上手」なスケルトンスクリーン、 そのUXの裏側
teamlab
PRO
0
570
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
アセットのコンパイルについて
ojun9
0
130
2025 年のコーディングエージェントの現在地とエンジニアの仕事の変化について
azukiazusa1
24
12k
API Platform 4.2: Redefining API Development
soyuka
0
110
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
610
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
250
楽して成果を出すためのセルフリソース管理
clipnote
0
190
為你自己學 Python - 冷知識篇
eddie
1
350
Ruby Parser progress report 2025
yui_knk
1
460
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.2k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
The Language of Interfaces
destraynor
161
25k
A better future with KSS
kneath
239
17k
Side Projects
sachag
455
43k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Typedesign – Prime Four
hannesfritz
42
2.8k
Transcript
わんくま同盟 東京勉強会 #28 アマチュアでも出来るTDD 2009年1月24日(土) 磯子クリエイティブチーム 高見知英
わんくま同盟 東京勉強会 #28 自己紹介 • 高見知英(id:TakamiChie) • アマチュアプログラマ – 代表作:TMemo
• 磯子クリエイティブチーム リーダー
わんくま同盟 東京勉強会 #28 TDD 今回何が言いたいか・・・
わんくま同盟 東京勉強会 #28 TDDとは • Time Division Duplex(時分割通信)ではない • Test
Driven Development(テスト駆動開発)
わんくま同盟 東京勉強会 #28 TDDとは
わんくま同盟 東京勉強会 #28 TDDとは • Time Division Duplex(時分割通信)ではない • Test
Driven Development(テスト駆動開発) – テストをしながら、開発を進めていく手法 – 流れ • 処理コード書いて • 処理をテストするコード(テストケース)を書いて • テストを完了させる • 実際のTDDは若干違うらしいので、注意
わんくま同盟 東京勉強会 #28 なぜTDDか • 初期段階でバグを見つけられる – 後半になればなるほど、バグの影響は大きい • 毎回テストを自動実行する
– ツールを使用する – メソッドの変更によるバグ埋め込みを発見できる • アマチュアなら実地テスト(システムテスト)だけ で十分? – 希少性の高いバグ • TDDを使えば、多少は早く見つかる のかな?
わんくま同盟 東京勉強会 #28 試験自動化ツール xUnit • CUnit, NUnitなどの総称 • テストを実行して、結果を◦×で返すツール
– あるメソッドにこの引数を渡したらどうなる? • 予想どおりの戻り値が返るか • 予想どおりの例外が発生するか – メソッドに対していくつかのテストコードを実施する ことで、メソッドテストを行う
わんくま同盟 東京勉強会 #28 テストケースの作り方? • 全てのコードを実行す る・・・のが理想 – 網羅率=カバレッジ率 –
カバレッジ基準 • 命令網羅 – ソースコード中の全命 令を一回以上実行 • 分岐網羅 – ソースコード中の全分 岐のtrue/falseの結果 を一回以上通るように する • 分岐網羅>命令網羅 処理初め 処理 判断 処理 処理 処理終り
わんくま同盟 東京勉強会 #28 まとめ • xUnitとは、テストケースを実行し、結果を◦か ×で返すツール • テストできない内容も・・・ –
GUIやユーザー操作が絡むもの – インターネット上のデータ等の取得が絡むもの • GUI自動化ツール(UWSCなど) • NMock – 手間をかけず、自動化できるテスト手段を
わんくま同盟 東京勉強会 #28 おわり ご静聴ありがとうございました