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
Kotlinでもテスト書きたい #Android_Testing_BC
Search
Taro Nagasawa
June 22, 2016
Programming
1
850
Kotlinでもテスト書きたい #Android_Testing_BC
Android Testing Bootcamp #2 (
http://android-testing-bootcamp.connpass.com/event/31636/)で発表したスライドです
。
Taro Nagasawa
June 22, 2016
Tweet
Share
More Decks by Taro Nagasawa
See All by Taro Nagasawa
Android開発者のための Kotlin Multiplatform入門
ntaro
0
670
Kotlin 最新動向2022 #tfcon #techfeed
ntaro
1
2.2k
#Ubie 狂気の認知施策と選考設計
ntaro
13
13k
UbieにおけるサーバサイドKotlin活用事例
ntaro
1
1.1k
KotlinでSpring 完全理解ガイド #jsug
ntaro
6
3.4k
Kotlinでサーバサイドを始めよう!
ntaro
1
980
Androidからサーバーサイドまで!プログラミング言語 Kotlinの魅力 #devboost
ntaro
5
2.7k
Kotlin Contracts #m3kt
ntaro
4
4.1k
How_to_Test_Server-side_Kotlin.pdf
ntaro
1
500
Other Decks in Programming
See All in Programming
Go1.25からのGOMAXPROCS
kuro_kurorrr
0
230
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
160
Bytecode Manipulation 으로 생산성 높이기
bigstark
1
310
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
2
540
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
10
1.8k
Create a website using Spatial Web
akkeylab
0
280
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
350
PT AI без купюр
v0lka
0
230
TypeScript LSP の今までとこれから
quramy
1
500
Passkeys for Java Developers
ynojima
3
850
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
2
140
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
17
4.3k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Statistics for Hackers
jakevdp
799
220k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.8k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
150
RailsConf 2023
tenderlove
30
1.1k
Become a Pro
speakerdeck
PRO
28
5.4k
Site-Speed That Sticks
csswizardry
10
630
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Transcript
Kotlinでもテスト書きたい 2016-06-09 Android Testing Bootcamp #2 @ngsw_taro
Kotlin • JetBrains開発のJVM言語 • 2011年7月に登場、2016年2月に正式リリース • Android開発にも使えて最近注目を集めている
まとめ • knit: JUnitをKotlinらしく使えるよ! • kmockito: MockitoをKotlinらしく使えるよ! • kaptAndroidTest: テストでkapt使えるよ!
自己紹介 • たろー @ngsw_taro • プログラマー@エムスリー株式会社 ◦ Android, Kotlin, Java,
Scala, Rubyなど • Kotlinエバンジェリスト(JetBrains黙認) ◦ 日本Kotlinユーザグループ代表 ◦ Kotlinスタートブック 夏に発売! • やすべえとディズニーが好き
1. knitを使う
KotlinでJUnitする // JUnit assertThat(actual, `is`(expected))
KotlinでJUnitする // JUnit assertThat(actual, `is`(expected)) ダサい
knit(ニット)を作った • JUnitの薄いラッパー • 今すぐダウンロード github.com/ntaro/knit
knitを使うと // knit actual.should be expected
やってることは単純 actual.should be expected assertThat(actual, `is`(expected))
2. kmockitoを使う
KotlinでMockitoする // Mokcito val repository = mock(Repository::class.java) `when`(repository.findAll()) .thenReturn(users)
KotlinでMockitoする // Mokcito val repository = mock(Repository::class.java) `when`(repository.findAll()) .thenReturn(users) ダサい
ダサい
kmockito by @sys1yagi • Mockitoラッパー • 今すぐダウンロード github.com/sys1yagi/kmockito
kmockitoを使うと // Mokcito val repository = mock<Repository>() repository.findAll().invoked .thenReturn(users)
3. kaptAndroidTestを使う
kapt // product kapt 'com.google.dagger:dagger-compiler:2.4' // test kaptAndroidTest 'com.google.dagger:dagger-compiler:2.4' •
KotlinでAnnotation Processingするためのツール • Dagger2とか
おまけ
予約語エスケープ、テストで便利だった class `be - expected` { @Test fun `does nothing
when target equals expected`() { sut be java.lang.String("Kotlin").toString() } @Test(expected = AssertionError::class) fun `throws error when target does not equal expected`() { sut be "kotlin" } }
まとめ • knit: JUnitをKotlinらしく使えるよ! • kmockito: MockitoをKotlinらしく使えるよ! • kaptAndroidTest: テストでkapt使えるよ!
ご清聴 ありがとうごじました