SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

「Appium Conf 2019」レポート

安定・スケールするAppiumテストを実現するための、最先端のモバイルテスト環境と戦略とは【Appium Conf 2019】

Appium Conf 2019参加レポート 第3回

  • このエントリーをはてなブックマークに追加

 6月14日から15日にかけて、インド・バンガロールでAppium Conf 2019が開催されました。300人を超える自動化エンジニア、QAエンジニアが集い、Appiumを活用した自動テストを中心に30以上ものセッションが行われました。今回は主にAppiumをはじめとしたモバイルテストを実行させるテスト環境についてのセッションをまとめて紹介します。

  • このエントリーをはてなブックマークに追加

Appiumをはじめとしたモバイルテストを安定・高速化させる重要性

 Appiumは実際に対象アプリを動かすため、主にモバイルアプリのE2E UIテストとして用いられます。

 テストピラミッドからも分かる通り、E2E UIテストは以下の特徴があります。

  • 実行時間がかかりやすい
  • 環境要因などで不安定(Freaky)になりがち
  • すべてを結合させた上でテストをするため、テストの忠実度は高い
「Test Pyramid」(Martin Fowler)より引用

「Test Pyramid」(Martin Fowler)より引用

 そのため、適切なサイズのE2E UIテストをいかにして安定・高速に動かすことができるかが重要になってきます。

 今回のAppiumConfでも、AppiumをメインにE2E UIテストを安定・高速で実行できる環境に関するセッションがいくつかありました。

安定した複数のブラウザ・モバイルテスト環境を作るためには

 Diego Molina氏による「Building a Mobile Testing Infracture: What I Learned」では、彼がブラウザ・モバイルテスト環境を作る中で得た学びやTipsを紹介していました。

 セッションでは、安定したテスト環境を提供するためには下記のポイントが重要だと主張していました。

  • 独立性(Docker, Virtual Box, QEMU)
  • Infrastructure as Code(Puppet, Ansible, Chef)
  • パフォーマンスモニタリング(Prometheus)

 テスト環境起因による不安定を減らし、安定的にテストを動かすためには、テスト環境にも本番アプリケーションと同レベルの環境を提供すべきという点でついては私も共感しました。

 また、そのテスト環境のスコープ・戦略をよく考える必要があるとも主張していました。

 例えば実機デバイスを使ったテスト環境の場合、簡単にスケールしたりクリーンな状態にするのは難しく、メンテナンスコストも高くなりがちです。そのテスト環境でWeb画面のレスポンシブだけを確認するのはコストパフォーマンスに見合いません。提供するテスト環境ではどういうテストを実行させたいのか、それは他のプラットフォーム(今回だとエミュレーターなど)でも代替できないかなどを十分に検討する必要があると主張していました。

 Diego Molina氏はSauceLabsというブラウザ・モバイルのクラウドテスト環境を提供するサービスのエンジニアのため、ブラウザ・モバイルテスト環境に関する豊富な知見がありました。セッションでも、それぞれのブラウザ・モバイルOSなどでどのようにテスト環境を作ればよいか解説してあり、現場でも活用していきたいと思います。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
Genymotion CloudとMacStadiumを利用したクラウド環境でのAppiumテストの並列実行

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
「Appium Conf 2019」レポート連載記事一覧

もっと読む

この記事の著者

根本 征(株式会社メルカリ)(ネモト タダシ)

株式会社メルカリ Automation & QA グループ(通称:AQA)自動化エンジニア。2016年4月に新卒でメルカリに入社。QAエンジニアと共にモバイルをメインとしたUIテスト自動化を推進していく傍、モバイル CI / CD改善や社内の生産性を上げるための自動化・サポートを行なっている。GitHub:https://github.com/tadashi0713

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/11609 2019/07/17 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング