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
mockito-kotlin
Search
Keisuke Kobayashi
December 15, 2017
Programming
1
490
mockito-kotlin
Android Test Night #2
Keisuke Kobayashi
December 15, 2017
Tweet
Share
More Decks by Keisuke Kobayashi
See All by Keisuke Kobayashi
今日から始める依存性の注入 / First Time Dependency Injection
kobakei
26
7.1k
iOSアプリの技術的負債をどう返済したか / How to repay the technical debt of iOS app
kobakei
2
870
iOSアプリ内で不正なSSL証明書を検知する / SSL Pinning for iOS apps
kobakei
34
11k
Kyashアプリ開発の現場
kobakei
4
2.6k
Review of Google I/O 2017 & Prepare for Google I/O 2018
kobakei
0
300
APIクライアントをCodableで置き換えた話
kobakei
0
1.4k
開発者が知っておきたい通知の歴史
kobakei
10
7.3k
2017年に新規アプリを立ち上げた話
kobakei
2
1k
Everything of CI/CD in Kyash Android
kobakei
0
1.5k
Other Decks in Programming
See All in Programming
CSC307 Lecture 11
javiergs
PRO
0
240
「2024年版 Kotlin サーバーサイドプログラミング実践開発」の補講 〜O/Rマッパー編〜
n_takehata
2
260
Prompt FlowによるLLMアプリケーション開発
yuto2000
1
1k
Product Management LT会_クアンド新家
shinshin
0
210
Play Billing Library 7.0.0 変更点まとめ@potatotips#88
kako351
0
160
さきがけから振り返るアーキテクチャ刷新 / Reflecting on the Architectural Renewal from the Vanguard
nrslib
2
770
SRE チーム立ち上げ前に考えたこと・取り組んだこと / Considerations and Preparations Before Establishing an SRE Team
mackey0225
3
320
初心者がおさえておきたいAWS CDKのベストプラクティス 2024
konokenj
15
7.3k
Rubyのパフォーマンスプロファイリングの改善 / Enhancing performance profiling for Ruby
osyoyu
1
410
APIのない大学ログインWebサービスをWKWebViewとJavaScriptでアプリ化した話
akidon0000
1
330
開発部に不満を持っていたCSがエンジニアにジョブチェンしてわかった「勝手に諦めない」ことの大切さ
sakuraikotone
28
16k
【Go言語】ジェネリクス
tomo1227
0
170
Featured
See All Featured
Making Projects Easy
brettharned
111
5.7k
Into the Great Unknown - MozCon
thekraken
20
1.3k
Building Flexible Design Systems
yeseniaperezcruz
323
37k
What's new in Ruby 2.0
geeforr
338
31k
For a Future-Friendly Web
brad_frost
173
9.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
16
1.6k
Designing on Purpose - Digital PM Summit 2013
jponch
113
6.6k
The World Runs on Bad Software
bkeepers
PRO
63
11k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
Writing Fast Ruby
sferik
623
60k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
Transcript
mockito-kotlin Keisuke Kobayashi Android Test Night #2
About Me • Keisuke Kobayashi • GitHub, QIita: kobakei •
Twitter: kobakei122 • Kyash, Inc • ݸਓࣄۀओ
mockito-kotlin͍͍ͧ
mockito-kotlin • KotlinͰMockitoΛ͏ͨΊͷϥΠϒϥϦ • https://github.com/nhaarman/mockito-kotlin • ˒800 over
Ͳ͕͍͍͔͜ • ϞοΫ͕ݟ͘͢ͳΔ • Null҆શରԠ • άϩʔόϧؔͷՃ • whenରԠ
Mockito in Java // Java import static org.mockito.Mockito.*; Hoge mock
= mock(Hoge.class); when(mock.sayHello()).thenReturn("Hello"); when(mock.sayBye()).thenReturn("Bye");
Convert to Kotlin // Kotlin import org.mockito.Mockito.* val mock =
mock(Hoge::class.java) `when`(mock.sayHello()).thenReturn("Hello") `when`(mock.sayBye()).thenReturn("Bye")
mockito-kotlin // Kotlin import com.nhaarman.mockito_kotlin.* val mock = mock<Hoge> {
on { sayHello() } doReturn "Hello" on { sayBye() } doReturn "Bye" }
ݟ͍͢
Null҆શରԠ • Null҆શͷ͍ͤͰɺMockitoͷanyͰNPE • NonNullͳҾʹanyΛ͢ͱൃੜ • anyͱanyOrNull
άϩʔόϧؔ • any, anyOrNull • atLeast, only, never • verify
• whenever
when • Mockitoͷwhenϝιου • Kotlinͷwhen༧ޠ • `when`ͱॻ͔͘͠ແ͍ • mockito-kotlinͰΘΓʹwheneveron͕ ͑Δ
mockito-kotlin͍͍ͧ
Thanks!