Submit Search
Upload
モックライブラリを使ってきちんとユニットテストする #Objective-C
•
5 likes
•
3,514 views
Shoichi Matsuda
Follow
iOS_LT #7にて発表しました。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 19
Download now
Download to read offline
Recommended
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
Shuji Watanabe
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
hakoika-itwg
C++でテスト駆動開発
C++でテスト駆動開発
Akineko Shimizu
ぼくのかんがえた iOSテスト戦略
ぼくのかんがえた iOSテスト戦略
Naoki Umehara
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
Masatoshi Itoh
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テスト
Seiji KOMATSU
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Koji Hasegawa
About junit
About junit
エンジニア勉強会 エスキュービズム
Recommended
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
Shuji Watanabe
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
hakoika-itwg
C++でテスト駆動開発
C++でテスト駆動開発
Akineko Shimizu
ぼくのかんがえた iOSテスト戦略
ぼくのかんがえた iOSテスト戦略
Naoki Umehara
システムテスト自動化標準ガイド 5章発表資料
システムテスト自動化標準ガイド 5章発表資料
Masatoshi Itoh
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テスト
Seiji KOMATSU
ビルドプロセスとCI #STAC2014
ビルドプロセスとCI #STAC2014
Koji Hasegawa
About junit
About junit
エンジニア勉強会 エスキュービズム
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介
Shinsuke Matsuki
テスト自動化読書会 第3章 20150523
テスト自動化読書会 第3章 20150523
dnoguchi
Stac2014 石川
Stac2014 石川
Tatsuya Ishikawa
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
Nozomi Ito
詳解!自動結合テスト #jasst
詳解!自動結合テスト #jasst
kyon mm
テスト自動化のこれまでとこれから
テスト自動化のこれまでとこれから
Keizo Tatsumi
GUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるには
Nozomi Ito
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
Hiroko Tamagawa
Sue445 Style TDD #atest_hack
Sue445 Style TDD #atest_hack
Go Sueyoshi (a.k.a sue445)
システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章
mirer
EMTEを使って自動化の費用対効果をわかりやすく表現する
EMTEを使って自動化の費用対効果をわかりやすく表現する
JYERUEY
Twitter4Jとテスト
Twitter4Jとテスト
Yusuke Yamamoto
単体テストで工数を短縮する
単体テストで工数を短縮する
Wataru Terada
テストエンジニアのおっさんの日常です
テストエンジニアのおっさんの日常です
ryuji koyama
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
kyon mm
iOSアプリ開発でもTravis CI #eytokyo
iOSアプリ開発でもTravis CI #eytokyo
Koji Hasegawa
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
Nozomi Ito
テスト初心者Androiderのためのソフトウェアテスト入門
テスト初心者Androiderのためのソフトウェアテスト入門
Satoshi Watanabe
スマートフォンアプリの テスト自動化をはじめよう
スマートフォンアプリの テスト自動化をはじめよう
Koji Hasegawa
SGT2013 技術トークス「アジャイルテスティング」
SGT2013 技術トークス「アジャイルテスティング」
yasuohosotani
Testingofembeddedsystem 20051201
Testingofembeddedsystem 20051201
Masayuki Morimoto
ソフトウェアテスト入門
ソフトウェアテスト入門
iKenji
More Related Content
What's hot
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介
Shinsuke Matsuki
テスト自動化読書会 第3章 20150523
テスト自動化読書会 第3章 20150523
dnoguchi
Stac2014 石川
Stac2014 石川
Tatsuya Ishikawa
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
Nozomi Ito
詳解!自動結合テスト #jasst
詳解!自動結合テスト #jasst
kyon mm
テスト自動化のこれまでとこれから
テスト自動化のこれまでとこれから
Keizo Tatsumi
GUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるには
Nozomi Ito
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
Hiroko Tamagawa
Sue445 Style TDD #atest_hack
Sue445 Style TDD #atest_hack
Go Sueyoshi (a.k.a sue445)
システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章
mirer
EMTEを使って自動化の費用対効果をわかりやすく表現する
EMTEを使って自動化の費用対効果をわかりやすく表現する
JYERUEY
Twitter4Jとテスト
Twitter4Jとテスト
Yusuke Yamamoto
単体テストで工数を短縮する
単体テストで工数を短縮する
Wataru Terada
テストエンジニアのおっさんの日常です
テストエンジニアのおっさんの日常です
ryuji koyama
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
kyon mm
iOSアプリ開発でもTravis CI #eytokyo
iOSアプリ開発でもTravis CI #eytokyo
Koji Hasegawa
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
Nozomi Ito
テスト初心者Androiderのためのソフトウェアテスト入門
テスト初心者Androiderのためのソフトウェアテスト入門
Satoshi Watanabe
スマートフォンアプリの テスト自動化をはじめよう
スマートフォンアプリの テスト自動化をはじめよう
Koji Hasegawa
SGT2013 技術トークス「アジャイルテスティング」
SGT2013 技術トークス「アジャイルテスティング」
yasuohosotani
What's hot
(20)
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介
テスト自動化読書会 第3章 20150523
テスト自動化読書会 第3章 20150523
Stac2014 石川
Stac2014 石川
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
実践で学ぶ、効率的な自動テストスクリプトのメンテナンス
詳解!自動結合テスト #jasst
詳解!自動結合テスト #jasst
テスト自動化のこれまでとこれから
テスト自動化のこれまでとこれから
GUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるには
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
20131201 テスト自動化カンファレンスLT「激しいUI変更との戦い」
Sue445 Style TDD #atest_hack
Sue445 Style TDD #atest_hack
システムテスト自動化標準ガイド 読書会 第8章
システムテスト自動化標準ガイド 読書会 第8章
EMTEを使って自動化の費用対効果をわかりやすく表現する
EMTEを使って自動化の費用対効果をわかりやすく表現する
Twitter4Jとテスト
Twitter4Jとテスト
単体テストで工数を短縮する
単体テストで工数を短縮する
テストエンジニアのおっさんの日常です
テストエンジニアのおっさんの日常です
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
#STAC2014 状態遷移を活用した自動テストのテスト戦略とデプロイメントパイプライン
iOSアプリ開発でもTravis CI #eytokyo
iOSアプリ開発でもTravis CI #eytokyo
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
4時間で学ぶ、効率的な自動テストスクリプトのメンテナンス
テスト初心者Androiderのためのソフトウェアテスト入門
テスト初心者Androiderのためのソフトウェアテスト入門
スマートフォンアプリの テスト自動化をはじめよう
スマートフォンアプリの テスト自動化をはじめよう
SGT2013 技術トークス「アジャイルテスティング」
SGT2013 技術トークス「アジャイルテスティング」
Similar to モックライブラリを使ってきちんとユニットテストする #Objective-C
Testingofembeddedsystem 20051201
Testingofembeddedsystem 20051201
Masayuki Morimoto
ソフトウェアテスト入門
ソフトウェアテスト入門
iKenji
TABOK Skill Category2解説
TABOK Skill Category2解説
Kinji Akemine
2015 12 03_uiテストツールについて
2015 12 03_uiテストツールについて
Natsuki Yamanaka
RICOH最終選考プレゼン資料
RICOH最終選考プレゼン資料
pyar6329
Unit testで定時帰宅!
Unit testで定時帰宅!
Funato Takashi
Friendlyを使ったwindowsアプリテスト自動化
Friendlyを使ったwindowsアプリテスト自動化
Tatsuya Ishikawa
スマートフォンアプリの色々自動化をはじめよう - at SonyDNA Meisters Salon 特別編
スマートフォンアプリの色々自動化をはじめよう - at SonyDNA Meisters Salon 特別編
Koji Hasegawa
JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践
JustSystems Corporation
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック
智治 長沢
Androidテスティング実践3 ユニットテスト・CI編
Androidテスティング実践3 ユニットテスト・CI編
株式会社 NTTテクノクロス
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
慎一 古賀
Pex を試してみよう!
Pex を試してみよう!
Oda Shinsuke
Selenium WebDriver + python で E2Eテスト自動化
Selenium WebDriver + python で E2Eテスト自動化
JustSystems Corporation
Introduction to Continuous Testing
Introduction to Continuous Testing
Atsuhiro Kubo
Test Plugins
Test Plugins
ykhr
【JaSST'11 Kansai】 開発者とテスト担当者に最適なコラボレーションと効率化を!
【JaSST'11 Kansai】 開発者とテスト担当者に最適なコラボレーションと効率化を!
智治 長沢
TFS超入門。いつやるの。今でしょ
TFS超入門。いつやるの。今でしょ
Takuya Kawabe
Androidテスティング実践2 システムテスト編
Androidテスティング実践2 システムテスト編
株式会社 NTTテクノクロス
【JaSST'11 Tokyo】 テスト イノベーション
【JaSST'11 Tokyo】 テスト イノベーション
智治 長沢
Similar to モックライブラリを使ってきちんとユニットテストする #Objective-C
(20)
Testingofembeddedsystem 20051201
Testingofembeddedsystem 20051201
ソフトウェアテスト入門
ソフトウェアテスト入門
TABOK Skill Category2解説
TABOK Skill Category2解説
2015 12 03_uiテストツールについて
2015 12 03_uiテストツールについて
RICOH最終選考プレゼン資料
RICOH最終選考プレゼン資料
Unit testで定時帰宅!
Unit testで定時帰宅!
Friendlyを使ったwindowsアプリテスト自動化
Friendlyを使ったwindowsアプリテスト自動化
スマートフォンアプリの色々自動化をはじめよう - at SonyDNA Meisters Salon 特別編
スマートフォンアプリの色々自動化をはじめよう - at SonyDNA Meisters Salon 特別編
JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践
【Agile Conference tokyo 2011】 継続的フィードバック
【Agile Conference tokyo 2011】 継続的フィードバック
Androidテスティング実践3 ユニットテスト・CI編
Androidテスティング実践3 ユニットテスト・CI編
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
Pex を試してみよう!
Pex を試してみよう!
Selenium WebDriver + python で E2Eテスト自動化
Selenium WebDriver + python で E2Eテスト自動化
Introduction to Continuous Testing
Introduction to Continuous Testing
Test Plugins
Test Plugins
【JaSST'11 Kansai】 開発者とテスト担当者に最適なコラボレーションと効率化を!
【JaSST'11 Kansai】 開発者とテスト担当者に最適なコラボレーションと効率化を!
TFS超入門。いつやるの。今でしょ
TFS超入門。いつやるの。今でしょ
Androidテスティング実践2 システムテスト編
Androidテスティング実践2 システムテスト編
【JaSST'11 Tokyo】 テスト イノベーション
【JaSST'11 Tokyo】 テスト イノベーション
More from Shoichi Matsuda
Yahoo! JAPANとKotlin
Yahoo! JAPANとKotlin
Shoichi Matsuda
広がりを見せるAndroidプラットフォーム
広がりを見せるAndroidプラットフォーム
Shoichi Matsuda
Kotlinでテストコードを書く
Kotlinでテストコードを書く
Shoichi Matsuda
2015冬から始めるKotlin
2015冬から始めるKotlin
Shoichi Matsuda
Gradleスクリプトを読み解く
Gradleスクリプトを読み解く
Shoichi Matsuda
プログラミング言語は怖くない
プログラミング言語は怖くない
Shoichi Matsuda
TddでFizzBuzzしてみる in Swift
TddでFizzBuzzしてみる in Swift
Shoichi Matsuda
テストを書きたいあなたが意識すべきただ一つのこと
テストを書きたいあなたが意識すべきただ一つのこと
Shoichi Matsuda
アプリでもオブジェクト指向エクササイズ(Potatotips#3)
アプリでもオブジェクト指向エクササイズ(Potatotips#3)
Shoichi Matsuda
More from Shoichi Matsuda
(9)
Yahoo! JAPANとKotlin
Yahoo! JAPANとKotlin
広がりを見せるAndroidプラットフォーム
広がりを見せるAndroidプラットフォーム
Kotlinでテストコードを書く
Kotlinでテストコードを書く
2015冬から始めるKotlin
2015冬から始めるKotlin
Gradleスクリプトを読み解く
Gradleスクリプトを読み解く
プログラミング言語は怖くない
プログラミング言語は怖くない
TddでFizzBuzzしてみる in Swift
TddでFizzBuzzしてみる in Swift
テストを書きたいあなたが意識すべきただ一つのこと
テストを書きたいあなたが意識すべきただ一つのこと
アプリでもオブジェクト指向エクササイズ(Potatotips#3)
アプリでもオブジェクト指向エクササイズ(Potatotips#3)
モックライブラリを使ってきちんとユニットテストする #Objective-C
1.
モックライブラリを使って きちんとユニットテストする Shoichi Matsuda (
@shoma2da ) iOS_LT #7
2.
ユニットテスト できてますか?
3.
iOSエンジニアかどうか 従業員クラス 会社クラス iOSエンジニアは何%?
4.
ユニットテスト?してみる 4人の従業員を生成。3人はiOSエンジニア! iOSエンジニアは75%のはず!
5.
ユニットテストとは ユニットテストは、クラスやメソッドというプログラム の最小単位を対象とし、プログラマが行うテストです。 http://dev.classmethod.jp/testing/10_errors_about_unit_testing/ ! 単体テスト(ユニットテストと呼ばれることもあります) は、プログラムを構成する比較的小さな単位(ユニット) が個々の機能を正しく果たしているかどうかを検証する テストです。通常、関数やメソッドが単体テストの単位 (ユニット)となります。 http://www.techmatrix.co.jp/quality/validation/unittest.html
6.
?
7.
ユニットテスト?してみる 4人の従業員を生成。3人はiOSエンジニア! iOSエンジニアは75%のはず!
8.
ユニットテスト?してみる 4人の従業員を生成。3人はiOSエンジニア! このテストの目的は正しく「何%がiOSエンジニアか」を 取得できるかどうかのはずです。 しかし従業員クラスの「iOSエンジニアかどうか」の 実装によってテスト結果が変わってしまいます。 つまりテスト対象が2つのクラスになっちゃってます。 iOSエンジニアは75%のはず!
9.
きちんとユニットテストするなら ①テスト用に継承したダミークラスを用意する。例えば… ・DummyIOsEmployee:必ずiOSエンジニア ・DummyNotIOsEmployee: 必ずiOSエンジニアではない ! ②モックライブラリを使う
10.
きちんとユニットテストするなら ると りす ①テスト用に継承したダミークラスを用意する。例えば… った 多か ・DummyIOsEmployee:必ずiOSエンジニア ドが ッ !! メソ 大変 必ずiOSエンジニアではない ・DummyNotIOsEmployee: ! ②モックライブラリを使う
11.
モックライブラリ
12.
cocoapodsなどで導入
13.
できること 返却値を固定!
14.
できること メソッドが呼び出されたかどうかをテスト!
15.
できること クラスメソッドを置き換え!
16.
できること 一部分だけモック化!
17.
具体的にはいつ使うの? ●基本的にはどんなときでも使えます! →オブジェクトは関連しあって動作しているはず →但し、依存関係やクラスの責務が無茶苦茶だと かなり無理があります。設計から見直しましょう。 →View層もテストするか、などはそれぞれの判断が あるでしょう ●ファイル入出力やHTTPリクエストの時は 特に効果絶大!!
18.
その他のモックライブラリ OCMockito LRMocky 使ったことないので詳細は知りません…
19.
Thank you!! きちんとユニットテストしましょう!
Download now