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
高見知英
January 24, 2009
Programming
40
0
Share
アマチュアでも出来るTDD
2009-01-24 わんくま同盟東京勉強会 No. 28で発表した資料です。
高見知英
January 24, 2009
More Decks by 高見知英
See All by 高見知英
ポッドキャストをはじめよう ポッドキャストのやりかたと続けるコツ
takamichie
0
120
高見知英とAndroid
takamichie
0
99
大人になってからのゲームデビューのハナシ
takamichie
0
91
最近のゲーム実況のハナシ
takamichie
0
110
健常者から見たAndroidのアクセシビリティ機能
takamichie
0
530
山手縁乃庭のいまとこれから考えていること
takamichie
0
170
子どもとゲームとそのほかいろいろのハナシ
takamichie
0
160
高見知英のヒストリー
takamichie
0
130
SRPGがやりたい!
takamichie
0
260
Other Decks in Programming
See All in Programming
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
240
Terraform言語の静的解析 / static analysis of Terraform language
wata727
1
120
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
940
GoogleCloudとterraform完全に理解した
terisuke
1
180
Symfony AI in Action - SymfonyLive Berlin 2026
chr_hertel
1
110
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
2
370
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
5
990
個人的に嬉しかったpnpmの新機能・3選
matsuo_atsushi
0
120
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
710
Swift Concurrency Type System
inamiy
1
570
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
560
Making the RBS Parser Faster
soutaro
0
640
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Odyssey Design
rkendrick25
PRO
2
590
How to Talk to Developers About Accessibility
jct
2
190
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
100
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.7k
Heart Work Chapter 1 - Part 1
lfama
PRO
6
35k
Navigating Weather and Climate Data
rabernat
0
180
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
200
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
220
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
270
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.4k
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 おわり ご静聴ありがとうございました