Slide 1

Slide 1 text

KotlinでE2Eテストを 書いてみないか 2022/12/12 Kotlin Fest Reject Conference 2022 1

Slide 2

Slide 2 text

● 竹原 基広 @m_takehara ● 株式会社ユーザベース ● ソフトウェアエンジニア 2 自己紹介

Slide 3

Slide 3 text

E2E テストとは (用語整理) Gauge で E2E テストを書いてみよう Gauge の便利機能の紹介 Gauge 取り扱い上の注意 01 02 03 04 3

Slide 4

Slide 4 text

| 01 | E2E テストとは (用語整理) 4

Slide 5

Slide 5 text

5 01: E2E テストとは (用語整理)

Slide 6

Slide 6 text

| 02 | Gauge で E2E テストを 書いてみよう 6

Slide 7

Slide 7 text

Gauge とは? ● https://gauge.org/ ● テスト自動化フレームワーク ● Java、JavaScript、Python、Ruby、C# に対応 7 02: Gauge で E2E テストを書いてみよう

Slide 8

Slide 8 text

Gauge とは? ● https://gauge.org/ ● テスト自動化フレームワーク ● Java、JavaScript、Python、Ruby、C# に対応 8 02: Gauge で E2E テストを書いてみよう Java で書けるなら Kotlin でも書けるじゃん!!

Slide 9

Slide 9 text

Gauge とは? ● 9 02: Gauge で E2E テストを書いてみよう

Slide 10

Slide 10 text

Gauge とは? ● 10 02: Gauge で E2E テストを書いてみよう

Slide 11

Slide 11 text

Gauge とは? ● 11 02: Gauge で E2E テストを書いてみよう

Slide 12

Slide 12 text

Gauge とは? 12 02: Gauge で E2E テストを書いてみよう

Slide 13

Slide 13 text

Gauge とは? 13 02: Gauge で E2E テストを書いてみよう

Slide 14

Slide 14 text

Gauge とは? ● 14 02: Gauge で E2E テストを書いてみよう

Slide 15

Slide 15 text

Gauge とは? ● 15 02: Gauge で E2E テストを書いてみよう 実際のコードを見てみましょう https://github.com/m-takehara/gauge-example

Slide 16

Slide 16 text

| 03 | Gauge の便利機能の紹介 16

Slide 17

Slide 17 text

テスト実行の前後に Setup / Teardown を挟める ● BeforeSuite ● BeforeScenario ● AfterScenario は結構よく使う印象 メソッド名はなんでもいい (@BeforeScenario だから beforeScenario にしないといけない、とかは無い) 17 03: Gauge の便利機能の紹介

Slide 18

Slide 18 text

シナリオに自由にタグ付けできる タグがついていると、 ● この @BeforeScenario は、このタグが付 いている場合のみ適用する、ということ ができる ● CI で全テストを実行する際などに、特定 のタグがついているテストは実行しない ようにできる 18 03: Gauge の便利機能の紹介

Slide 19

Slide 19 text

シナリオに自由にタグ付けできる タグがついていると、 ● この @BeforeScenario は、このタグが付 いている場合のみ適用する、ということ ができる ● CI で全テストを実行する際などに、特定 のタグがついているテストは実行しない ようにできる ● 「これいる?」「テストはあるけどまだ アプリが未実装」とかが分かりやすい 19 03: Gauge の便利機能の紹介

Slide 20

Slide 20 text

シナリオに自由にタグ付けできる タグがついていると、 ● この @BeforeScenario は、このタグが付 いている場合のみ適用する、ということ ができる ● CI で全テストを実行する際などに、特定 のタグがついているテストは実行しない ようにできる 20 03: Gauge の便利機能の紹介

Slide 21

Slide 21 text

外部ファイルの読み込みが簡単 21 03: Gauge の便利機能の紹介

Slide 22

Slide 22 text

| 04 | Gauge 取り扱い上の注意 22

Slide 23

Slide 23 text

Gauge のバージョンに気をつけること!! ● gauge (PC に直接インストールするやつ) ● gauge-java ($ gauge install java するやつ) ● gauge-maven-plugin (pom.xml に書いてあるやつ) これらのバージョンが一致してないと Gauge は動きません! とりあえず全部最新版を入れておけば問題ないですが、 gauge-java だけアプデ、とかはしないでください。 23 04: Gauge 取り扱い上の注意

Slide 24

Slide 24 text

最後までご清聴ありがとうございました。 Thank you 24