Submit Search
Upload
テスト駆動開発へようこそ
•
42 likes
•
16,162 views
Shuji Watanabe
Follow
TDD BootCamp 旭川(2014.02.01)の講演資料
Read less
Read more
Technology
Report
Share
Report
Share
1 of 57
Download now
Download to read offline
Recommended
テスト設計・テストケース作成 グループ
テスト設計・テストケース作成 グループ
Tomoaki Fukura
[DO03] 50 分でわかるテスト駆動開発
[DO03] 50 分でわかるテスト駆動開発
de:code 2017
Rails解説セミナー: Rails国際化 (I18n) API
Rails解説セミナー: Rails国際化 (I18n) API
Yohei Yasukawa
SpringBootTest入門
SpringBootTest入門
Yahoo!デベロッパーネットワーク
TDD のこころ
TDD のこころ
Takuto Wada
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
Yasuharu Nishi
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
Recommended
テスト設計・テストケース作成 グループ
テスト設計・テストケース作成 グループ
Tomoaki Fukura
[DO03] 50 分でわかるテスト駆動開発
[DO03] 50 分でわかるテスト駆動開発
de:code 2017
Rails解説セミナー: Rails国際化 (I18n) API
Rails解説セミナー: Rails国際化 (I18n) API
Yohei Yasukawa
SpringBootTest入門
SpringBootTest入門
Yahoo!デベロッパーネットワーク
TDD のこころ
TDD のこころ
Takuto Wada
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
Yasuharu Nishi
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
診断ツールの使い方(Owasp zapの場合)
診断ツールの使い方(Owasp zapの場合)
shingo inafuku
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
私にとってのテスト
私にとってのテスト
Takuto Wada
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
Recruit Lifestyle Co., Ltd.
60分でわかった気になるISO29119 #wacate
60分でわかった気になるISO29119 #wacate
Kinji Akemine
ソフトウェアテスト入門
ソフトウェアテスト入門
Preferred Networks
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達
Yusuke Wada
DeNAの大規模ライブ配信基盤を支える技術
DeNAの大規模ライブ配信基盤を支える技術
DeNA
The only one big thing every programmer should know
The only one big thing every programmer should know
Takuto Wada
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
ソフトウェアテストの最新動向の学び方
ソフトウェアテストの最新動向の学び方
Keizo Tatsumi
あじゃいる時代の品質保証 ~DevSQAの提案~
あじゃいる時代の品質保証 ~DevSQAの提案~
Hiroaki Matsunaga
アドテクを支える技術 〜1日40億リクエストを捌くには〜
アドテクを支える技術 〜1日40億リクエストを捌くには〜
MicroAd, Inc.(Engineer)
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
ssuser868e2d
組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
俺のインセプションデッキ【Remaster版】
俺のインセプションデッキ【Remaster版】
Takao Oyobe
jooqってなんて読むの? から始めるO/RマッパーとSpringBootの世界
jooqってなんて読むの? から始めるO/RマッパーとSpringBootの世界
Y Watanabe
Laravelでfacadeを使わない開発
Laravelでfacadeを使わない開発
Kenjiro Kubota
Spring 歴約1年初心者の Test 奮闘記
Spring 歴約1年初心者の Test 奮闘記
chishizu naito
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ー
Shuji Watanabe
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event Processing
Yoshifumi Kawai
More Related Content
What's hot
診断ツールの使い方(Owasp zapの場合)
診断ツールの使い方(Owasp zapの場合)
shingo inafuku
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
私にとってのテスト
私にとってのテスト
Takuto Wada
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
Recruit Lifestyle Co., Ltd.
60分でわかった気になるISO29119 #wacate
60分でわかった気になるISO29119 #wacate
Kinji Akemine
ソフトウェアテスト入門
ソフトウェアテスト入門
Preferred Networks
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達
Yusuke Wada
DeNAの大規模ライブ配信基盤を支える技術
DeNAの大規模ライブ配信基盤を支える技術
DeNA
The only one big thing every programmer should know
The only one big thing every programmer should know
Takuto Wada
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
ソフトウェアテストの最新動向の学び方
ソフトウェアテストの最新動向の学び方
Keizo Tatsumi
あじゃいる時代の品質保証 ~DevSQAの提案~
あじゃいる時代の品質保証 ~DevSQAの提案~
Hiroaki Matsunaga
アドテクを支える技術 〜1日40億リクエストを捌くには〜
アドテクを支える技術 〜1日40億リクエストを捌くには〜
MicroAd, Inc.(Engineer)
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
ssuser868e2d
組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
できる!並列・並行プログラミング
できる!並列・並行プログラミング
Preferred Networks
俺のインセプションデッキ【Remaster版】
俺のインセプションデッキ【Remaster版】
Takao Oyobe
jooqってなんて読むの? から始めるO/RマッパーとSpringBootの世界
jooqってなんて読むの? から始めるO/RマッパーとSpringBootの世界
Y Watanabe
Laravelでfacadeを使わない開発
Laravelでfacadeを使わない開発
Kenjiro Kubota
Spring 歴約1年初心者の Test 奮闘記
Spring 歴約1年初心者の Test 奮闘記
chishizu naito
What's hot
(20)
診断ツールの使い方(Owasp zapの場合)
診断ツールの使い方(Owasp zapの場合)
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
私にとってのテスト
私にとってのテスト
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
60分でわかった気になるISO29119 #wacate
60分でわかった気になるISO29119 #wacate
ソフトウェアテスト入門
ソフトウェアテスト入門
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達
DeNAの大規模ライブ配信基盤を支える技術
DeNAの大規模ライブ配信基盤を支える技術
The only one big thing every programmer should know
The only one big thing every programmer should know
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
ソフトウェアテストの最新動向の学び方
ソフトウェアテストの最新動向の学び方
あじゃいる時代の品質保証 ~DevSQAの提案~
あじゃいる時代の品質保証 ~DevSQAの提案~
アドテクを支える技術 〜1日40億リクエストを捌くには〜
アドテクを支える技術 〜1日40億リクエストを捌くには〜
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
わたくし、やっぱりCDKを使いたいですわ〜CDK import編〜.pdf
組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術
できる!並列・並行プログラミング
できる!並列・並行プログラミング
俺のインセプションデッキ【Remaster版】
俺のインセプションデッキ【Remaster版】
jooqってなんて読むの? から始めるO/RマッパーとSpringBootの世界
jooqってなんて読むの? から始めるO/RマッパーとSpringBootの世界
Laravelでfacadeを使わない開発
Laravelでfacadeを使わない開発
Spring 歴約1年初心者の Test 奮闘記
Spring 歴約1年初心者の Test 奮闘記
Viewers also liked
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ー
Shuji Watanabe
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event Processing
Yoshifumi Kawai
UniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for Unity
Yoshifumi Kawai
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
Unity Technologies Japan K.K.
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
Yoshifumi Kawai
RuntimeUnitTestToolkit for Unity
RuntimeUnitTestToolkit for Unity
Yoshifumi Kawai
NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#
Yoshifumi Kawai
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
Yoshifumi Kawai
Viewers also liked
(8)
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ー
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event Processing
UniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for Unity
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
【Unite 2017 Tokyo】「黒騎士と白の魔王」にみるC#で統一したサーバー/クライアント開発と現実的なUniRx使いこなし術
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
RuntimeUnitTestToolkit for Unity
RuntimeUnitTestToolkit for Unity
NextGen Server/Client Architecture - gRPC + Unity + C#
NextGen Server/Client Architecture - gRPC + Unity + C#
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
「黒騎士と白の魔王」gRPCによるHTTP/2 - API, Streamingの実践
Similar to テスト駆動開発へようこそ
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
Shuji Watanabe
SeasarCon 2009 White TDD
SeasarCon 2009 White TDD
Takuto Wada
Hey It's Not My TDD!
Hey It's Not My TDD!
Yasui Tsutomu
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Shuji Watanabe
Serverless Meetup Tokyo #2 オープニング
Serverless Meetup Tokyo #2 オープニング
真吾 吉田
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
makopi 23
TDD、ペアプログラミングのすすめ
TDD、ペアプログラミングのすすめ
Kyota Yasuda
java-ja TDD 2nd
java-ja TDD 2nd
Takuto Wada
Sql database でも使えるほにゃらら
Sql database でも使えるほにゃらら
Oda Shinsuke
UnitTestは最もTDDしやすいか否か? #TDDMeetUp
UnitTestは最もTDDしやすいか否か? #TDDMeetUp
kyon mm
駅すぱあとWebサービスにおけるAWSとその周辺
駅すぱあとWebサービスにおけるAWSとその周辺
Mikawa Kouta
JAWS-UG Osaka 2013.11.02 Feel the Elesticity v2.0
JAWS-UG Osaka 2013.11.02 Feel the Elesticity v2.0
Toshiyuki Konparu
Sue445 Style TDD #atest_hack
Sue445 Style TDD #atest_hack
Go Sueyoshi (a.k.a sue445)
20141101渋谷ruby会議
20141101渋谷ruby会議
Fukui Osamu
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
Takashi Someda
事業会社で働くエンジニアのマインドセット - DevLOVE関西
事業会社で働くエンジニアのマインドセット - DevLOVE関西
Tomoyuki Sugita
Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔
Soudai Sone
永和コンサル式プレゼン作成法(公開用)
永和コンサル式プレゼン作成法(公開用)
Yasui Tsutomu
クラウド時代の人材育成
クラウド時代の人材育成
Trainocate Japan, Ltd.
Sql world を支える技術
Sql world を支える技術
Oda Shinsuke
Similar to テスト駆動開発へようこそ
(20)
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
SeasarCon 2009 White TDD
SeasarCon 2009 White TDD
Hey It's Not My TDD!
Hey It's Not My TDD!
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Serverless Meetup Tokyo #2 オープニング
Serverless Meetup Tokyo #2 オープニング
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
『はじめてのClojure』勉強会#3 第7章:テスト、テスト、テスト
TDD、ペアプログラミングのすすめ
TDD、ペアプログラミングのすすめ
java-ja TDD 2nd
java-ja TDD 2nd
Sql database でも使えるほにゃらら
Sql database でも使えるほにゃらら
UnitTestは最もTDDしやすいか否か? #TDDMeetUp
UnitTestは最もTDDしやすいか否か? #TDDMeetUp
駅すぱあとWebサービスにおけるAWSとその周辺
駅すぱあとWebサービスにおけるAWSとその周辺
JAWS-UG Osaka 2013.11.02 Feel the Elesticity v2.0
JAWS-UG Osaka 2013.11.02 Feel the Elesticity v2.0
Sue445 Style TDD #atest_hack
Sue445 Style TDD #atest_hack
20141101渋谷ruby会議
20141101渋谷ruby会議
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
事業会社で働くエンジニアのマインドセット - DevLOVE関西
事業会社で働くエンジニアのマインドセット - DevLOVE関西
Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔
永和コンサル式プレゼン作成法(公開用)
永和コンサル式プレゼン作成法(公開用)
クラウド時代の人材育成
クラウド時代の人材育成
Sql world を支える技術
Sql world を支える技術
More from Shuji Watanabe
Serverless - Developers.IO 2019
Serverless - Developers.IO 2019
Shuji Watanabe
Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017
Shuji Watanabe
SSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevio
Shuji Watanabe
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
Shuji Watanabe
ELBの概要と勘所
ELBの概要と勘所
Shuji Watanabe
AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -
Shuji Watanabe
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Shuji Watanabe
CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01
Shuji Watanabe
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
Shuji Watanabe
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
Shuji Watanabe
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方
Shuji Watanabe
ユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へ
Shuji Watanabe
テスト駆動開発入門
テスト駆動開発入門
Shuji Watanabe
テストコードのリファクタリング
テストコードのリファクタリング
Shuji Watanabe
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
Shuji Watanabe
アジャイルテスティング
アジャイルテスティング
Shuji Watanabe
テストリストの見つけ方
テストリストの見つけ方
Shuji Watanabe
TDDをはじめよう
TDDをはじめよう
Shuji Watanabe
Jenkins導入事例
Jenkins導入事例
Shuji Watanabe
ソフトウェア開発の3本柱
ソフトウェア開発の3本柱
Shuji Watanabe
More from Shuji Watanabe
(20)
Serverless - Developers.IO 2019
Serverless - Developers.IO 2019
Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017
SSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevio
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
ELBの概要と勘所
ELBの概要と勘所
AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方
ユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へ
テスト駆動開発入門
テスト駆動開発入門
テストコードのリファクタリング
テストコードのリファクタリング
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
アジャイルテスティング
アジャイルテスティング
テストリストの見つけ方
テストリストの見つけ方
TDDをはじめよう
TDDをはじめよう
Jenkins導入事例
Jenkins導入事例
ソフトウェア開発の3本柱
ソフトウェア開発の3本柱
テスト駆動開発へようこそ
1.
テスト駆動開発へ ようこそ 2014.02.01 TDD BootCamp
旭川 Shuji Watanabe (@shuji_w6e) #tddbc 1
2.
自己紹介
3.
渡辺 修司 /
@shuji_w6e 札幌Javaコミュニティ やさしいデスマーチ JUnit実践入門 Java, Groovy, JavaScript, AWS, TDD ロードバイク、スノーボード
4.
最近のお仕事... 昨年8月に転職 株式会社クラスメソッド 札幌にて在宅勤務 AWS利用者向けシステムの開発 主にフロントエンドや自動化などを担当 Spring, Ember.js, d3-data ブログ業務
5.
6.
TDDBCへ ようこそ
7.
本日のスケジュール 11:00∼12:15 TDD, ユニットテストに関する講演 12:15∼12:30
ペアプロとお題の説明 12:30∼13:30 ペア作成、昼食、自己紹介など 13:30∼15:00 演習(前半) 15:00∼15:30 レビュー① 15:30∼17:00 演習(前半) 17:00∼17:30 レビュー② 17:30∼17:50 振り返り ※休憩やお手洗いはご自由にお取りください
8.
TDD Boot Camp(TDDBC)
とは、テスト 駆動開発(Test Driven Development)につ いて、座学だけでなく、実習形式で手を 動かして体得することを目的とするイベ ントです。 http://devtesting.jp/tddbc/
9.
旭川発上陸
10.
TDDBCで体験して欲しいこと テストファースト ユニットテスト リファクタリング TDDのサイクル ペアプログラミング コードレビュー
11.
グリーンバンド acts_as_professional
12.
テスト駆動開発
13.
テスト駆動開発とは? ソフトウェアの開発手法 テスト駆動開発の1サイクル はじめにテストコードを書く テストが成功する必要最低限のコードを書く テスト成功を維持してリファクタリングする 上記サイクルを素早くテンポ良く繰り返す
14.
TDDのサイクル 1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる 3.コードを書く
15.
TDD三原則 - Uncle
Bob 失敗するユニットテストより先にプロダクショ ンコードを書いてはならない テストケースのコンパイルが通り、適切に失 敗するまでは次のテストケースを書いてはな らない すべてのテストケースが成功するまでは次の プロダクションコードを書いてはならない
16.
TDD 品質保証テスト 品質保証テストはソフトウェアを対象とし、 品質担当者が高い品質を担保するために実施 TDDは品質を担保するわけではない 結果的に品質は高まるが主目的ではない 開発者が安心して開発できるための開発手法 TDDは設計やプログラム自体を対象とする
17.
汚いコードは動かない 密結合 多重ネスト 巨大なクラス 多すぎる引数 多すぎる責務
18.
きれいな動くコードへの道 きれい 汚い 動かない 動く
19.
1.設計する 1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる きれい 3.コードを書く 汚い 動かない 動く
20.
2.テストを書く 1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる きれい 3.コードを書く 汚い 動かない 動く
21.
3.コードを書く 1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる きれい 3.コードを書く 汚い 動かない 動く
22.
4.テストを成功させる 1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる きれい 3.コードを書く 汚い 動かない 動く
23.
5.リファクタリング 1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる きれい 3.コードを書く 汚い 動かない 動く
24.
1.設計する 1.設計する 5.リファクタリング Heuristics 2.テストを書く 4.テストを成功させる きれい 3.コードを書く 汚い 動かない 動く
25.
TDDのこころ ©t-wada
26.
小さく 個別に すばやく
27.
ひとつずつ、一歩ずつ 小さなステップで 大きなものは小さく分割 確実に、堅実に 手戻りを小さく
28.
ひとりずつ、仕留める テストは個別撃破する 次のテストを作らない
29.
すばやくまわす 小さく回す 1.設計する 5.リファクタリング 早く回す Heuristics すぐに対応 リズム重要 2.テストを書く 4.テストを成功させる 3.コードを書く
30.
使う 作る 伝える
31.
自分が最初のユーザー 使いにくいものは使いにくい 自分で評価する 納得できるか? 恥ずかしくないか? 解りやすいか?
32.
道具にこだわる 最高のパフォーマンスを維持する プロとしてのこだわり 少しでも使いやすく 日々、研究・工夫
33.
未来の自分が読む テストコードは保守される 読みにくいコードは悪 シンプルに 名前重要 型
34.
どうして、 テスト駆動開発を 導入するのか?
35.
スキル不足 仕様変更 経験不足 複雑な要件 不安 http://www.flickr.com/photos/yopse/3772030400/
36.
安全を確保する http://www.flickr.com/photos/32010000@N08/2987901256/
37.
なぜ、TDDを実践するか? ソフトウェアは思った以上に複雑 パーフェクトプログラマなんかいない 不安だからユニットテストを書く セーフティネットとしてのユニットテスト すばやく回し、すばやいフィードバック
38.
TDDが目指すところ 安心できる健康な開発 変更に強い健康なコード
39.
難しそう・・・ http://www.flickr.com/photos/k1netik/50298297/
40.
TDDはスキル 最初から完璧に出来る人はいない 原則は原則、出来る所から少しずつ 困ったら「TDDのこころ」を見直す 息を吸うようにテストコードを書き、 息を吐くようにプロダクトコードを書こう
41.
TDDをはじめよう
42.
TDDをはじめるワケ 設計力が高くなる コードに自信が持てる! 1人でもはじめられる 開発が楽しくなる!!
43.
TDDBCではじめるワケ TAがいるから安心 1人で悩む必要がない 解らない事はみんなで考える 他のチームのコードを見ることができる
44.
TDDBCの心得 http://www.flickr.com/photos/terrydonaghe/1117999/
45.
1.手を動かす http://www.flickr.com/photos/esti/4638056301/
46.
2.議論する http://www.flickr.com/photos/86921622@N00/281632021/
47.
3.楽しむ http://www.flickr.com/photos/monmo/21100814/
48.
4.現実と戦う http://www.flickr.com/photos/panoptikon/403903803/
49.
ユニットテストが不安
50.
ユニットテスト入門
51.
ユニットテストとは? システムを構成する最小部品のテスト クラスやメソッドが対象 期待された振る舞いをするかを検証する テストプログラムを作り自動化する テスティングフレームワーク JUnit pyunit 最も基本的なテストなので最初に習得すべき
52.
テストのポイント 特定の条件下で検証する(Test Case) 本来はどうあるべきか?(Expected) 実際にどうなっているのか?(Actual)
53.
4フェイズテスト 1. 事前準備 (Setup) 事前条件や必要なデータを作成する 2.
実行 (Exercise) 対象となるメソッドを1回だけ呼び出す 3. 検証(Verify) 期待値と実測値を比較する 4. 後処理(TearDown)
54.
ユニットテストのポイント テスト対象クラスに対しテストクラスを作成 テストケースで操作するのは1つのメソッド 事前条件と実行を混同しない 検証は細かく行い、問題を切り分ける
55.
事前設計とテストファースト 外部的システムの振る舞い(システム境界) プログラムのインターフェイス 内部的処理(private メソッド) システム境界 IN インターフェイス 内部的処理 内部的処理 OUT 内部的処理 内部的処理
56.
リファクタリング ユニットテストの最大の目的のひとつ 外部的振る舞いを壊さずに実装を変更 privateメソッドのテストをしない
57.
デモ
Download now