Slide 1

Slide 1 text

モバイルE2Eテストを継続・改善させるために 取り組むKarakuri Nemoto Tadashi Test Engineers Meetup #3

Slide 2

Slide 2 text

自己紹介 • 根本 征(Nemoto Tadashi) • Automation & QA (AQA) Group • テスト自動化 • Selenium, Appium, XCUITest, Espresso • モバイルCI / CD改善 • 社内の生産性を上げるための自動化・サポート • https://seleck.cc/1230 • 自称 Zapierエバンジェリスト

Slide 3

Slide 3 text

Automation & QA Group

Slide 4

Slide 4 text

モバイルテスティング

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

AndroidのCI時間を10分短縮し、 開発を爆速にするためのKarakuriを作った話 https://tech.mercari.com/entry/2018/07/04/110000 Android CI CircleCI 2.0

Slide 7

Slide 7 text

Android CI Danger Codecov AndroidのCI時間を10分短縮し、 開発を爆速にするためのKarakuriを作った話 https://tech.mercari.com/entry/2018/07/04/110000

Slide 8

Slide 8 text

エンジニアと一緒にテスト書いたり

Slide 9

Slide 9 text

No content

Slide 10

Slide 10 text

E2Eテスト(特にモバイル)は メンテナンスコストが高い 不安定

Slide 11

Slide 11 text

QAと一緒にE2Eテスト自動化を推進し 1年以上メンテナンス・改善をしている

Slide 12

Slide 12 text

なぜQAとなのか • QAとエンジニアで確認・テストしたいことは違う • テストの不安定さ < 自分たちの作業の一部自動化 • スキルアップへのモチベーション

Slide 13

Slide 13 text

3つのポイント・改善 • 実行環境を用意・安定化 • テストレポートを充実させる • 調査・メンテナンスできる人を増やす

Slide 14

Slide 14 text

実行環境を用意・安定化

Slide 15

Slide 15 text

Android apkビルド Google Cloud Storage

Slide 16

Slide 16 text

Android

Slide 17

Slide 17 text

Android クラウド実行環境 Others デバイス

Slide 18

Slide 18 text

iOS iOS Simulator メルカリiOSのUIテスト自動化をま るっとご紹介します! https://tech.mercari.com/entr y/2018/08/07/123000

Slide 19

Slide 19 text

テストレポートを充実させる

Slide 20

Slide 20 text

マスター タイトルの書式設定 • マスター テキストの書式設定 Android(github.com/vbanthia/rspec_html_reporter)

Slide 21

Slide 21 text

マスター タイトルの書式設定 • マスター テキストの書式設定 Android(github.com/vbanthia/rspec_html_reporter)

Slide 22

Slide 22 text

マスター タイトルの書式設定 • マスター テキストの書式設定 Android(github.com/vbanthia/rspec_html_reporter)

Slide 23

Slide 23 text

iOS(XCTestHTMLReport) メルカリiOSのUIテスト自動化をま るっとご紹介します! https://tech.mercari.com/entr y/2018/08/07/123000

Slide 24

Slide 24 text

調査・メンテナンスできる人を増やす

Slide 25

Slide 25 text

QAとの協業 自動化エンジニア QA ● 実行結果の確認・フィードバック ● テストシナリオ作成・更新 ● 一部スクリプト修正 ● テストスクリプトの実装・修正 ● 実行環境の構築・整備 ● ライブラリの作成

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

次のステップ 自動化エンジニア QA ● 実行結果の確認・フィードバック ● テストシナリオ作成・更新 ● テストスクリプトの実装・修正 ● テストスクリプトの実装・修正 ● 実行環境の構築・整備 ● ライブラリの作成

Slide 28

Slide 28 text

Appium + RSpec + Turnip (Android) 自動化エンジニア QA ● 実装しているシナリオの理解 ● 新規シナリオの作成 ● 既存シナリオの修正 ● Stepの作成 ● サンプルのシナリオを提供 ● シナリオを書くためのサポート

Slide 29

Slide 29 text

github.com/tadashi0713/table_beet2

Slide 30

Slide 30 text

QAがシナリオを書くためのサポート

Slide 31

Slide 31 text

3つのポイント・改善 • 実行環境を用意・安定化 • テストレポートを充実させる • 調査・メンテナンスできる人を増やす + Automation, Karakuriしていく文化

Slide 32

Slide 32 text

エンジニアの行動指針 Automation, Karakuri

Slide 33

Slide 33 text

Automation (自動化) 本来すべきこと(コード・設計) に集中するため 機械になるべくやらせて、効率化させる 2度以上行なった作業は自動化の対象

Slide 34

Slide 34 text

Karakuri (仕組み化) 問題が起きた時、気合いではなく、 人的エラーが起きない仕組みで解決する

Slide 35

Slide 35 text

Automation, Karakuriしていく文化

Slide 36

Slide 36 text

一発でパーフェクトなE2Eテストは作れない 自発的・継続的に Automation, Karakuriしていく文化