Suche senden
Hochladen
初めての単体テスト
•
Als KEY, PDF herunterladen
•
12 gefällt mir
•
18,295 views
Basuke Suzuki
Folgen
Xcode4での単体テストとその意味を語ってます
Weniger lesen
Mehr lesen
Technologie
Melden
Teilen
Melden
Teilen
1 von 40
Jetzt herunterladen
Empfohlen
テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編
Hisakuni Fujimoto
最近の単体テスト
最近の単体テスト
Ken Morishita
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
hakoika-itwg
PHP agile test tips
PHP agile test tips
Tsutomu Chikuba
ビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテスト
Tsutomu Chikuba
JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践
JustSystems Corporation
Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術
finoue
ハイパフォーマンスSeleniumテスト@サイボウズ
ハイパフォーマンスSeleniumテスト@サイボウズ
Jumpei Miyata
Empfohlen
テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編
Hisakuni Fujimoto
最近の単体テスト
最近の単体テスト
Ken Morishita
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
hakoika-itwg
PHP agile test tips
PHP agile test tips
Tsutomu Chikuba
ビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテスト
Tsutomu Chikuba
JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践
JustSystems Corporation
Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術
finoue
ハイパフォーマンスSeleniumテスト@サイボウズ
ハイパフォーマンスSeleniumテスト@サイボウズ
Jumpei Miyata
reg-suitとQA Wolfを活用したVisual Regression Test
reg-suitとQA Wolfを活用したVisual Regression Test
Kazuyuki Tsuzisaki
モックライブラリを使ってきちんとユニットテストする #Objective-C
モックライブラリを使ってきちんとユニットテストする #Objective-C
Shoichi Matsuda
nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テスト
JunHo Yoon
C++でテスト駆動開発
C++でテスト駆動開発
Akineko Shimizu
Test Plugins
Test Plugins
ykhr
テスト自動化読書会 第3章 20150523
テスト自動化読書会 第3章 20150523
dnoguchi
phpspecで始めるBDD
phpspecで始めるBDD
Yuuki Takezawa
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
Masatoshi Itoh
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
Shuji Watanabe
プライベートAPIとの闘い
プライベートAPIとの闘い
107steps
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
Tokuhiro Matsuno
Unit testで定時帰宅!
Unit testで定時帰宅!
Funato Takashi
継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング
Takayuki Kondou
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
aha_oretama
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テスト
Seiji KOMATSU
Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦
urasandesu
kintoneチームを支えるSeleniumテスト
kintoneチームを支えるSeleniumテスト
Jumpei Miyata
テスト環境まるごとAwsにのっけてみた
テスト環境まるごとAwsにのっけてみた
Kazuaki Fujikura
Try_to_writecode_practicaltest #atest_hack
Try_to_writecode_practicaltest #atest_hack
kimukou_26 Kimukou
EMTEを使って自動化の費用対効果をわかりやすく表現する
EMTEを使って自動化の費用対効果をわかりやすく表現する
JYERUEY
JavaScriptCore.framework の普通な使い方 #cocoa_kansai
JavaScriptCore.framework の普通な使い方 #cocoa_kansai
Tomohiro Kumagai
基礎から見直す ASP.NET MVC の単体テスト自動化方法 ~ Windows Azure 関連もあるかも~
基礎から見直す ASP.NET MVC の単体テスト自動化方法 ~ Windows Azure 関連もあるかも~
normalian
Weitere ähnliche Inhalte
Was ist angesagt?
reg-suitとQA Wolfを活用したVisual Regression Test
reg-suitとQA Wolfを活用したVisual Regression Test
Kazuyuki Tsuzisaki
モックライブラリを使ってきちんとユニットテストする #Objective-C
モックライブラリを使ってきちんとユニットテストする #Objective-C
Shoichi Matsuda
nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テスト
JunHo Yoon
C++でテスト駆動開発
C++でテスト駆動開発
Akineko Shimizu
Test Plugins
Test Plugins
ykhr
テスト自動化読書会 第3章 20150523
テスト自動化読書会 第3章 20150523
dnoguchi
phpspecで始めるBDD
phpspecで始めるBDD
Yuuki Takezawa
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
Masatoshi Itoh
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
Shuji Watanabe
プライベートAPIとの闘い
プライベートAPIとの闘い
107steps
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
Tokuhiro Matsuno
Unit testで定時帰宅!
Unit testで定時帰宅!
Funato Takashi
継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング
Takayuki Kondou
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
aha_oretama
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テスト
Seiji KOMATSU
Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦
urasandesu
kintoneチームを支えるSeleniumテスト
kintoneチームを支えるSeleniumテスト
Jumpei Miyata
テスト環境まるごとAwsにのっけてみた
テスト環境まるごとAwsにのっけてみた
Kazuaki Fujikura
Try_to_writecode_practicaltest #atest_hack
Try_to_writecode_practicaltest #atest_hack
kimukou_26 Kimukou
EMTEを使って自動化の費用対効果をわかりやすく表現する
EMTEを使って自動化の費用対効果をわかりやすく表現する
JYERUEY
Was ist angesagt?
(20)
reg-suitとQA Wolfを活用したVisual Regression Test
reg-suitとQA Wolfを活用したVisual Regression Test
モックライブラリを使ってきちんとユニットテストする #Objective-C
モックライブラリを使ってきちんとユニットテストする #Objective-C
nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テスト
C++でテスト駆動開発
C++でテスト駆動開発
Test Plugins
Test Plugins
テスト自動化読書会 第3章 20150523
テスト自動化読書会 第3章 20150523
phpspecで始めるBDD
phpspecで始めるBDD
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
プライベートAPIとの闘い
プライベートAPIとの闘い
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
Unit testで定時帰宅!
Unit testで定時帰宅!
継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テスト
Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦
kintoneチームを支えるSeleniumテスト
kintoneチームを支えるSeleniumテスト
テスト環境まるごとAwsにのっけてみた
テスト環境まるごとAwsにのっけてみた
Try_to_writecode_practicaltest #atest_hack
Try_to_writecode_practicaltest #atest_hack
EMTEを使って自動化の費用対効果をわかりやすく表現する
EMTEを使って自動化の費用対効果をわかりやすく表現する
Ähnlich wie 初めての単体テスト
JavaScriptCore.framework の普通な使い方 #cocoa_kansai
JavaScriptCore.framework の普通な使い方 #cocoa_kansai
Tomohiro Kumagai
基礎から見直す ASP.NET MVC の単体テスト自動化方法 ~ Windows Azure 関連もあるかも~
基礎から見直す ASP.NET MVC の単体テスト自動化方法 ~ Windows Azure 関連もあるかも~
normalian
Xcode 6の新機能
Xcode 6の新機能
Shingo Sato
Integration test with Arquillian and JBoss AS 7
Integration test with Arquillian and JBoss AS 7
Takayuki Konishi
EC-CUBE + PHPUnit で 実践テスト駆動開発
EC-CUBE + PHPUnit で 実践テスト駆動開発
Kentaro Ohkouchi
Xcode10での テスト周りの進化をふりかえる
Xcode10での テスト周りの進化をふりかえる
Toshiyuki Hirata
Cobolでもやりたいテスト自動化
Cobolでもやりたいテスト自動化
daisukhayash
Knockout.js を利用したインタラクティブ web アプリケーション開発
Knockout.js を利用したインタラクティブ web アプリケーション開発
Daizen Ikehara
Ppl
Ppl
Seizan Shimazaki
Asakusa バッチの運用を支える技術
Asakusa バッチの運用を支える技術
KinebuchiTomo
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
y_taka_23
AWS Lambdaのテストで役立つ各種ツール
AWS Lambdaのテストで役立つ各種ツール
Masaki Suzuki
Hello. Continuous Integration
Hello. Continuous Integration
Yuki Matsumura
Jenkins + awsで並列テスト
Jenkins + awsで並列テスト
Yamamoto Kazuhisa
Casper js エスキュービズム勉強会0718
Casper js エスキュービズム勉強会0718
エンジニア勉強会 エスキュービズム
Jenkins javascript ci
Jenkins javascript ci
hisame64
継続的デリバリー読書会 第 7 章 コミットステージ
継続的デリバリー読書会 第 7 章 コミットステージ
Yasutomo Arai
CLRH_120414_WFTDD
CLRH_120414_WFTDD
Tomoyuki Obi
Firefoxの開発プロセス
Firefoxの開発プロセス
Makoto Kato
Jubatusでマルウェア分類
Jubatusでマルウェア分類
Shuzo Kashihara
Ähnlich wie 初めての単体テスト
(20)
JavaScriptCore.framework の普通な使い方 #cocoa_kansai
JavaScriptCore.framework の普通な使い方 #cocoa_kansai
基礎から見直す ASP.NET MVC の単体テスト自動化方法 ~ Windows Azure 関連もあるかも~
基礎から見直す ASP.NET MVC の単体テスト自動化方法 ~ Windows Azure 関連もあるかも~
Xcode 6の新機能
Xcode 6の新機能
Integration test with Arquillian and JBoss AS 7
Integration test with Arquillian and JBoss AS 7
EC-CUBE + PHPUnit で 実践テスト駆動開発
EC-CUBE + PHPUnit で 実践テスト駆動開発
Xcode10での テスト周りの進化をふりかえる
Xcode10での テスト周りの進化をふりかえる
Cobolでもやりたいテスト自動化
Cobolでもやりたいテスト自動化
Knockout.js を利用したインタラクティブ web アプリケーション開発
Knockout.js を利用したインタラクティブ web アプリケーション開発
Ppl
Ppl
Asakusa バッチの運用を支える技術
Asakusa バッチの運用を支える技術
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta
AWS Lambdaのテストで役立つ各種ツール
AWS Lambdaのテストで役立つ各種ツール
Hello. Continuous Integration
Hello. Continuous Integration
Jenkins + awsで並列テスト
Jenkins + awsで並列テスト
Casper js エスキュービズム勉強会0718
Casper js エスキュービズム勉強会0718
Jenkins javascript ci
Jenkins javascript ci
継続的デリバリー読書会 第 7 章 コミットステージ
継続的デリバリー読書会 第 7 章 コミットステージ
CLRH_120414_WFTDD
CLRH_120414_WFTDD
Firefoxの開発プロセス
Firefoxの開発プロセス
Jubatusでマルウェア分類
Jubatusでマルウェア分類
Mehr von Basuke Suzuki
CoAP Talk
CoAP Talk
Basuke Suzuki
Introducing CakeEntity
Introducing CakeEntity
Basuke Suzuki
Introducing CakeEntity
Introducing CakeEntity
Basuke Suzuki
Kiosk / PHP
Kiosk / PHP
Basuke Suzuki
PostgreSQLからMongoDBへ
PostgreSQLからMongoDBへ
Basuke Suzuki
iOS4時代の位置情報サービスの使い方
iOS4時代の位置情報サービスの使い方
Basuke Suzuki
iPhoneのオモチャ箱 - 刊行記念イベント@ジュンク堂新宿 - バスケ
iPhoneのオモチャ箱 - 刊行記念イベント@ジュンク堂新宿 - バスケ
Basuke Suzuki
Mehr von Basuke Suzuki
(7)
CoAP Talk
CoAP Talk
Introducing CakeEntity
Introducing CakeEntity
Introducing CakeEntity
Introducing CakeEntity
Kiosk / PHP
Kiosk / PHP
PostgreSQLからMongoDBへ
PostgreSQLからMongoDBへ
iOS4時代の位置情報サービスの使い方
iOS4時代の位置情報サービスの使い方
iPhoneのオモチャ箱 - 刊行記念イベント@ジュンク堂新宿 - バスケ
iPhoneのオモチャ箱 - 刊行記念イベント@ジュンク堂新宿 - バスケ
Kürzlich hochgeladen
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
Kürzlich hochgeladen
(12)
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
初めての単体テスト
1.
初めての単体テスト Xcodeでテストしてますか?
バスケ Twitter: @basuke
2.
Agenda • 単体テスト全般について • Xcode標準の単体テストを使う •
テストしやすいコードとMVCについて • GHUnit - もうひとつの単体テスト環境 • 位置情報系のテスト basuke
3.
単体テストとは? What is Unit
Test? basuke
4.
単体テスト • Kent BeckさんがSmalltalk用に作った •
Javaでブレーク、いろんな言語に飛び火 • xUnitと呼ばれるフレームワーク • 単体テストの手法のメインストリーム • IDEなどのツールと相性が良い basuke
5.
単体テスト cont. • 小さい単位で機能をテストしていく •
簡単に実行、何度も実行 • テストが仕様になる basuke
6.
単体テストの目的 •
コードの質を高められる • 書いたコードが動くことを確認できる • しかも継続的に • 設計の正当性を早期に検証できる • 客観的な視点を手に入れられる • 気持ちよくプログラミングできる basuke
7.
単体テスト向きでないこと • インターフェースの動作確認 • グラフィカルな要素の正当性
• 線が正しく引けているか • 動作速度の検証 • ストレステスト basuke
8.
Xcodeの 単体テスト環境
basuke
9.
OCUnit - SenTestKit • Objective-C用のxUnitフレームワーク •
Xcodeにバンドルされていて手軽 • 一通りの機能は備えている • 新規プロジェクトでも既存でも簡単に テストを追加できる basuke
10.
テスト用のターゲット • テストには専用ターゲットを用意する • 実行はテスト専用スキームを⌘-Uで簡
単に実行できる basuke
11.
通貨変換アプリを作って
テストしてみよう #pragma mark - Actions - (IBAction)doConvert:(id)sender { ! double anAmount = [amount.text doubleValue]; ! double aRate = [rate.text doubleValue]; ! ! double aResult = [self convert:anAmount withRate:aRate]; ! ! result.text = [[NSNumber numberWithDouble:aResult] stringValue]; } #pragma mark - Logic - (double)convert:(double)anAmount withRate:(double)aRate { ! return anAmount * aRate; } basuke
12.
Xcodeで新規プロジェクト
basuke
13.
テストコード - (void)testConvert { ! double
result = [controller convert:78 withRate:78]; ! STAssertEquals(result, 1.0, @"¥78=$1"); } basuke
14.
アプリケーションテスト とロジックテスト
basuke
15.
基本はアプリケーションテスト • デフォルトで作られるのはアプリケー ションテスト •
別にロジックテストというものもある basuke
16.
ロジックテストとは • 手軽で迅速に動く
• シミュレータに切り替わらない • ビルド設定で • Bundle LoaderとTest Hostを削除 • 実際のアプリケーションの環境ではない ところでコードを実行する basuke
17.
ロジックテストの欠点 • シミュレータでしか動かない • 自分でコードをリンクしてあげる必要
がある • アプリケーションテストは勝手にリ ンクしてくれる • あくまでロジックの正当性をテスト basuke
18.
Assertの種類
basuke
19.
同じ値を期待する • STAssertEqualObjects •
オブジェクトがisEqual:か • STAssertEquals • 同じ値か • STAssertEqualsWithAccuracy • 幅を持たせた同値チェック basuke
20.
NilとBOOLチェック • STAssertNil • STAssertNotNil
• nil or not nil • STAssertTrue • STAssertFalse • YES or No basuke
21.
例外を捕捉したりしなかったり •
STAssertThrows • STAssertThrowsSpecific • STAssertThrowsSpecificNamed • STAssertNoThrow • STAssertNoThrowSpecific • STAssertNoThrowSpecificNamed • STAssertTrueNoThrow • STAssertFalseNoThrow basuke
22.
必ず失敗させる • STFail •
とりあえず失敗させておくときに使う • 後でテストを書かなくちゃ行けない場 合など • 到達してはいけない場合などにも使え る basuke
23.
テストしやすいコード
basuke
24.
なぜテストしにくいか? • ViewControllerにロジックを入れている から •
ロジックは独立したクラスに分離させ るべき • ViewControllerはグルーコードの固まり にすべき basuke
25.
MVCが答え • 表示に関する詳細な実装はView • 入力に関する詳細な実装もView •
それ以外のロジックはModel • データもModel • Modelでの状態の保持は最低限に basuke
26.
実例
basuke
27.
View カスタム グラフビュー
イベント カスタム ハンドリング タブバー basuke
28.
Model 集計を更新する
毎月の集計 グラフ用のデータを作る 昨年のデータ 日々記録する Twitterでつぶやく 日々のデータ basuke
29.
Modelはテストできる • ただし、ちゃんと書かれたモデルは。 • 外部に依存しないモデル •
状態を持っていても観測可能なモデル • 同じ状況で同じ値を渡したら同じ結果が 返ってくるモデル • 参照透明性 basuke
30.
電卓を作ってみよう • MVCの話をふまえた上で、どういう構 成にするか •
電卓のモデルは何か? basuke
31.
GHUnit もうひとつの単体テスト環境
basuke
32.
OCUnit vs GHUnit •
Xcode 3時代はOCUnitは貧弱だった • GHUnitは救いだった • Xcode 4になってOCUnitが飛躍的に便利 になった • そんな状況な現在。 basuke
33.
GHUnitの特徴 •
見やすいテストランナー • オープンソース • 豊富なAssert • 非同期のテストをサポー ト • JenkinsによるCIサポート basuke
34.
非同期のテスト • GHAsyncTestCase •
非同期テストケース。別スレッドの完 了を待つことができる。 • GHMockNSURLConnection • NSURLConnectionの動作をシミュレー トするクラス basuke
35.
導入は結構簡単 • やってみましょう • http://gabriel.github.com/gh-unit/docs/
index.html basuke
36.
Xcode4.2で導入された 位置情報のテスト手法
basuke
37.
位置情報アプリのテスト • これまでは外に出るしかなかった • Xcode
4.2からシミュレータで位置情報 が返ってくるようになった • カスタマイズ可能 basuke
38.
シミュレータの位置情報 • 位置情報が返ってくる • 位置情報サービスの状態の管理 •
位置情報サービス使用確認のリセット • 位置情報アイコンの表示 • デバッグ > 位置 > カスタマイズ可能 basuke
39.
Xcodeでの位置情報 • Scheme単位で位置情報を変更できる • デバッガー実行中でも切り替えられる •
メジャーな都市がプリセットで用意 • GPXファイルをプロジェクトに追加す ることで、好きな場所に設定できる basuke
40.
DEMO
basuke
Hinweis der Redaktion
\n
\n
全般 5分\nXcode標準 10分\n実際に触る 10分\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Jetzt herunterladen