無題のプレゼンテーション

ソフトウェアテスト・QA勉強会【(仮)テスト自動化の光と闇(1年間の苦労話)】 に参加した

こちらに参加してきましたので感想まとめです。

久々に自分が登壇しない勉強会に参加しましたが、面白くかつ勉強になりましたので忘れぬうちにoutputしようと思います!

総じて感想

4セッションともに「テスト自動化によって何を成し遂げたいのか?」を明確にすべきという内容が含まれていたと思います。

今日の話はシナリオテスト自動化がメインの話で、あまり自分が実践できていない領域(特にSelenium)の話が多かったですが、エッセンスは掴む事ができたのではないかと思っています。

今後CI/CDを絡めた自動シナリオテストを導入する事も経験してみたいです。その時は自動化の目的をしっかり見定めるようにします。

発表1:「テスト自動化の光と闇」

(資料共有は無し)

テスト自動化に失敗された辛い体験談と、これを経験したから仕切り直して実現できた自動化の話でした。

まずは辛い体験談から。開発者として落涙を禁じえない状況でした。

問題1:そもそも自動化したテストの結果が信用に足るレベルに至らなかった。
問題2:運用コストを軽く見ていた。開発された自動テストがメンテされない。

これらにより、「テストが落ちても誰もレポートを読まない、自動化されているテストを手動で実施する」という状況になり、結果としてテスト自動化はプロジェクトとして頓挫。「やっと開放される」という感想で終わるプロジェクト、悲しすぎる...

しかしその後別に始まった自動化プロジェクトでは、深い知識を持つQAエンジニアがjoinした事もあって最終的に成功に終わったとのこと。

色々なTIPSがあったのですが、特に自動テスト運用ルールの話が印象的です。
失敗したらどうするのか? 誰が調査し、誰が修正し、場合によっては手動テストするのか、リリースはどうするのか? これを考えずに自動テストの運用を始められないと思いました。

発表2:「クロスブラウザテストの闇と闇と闇」

「今日はクロスブラウザテストを諦めて貰いにきました」

末村さんは冒頭からぶっこんできました。

Seleniumの話がメインで、実際に使った事がない私としては「な、ナルホド」と思うしかなかったのですが、Seleniumを使ったブラウザの自動テストはとてもとてもとても大変みたいです。

Seleniumのインストールは思っているよりずっと大変
Basic認証など、当然できるだろと思われてることが意外と大掛かりになる
同じテストシナリオがそのまま使えるとは限らない
(資料26ページから抜粋)

これらの仕様を十全に理解したテストエンジニアを雇おうと思えば、採用費だけで100万円オーバーもあり得る。

だから有償のテストサービスを使うのは一見お高く見えるが、実は圧倒的に安上がりなんだという話に帰着しました。

クロスブラウザテストを諦めて貰いにきた、というのは翻って(例えばAutifyのような)プロフェッショナルに任せろと言いに来たのだと思いますが、実際にそれだけの価値を感じるトークでした。熱く楽しいセッションでした。

発表3:「自動化立ち上げからの苦労話(闇)」

(実は仕事のSlack見ててあんまり聞けなかった。Qiita見れて良かった)

にじみ出る闇をサーチ&デストロイしている話でした。

各ステージにおいてどのようにテスト自動化の現実を現場に教え込むか。自動テストへの期待値が上がりすぎても下がりすぎてもいけないという所に苦心されていたようです。

導入前は「大変そう、自分達には無理」に見えますが、もし導入できたら「テストを全て代替できる銀の弾丸」に見えるのがテスト自動化です。どちらの気持ちも分かる。同じだもの。

この資料は自分が自動化を実践する時に最初にプロジェクトメンバーに共有しておくのが良さそうだ...

発表4:「しくじり先生~アジャイルテスト自動化立ち上げ迷走記~」

悲しすぎて泣きそうになったわ。

現地で聞いた悲しい話の印象が下手すると90%を占めかねないのですが、そうではなくそこから学びを抽出して、同じような悲しい出来事を起こさないようにしなければならないのです。

テスト自動化する目的、必要性
開始するタイミング
QAがやるのが最適なのか?

これらを意識せずに自動化プロジェクトを立ち上げて実践していっても破綻する、という話でした。

全体通して学び

テスト自動化の目的、必要性を意識すること。
自動化したら運用を意識すること。特に、テスト失敗時のリリースまでのフローを。
高度な知識が複数必要な領域では、外部有償サービスに頼る事も検討する。

ToDo

「ソフトウェアテスト293の鉄則」を読む。

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
6
サーバーサイドエンジニア。 技術ネタ以外も日々の学びの内容を徒然書きます。