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
11
高見知英のヒストリー
takamichie
PRO
0
29
SRPGがやりたい!
takamichie
PRO
0
65
ゲームについて 地域活動やってる人と話してみた話し
takamichie
PRO
0
330
AIを使う~プログラミングがAIでできるって本当ですか?~
takamichie
PRO
0
190
2023年新年の抱負
takamichie
PRO
0
120
今年なにやった?2022
takamichie
PRO
0
220
あなたは地域が好きですか?
takamichie
PRO
0
200
VoicePeakを使ってみた話
takamichie
PRO
0
250
Other Decks in Programming
See All in Programming
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
220
⼤規模⾔語モデルの拡張(RAG)が 終わったかも知れない件について
nearme_tech
22
15k
SwiftUI Performance 不要なViewの再描画と更新を抑える
bigamitiongit
1
160
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
320
元気予報
suu_mire0726
0
860
コードレビューで学ぶ!Kotlinオブジェクト指向デザインパターン
akkie76
2
180
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
280
[技育CAMPアカデミア]アイディアを形に!【超入門】スマホアプリ開発〜リリースまでの流れをご紹介
teamlab
PRO
0
350
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.7k
ゆるい個人開発のススメ
kuroppe1819
10
950
Elm 0.19.0 Changes
bkuhlmann
0
490
R言語の環境構築と基礎 Tokyo.R 112
bob3bob3
0
150
Featured
See All Featured
For a Future-Friendly Web
brad_frost
171
8.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
How to train your dragon (web standard)
notwaldorf
72
5.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
29
6k
Writing Fast Ruby
sferik
620
60k
BBQ
matthewcrist
80
8.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
12
1.5k
Thoughts on Productivity
jonyablonski
57
3.8k
Embracing the Ebb and Flow
colly
79
4.1k
Happy Clients
brianwarren
91
6.4k
Adopting Sorbet at Scale
ufuk
67
8.6k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
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 おわり ご静聴ありがとうございました