こんにちは。QAエンジニアをしているうえやまです。現在、アジャイルQAとして日々業務を行っています。
7/25に開催された、「AGEST・Autifyの導入事例から考える、アジャイル開発に最適化したQA組織とテスト設計」にオンライン参加してきました。私自身アジャイル開発の現場で自動テストの作成に携わっていることもあり、内容をレポートしたいと思います。
セミナー概要
AGEST・Autifyの導入事例から考える、アジャイル開発に最適化したQA組織とテスト設計
普段様々な組織の品質保証部門の方とやり取りをしているAGESTとAutifyが実際に感じているトレンドの変化や、テスト自動化を軌道にのせる段階、のせた後にお客様が直面する課題やそれを克服した事例など、幅広くパネルディスカッション形式でお話しして下さいました。
テスト自動化プラットフォーム・Autifyの説明もあるので、興味がある方は一読ください。
【登壇者】
備後 宏美(びんご ひろみ)さん
株式会社AGEST QA事業本部 アドバンスドテストソリューション部 テストオートメーショングループ グループ長
堀 明子(ほり めいこ)さん
オーティファイ株式会社 カスタマーリライアビリティエンジニア
テスト自動化を成功させるための3つのポイント
AGESTのテストオートメーショングループ グループ長 備後さんが解説して下さいました。詳しい資料はSqriptsの以下からダウンロードできますが、ここでは学びになったことをかいつまんで記載します。
1.目的を正しく定めよう
- テスト自動化がもたらす効果が、設定されるべき正しい目的になる
- 目的は、その後のツールの選定やテスト範囲の選定にも影響を与える非常に重要なポイントになる
- 過度な期待は失敗のもとになるため、目的の優先度付けをする
なんとなく自動化を始めてしまいそうですが、最初の目的設定が肝心ですね。
2.ツールを正しく選ぼう
- まずはテスト対象で絞る
→Webサイト、スマホネイティブアプリ、デスクトップアプリケーション など - 必要なスキルレベルを考える
→長期的にメンテナンスしていくことを見据え、自社内で安定供給できるスキルレベルにあわせたツール選定を行う - テスト対象、継続運用のための必要スキルで絞る
→有償ツールやソフトウェアを使う場合、コストの見極めも必要になる。
膨大にあるツールの中からどのように最適なツールを選べば良いのか迷いますが、今後自動化ツールを選ぶ際の参考になりそうです。
3.小さく適用しよう
- 最初に広範囲の自動化をゴールとするのではなく、小規模なゴール設定をして進めていく
- 一度運用にのせることで様々な課題が出てくるので、課題の優先度付けをして改善活動を進めていく(1サイクル目は課題抽出と割り切ってOK)
まずは小さく運用してみることが、自動化の第一歩になるのですね。
Autifyの特長と説明
Autifyのカスタマーリライアビリティエンジニア 堀さんが実演しながら説明して下さいました。まずは3つの特徴として以下を挙げていました。
アジャイル開発のための、ソフトウェアテスト自動化プラットフォーム「Autify」
- ノーコードで誰でも高速に自動テスト構築・運用できる
- AIが変化を検知 メンテナンスコストを削減
- カスタマーサービスによる伴走
アプリが変化するとテストツールが追従できなくて落ちる、ということがありますがAIが変化を検知してくれるのは嬉しいですね。ビジュアル的な変化も検知し、前回の成功時との比較画像にハイライトが出るようです。AIの機能に関しては、今は詳しく言えないとのことですが今後リリースの新機能もあるとのこと。
また、Autifyで簡単にできることとして3つ挙げていました。
1.テストシナリオの作成
実演で見せていただきましたが、以下のような流れでした。
テストしたい画面を開く → レコーディングしながらケース化したい操作(クリック、入力など)を行う→ 期待値を登録する → 一連の操作がそのままテストケース化される
↓テストケース化されたもの
テストシナリオは1行ずつ書いていくイメージでしたが、Autifyでは簡単な操作ならかなり短い時間でケース化出来そうです。
2.マルチOS/ブラウザテスト
モバイルブラウザ含め複数環境で同じシナリオを回せるので、複数環境でのテストが必要なアプリにはとても便利な機能です。
3.テストシナリオ・結果の一元管理
ダッシュボードが簡単に作れるとのことで、開発や他のQAメンバーとテスト結果の傾向を分析するのに便利そうです。
実際のツール、エビデンスの出し方を見せて貰えると想像がつきやすく、Autifyの特徴を学べました。
実際に顧客と向き合っている中で感じるQA組織や開発組織の変化(コミュニケーション、テスト設計など)
最後に、登壇者のお二人がQA組織や開発組織の変化についてパネルディルカッションを行いました。質疑応答も含めたくさんのやりとりがありましたが、テーマに沿った一部を紹介します。
Q.昨今アジャイルが増えているが、早い段階からQAが入れるようになったことによるテスト設計の変化は?
A.「スプリントでは探索ベースのテストを行い、その中でリグレッション出来るものは自動化にし、小さく増やしていくと良さそう。最初から自動化を強いるのではなく確実に変わらないところを作ることが大事。浮いた時間を探索テストに充てることも出来る。」
Q.自動化に向いているテストは?
A.データ駆動で同じテストを何パターンか回すようなもの。必ず通るところや重要な機能から作っていく方が無駄になりにくい。開発と同様共通パーツを作って、メンテナンスしやすくすることが大切。
また、QAだけでなく開発含めたチーム全体で品質に対する責任を負うことが重要だと話されているのが印象的でした。様々な自動化導入事例を見てきた中で上手くいっているチームの特徴もそのようなチームが多いとのことで、開発・QA一体となってテスト自動化を進めることの大切さがわかりました。
まとめ
今回はアジャイル・自動化に特化した内容で、限られた時間の中でも学びの多いセミナーでした。自動化の運用において「多くの課題が出ることは当然で、課題の優先度付けをして改善活動を進めていけば良いだけ」という言葉から、課題に対して前向きな気持ちになれました。
また、「出来るだけ自動化したい」と「実装・メンテナスコストが掛かる」の間で自動化する範囲に悩むことは度々あるので、「データ駆動で回せるようなテスト」「必ず通すところや重要なところ」という基準を意識して今後自動化する範囲を考えていけたらと思います。
最後まで読んで頂き、ありがとうございました。