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
38
アマチュアでも出来るTDD
2009-01-24 わんくま同盟東京勉強会 No. 28で発表した資料です。
高見知英
PRO
January 24, 2009
Tweet
Share
More Decks by 高見知英
See All by 高見知英
ポッドキャストをはじめよう ポッドキャストのやりかたと続けるコツ
takamichie
PRO
0
80
高見知英とAndroid
takamichie
PRO
0
66
大人になってからのゲームデビューのハナシ
takamichie
PRO
0
66
最近のゲーム実況のハナシ
takamichie
PRO
0
80
健常者から見たAndroidのアクセシビリティ機能
takamichie
PRO
0
500
山手縁乃庭のいまとこれから考えていること
takamichie
PRO
0
140
子どもとゲームとそのほかいろいろのハナシ
takamichie
PRO
0
130
高見知英のヒストリー
takamichie
PRO
0
100
SRPGがやりたい!
takamichie
PRO
0
240
Other Decks in Programming
See All in Programming
Developing static sites with Ruby
okuramasafumi
0
340
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
210
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
250
ローカルLLMを⽤いてコード補完を⾏う VSCode拡張機能を作ってみた
nearme_tech
PRO
0
210
2年のAppleウォレットパス開発の振り返り
muno92
PRO
0
130
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
510
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
210
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
120
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
170
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
230
クラウドに依存しないS3を使った開発術
simesaba80
0
190
愛される翻訳の秘訣
kishikawakatsumi
3
360
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
97
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
69
WCS-LA-2024
lcolladotor
0
390
A Tale of Four Properties
chriscoyier
162
23k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
What the history of the web can teach us about the future of AI
inesmontani
PRO
0
380
Leo the Paperboy
mayatellez
0
1.3k
The Curse of the Amulet
leimatthew05
0
6.3k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
150
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.7k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
61
47k
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 おわり ご静聴ありがとうございました