はじめまして。いわもんです。
先日開催されたJaSST’22 Tohokuに参加してきました。
本記事はそのイベントレポートとして、講演内容を簡単にまとめたものになります。
JaSSTやテスト自動化に興味を持つきっかけになれば幸いです。

JaSSTとは

NPO法人ASTER(ソフトウェアテスト技術振興協会)が主催する、国内最大級のソフトウェアテストシンポジウムです。
JaSST’22 Tohokuは「テスト自動化その前に ~テスト自動化アンチパターン~」というテーマのもと開催され、テスト自動化の導入や運用に興味・課題がある方に向けた講演とワークショップが用意されています。
公式ページ

当日の様子

オンサイトとオンラインのハイブリッド開催となっており、私はオンラインで参加しました。
オンラインでは、Discordでチャット交流や資料共有が行われ、Zoomで講演映像が放送される仕組みでした。
Discordには質問や雑談チャンネルなどがあり、チャット上で様々な質問や議論が飛び交っていました。
※残念ながら、録音録画の行為は禁止されているため、本記事に資料の添付はありません。

スコープ

本記事では、特に興味深かった以下のセッションについてまとめました。
・基調講演
・事例紹介
・招待講演

基調講演

講師:松尾 さん(HeadSpin, Inc)
テーマ :
「テスト自動化に取り組むにあたり」

テスト自動化のモデル

-理想形として「テストピラミッド」モデルを目指す
-テストピラミッドとは
 ・特にWebとモバイルで扱われる
 ・テストの階層と量を視覚的に示したもの
 ・ピラミッドの上ほど「大局的で実行速度が遅く高コスト」
 ・ピラミッドの下ほど「局所的で実行速度が早く低コスト」
 ・Android公式ドキュメント
-テスト自動化を進めるときはピラミッドの下から順に取り組むのが理想

テスト自動化の範囲と実行速度

-テストピラミッドのようにテスト範囲を分けることで多重的な不具合検知が可能
-さながらスイスチーズモデルのよう(リスクマネジメントモデルとして紹介)
-テスト範囲を狭めることで「原因特定がしやすく」「実行時間が短縮できる」

これから自動化を学んでいくために

-モチベーションが重要で、関係・興味のある技術を選択する
-社内で助けを得ることが可能な技術を選択する
-OSSを活用する
-公式ドキュメントから始める

所感
初学者向けの内容で、伝わりやすいように抽象的な説明でした。
テスト自動化ツールの「Appium」でモバイルのGUI操作の自動化を実演しながら、テストピラミッドの解説をされ分かりやすかったです。
テスト範囲を狭めて、易しい自動化の積み重ねが、全体の自動化の成功に繋がるのだと学びました。

事例紹介

講師:江村 さん(楽天)
テーマ:
「テスト自動化導入後の課題の改善ビフォーアフター(仮)
 テスト自動化は導入後が大変」

内容
講演資料が公開されてますので、内容はそちらをご確認ください。(本記事では割愛)
https://qiita.com/emurin/items/517418f72e124f5e34b0

講師:橋本 さん(LINE Fukuoka)
テーマ:
「リグレッションテストをほぼ100%自動化した世界
 これでもテスト自動化を後回しにしますか?」

前提

-ノーコードのテスト自動化ツール「MagicPod」で回帰テストの自動化に成功した

テスト自動化に挑戦してほしい

-成功事例もあることを知ってほしい
-回帰テストの実行頻度が増し、回帰テスト自動化の必要性が高まっている
-コードのテスト自動化ツールなどによりハードルが下がっている

テスト自動化の目的達成までに実施したこと
1. 自動化ツールのトライアル

-既に契約済みだった「MagicPod」を対象にトライアルを実施
-目的達成に問題がなさそうだったのでこのツールに決定した

2. 現状の作業内容を見つめなおす

-テスト自動化の時間を作るために現状作業を見直した
-目的が無いテストや優先度の低いテストの時間を削減した

3. 実行環境の設計・構築
4. 自動化するテストの優先度を決める
5. テストケースを自動テスト用に書き換える

-曖昧な確認内容を、ツールが判定できるように書き換えた
-例:「ホーム画面が表示されること」→「URLが〇〇であること」

6. テスト自動化

-「MagicPod」を用いて自動化した
-ノーコードのおかげですんなり実装できた

7. 週1リリースの開発プロセス検討

-プルリクエスト毎に手動で機能テスト、自動で回帰テストするようにした
-自動テストのテストを絶対にすること(予期せぬ動作を起こさないため)

講師:二河 さん (Mobility Technologies)
テーマ:
「初めての自動化導入は慎重に、計画的に
 失敗ケースの山から学ぶ楽な歩き方」

前提

-リソース不足でリグレッションテストが不十分だったため自動化に至った
-ノーコードのテスト自動化ツール「Autify」を試してみた

未経験からくる漠然とした不安=心理的な壁があった

-心理的な壁の具体的な原因を探った
-原因に対するアプローチを考えた

原因と実施したアプローチ
原因①:どう自動化していけばいいか
アプローチ①:

-小さな一歩から試す
-テストに拘らず、身近な作業から自動化に挑戦した→テスト環境構築を自動化した

原因②:先任者がおらずノウハウがない
アプローチ②:

-過去の失敗から学ぶ(アンチパターンの研究)
-未計画で見切り発車することで失敗していそう
-「なにを」「どこまで」テストしないといけないか、自動化が実現可能か調査した
 ・自動化すべきポイント(カバレッジ範囲とマイルストーン)が見えてきた

原因③:コーディングスキルなどの技術不足による漠然とした不安
アプローチ③:

-ツールベンダーを活用した
-スニペット(サンプルコード)を活用した
-コードに慣れてくるにつれ苦手意識はなくなった

所感(事例紹介全体)
自動化することが目的ではなく、得られる効果を目的とされているから運用できているというのがよく伝わりました。
テスト自動化したが運用コストが高く本末転倒になってしまわないためへの取り組みが必要なのだと学びました。
また未経験から来る漠然とした不安にはとても共感できました。
不安解消に向けてのアプローチや、ハードルを下げて苦手意識を無くす工夫は、今後の学習に取り入れたいと感じました。

招待講演

講師:井芹 さん(トヨタ自動車 テストチームテックリード)
テーマ:
「テスト自動化の成功を支えるためのチームと仕組み」

内容
講演資料が公開されてますので、内容はそちらをご確認ください。(本記事では割愛)
https://speakerdeck.com/goyoki/success-factors-for-test-automation

所感
高次元な内容を、分かりやすく説明されていて濃密なインプットになりました。
全てを理解し実践できればテスト自動化は失敗しないことが感覚的に伝わりました。
初学者の私の身に余る内容でしたので、興味のある方はぜひ上記リンクから原文をご一読ください。

まとめ

このようなイベントに参加するのは初めてでしたが、造詣のある方々から話を聞くのは非常に刺激的で貴重な体験でした。
今後の業務で活かせるよう励みたいと思います。

SHARE

  • facebook
  • twitter

SQRIPTER

AGEST Engineers

AGEST

記事一覧

AGESTのエンジニアが情報発信してます!
AGESTのサービスやソリューションのお問い合わせページはこちらです。

株式会社AGEST

Sqriptsはシステム開発における品質(Quality)を中心に、エンジニアが”理解しやすい”Scriptに変換して情報発信するメディアです

  • 新規登録/ログイン
  • 株式会社AGEST