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でテストコードを書く
Search
bvlion
December 09, 2016
Programming
1
780
Kotlinでテストコードを書く
Espressoを試してみたお話
bvlion
December 09, 2016
Tweet
Share
More Decks by bvlion
See All by bvlion
Java8のStreamとLambdaの関係
iwaisatoshi
0
140
View周りで後悔しない実装
iwaisatoshi
0
280
それは本当にRailsでないとダメですか?
iwaisatoshi
0
330
Other Decks in Programming
See All in Programming
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
1.6k
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
390
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.5k
CSC307 Lecture 10
javiergs
PRO
1
660
dchart: charts from deck markup
ajstarks
3
1k
そのAIレビュー、レビューしてますか? / Are you reviewing those AI reviews?
rkaga
6
4.6k
AgentCoreとHuman in the Loop
har1101
5
240
Apache Iceberg V3 and migration to V3
tomtanaka
0
170
CSC307 Lecture 01
javiergs
PRO
0
690
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
310
CSC307 Lecture 05
javiergs
PRO
0
500
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
110
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
440
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
What does AI have to do with Human Rights?
axbom
PRO
0
2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
30 Presentation Tips
portentint
PRO
1
220
A Tale of Four Properties
chriscoyier
162
24k
The SEO Collaboration Effect
kristinabergwall1
0
350
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
It's Worth the Effort
3n
188
29k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Visualization
eitanlees
150
17k
Transcript
Kotlinでテストコードを書く @Retty Tech Cafe #8 岩井 大志
自己紹介 名前 ・岩井 大志(Iwai Satoshi) SE@株式会社インタースペース 高卒エンジニア(´・ω・`) 個人の活動 ・Twitter @ninjinx
・メモサイト https://bvlion-apps.appspot.com/ ※ ブログ移転中です…
今日のお題 ⇨ Kotlinでテスト
Kotlinでテスト??
こちらを思い浮かべた方…
ご安心下さい<(_ _)>
Androidでテストと言えば… ・Local Unit Test ・Instrumented Unit Test と、あるかと思います。
Androidでテストと言えば… ・Local Unit Test ・Instrumented Unit Test と、あるかと思います。↑ 今日はこっちのお話をさせていただきます<(_ _)>
話は少し前に遡りますが… 以前、Kotlinの勉強会にて 「AndroidへのKotlinの導入は、テストコードからがいいんじゃないか?」 というお話がありました。 Unitテストに関しては松田さんがLTして下さっていたので、 androidTest側についてお話させて頂ければと思った次第です<(_ _)>
自作の物凄く下らないアプリを使います。 https://bitbucket.org/bvlion/instrumentedunittest4kotlin 入力エリアに文字を入れて、固定文字列と 合っているかを確認するという、情けないアプリです。。。 30分ちょっとで作ったいい加減なアプリなので コードに関してはサンプルだと思って多目に見て下さい(>_<)
まずは準備(・∀・) 早速、gradleの設定をしましょう!
まずは準備(・∀・) sourceSetsでkotlinディレクトリを設定 ここは共通!
まずは準備(・∀・) 今回はEspressoを使いたいと思います♪ dependenciesのandroidTestCompileにEspressoを設定します。
Espressoとは? 2013 年 10 月に Google が公開した Android 用の UI
テストフレームワークです。 基本的な操作(入力とか、クリックとか、スワイ プとか)を簡単に記述できて、かつ実機(エミュ レータ)で実際のテストを自動で行うことができ るツールです。 WEB で言うところのセレニウム的な感覚で捉 えております! Espresso
次はテストコードを書きます。 AndroidでのJavaの初期テストコードをそのままKotlinに移行
いざ!実行( `・ω・´)
None
おぉう… (´・ω・`)
@Ruleがpublicじゃないって 怒ってる??
こうすればどうだ! 無闇にpublicを付けてみる…
None
同じ… (´・ω・`)
ググってみた stack overflowで発見! (最近はQiitaにも載ってました。)
つまり、こういうことですね? @JvmFieldを設定しました。
今度こそ!!
通った(´∀`艸) 夜中に何やってんだよ…というお話はまた今度(^ω^;)
あとは実行コードを書いていくだけ Espressoはstaticメソッド祭りなので、あんまKotlin感はない…
実行すると、こんな感じに動きます! 動画にすれば分かりやすかったですかね…
まとめ ・UIテストもKotlinで問題なく書ける ・EspressoだとあんまKotlinの恩恵は受けられない… ・実はSpoonを実行しようとして躓いたのは秘密…
余談… Qiitaのアドベントカレンダーにて、Androidネタを投稿予定です。 「Espressoを導入してみて」的な内容の予定です。 14日に投稿予定ですので、興味がございましたらご覧下さい。 と言って、自身にプレッシャーをかけておく…
ありがとうございました!!