SODA Engineering Blog
🚋

[E2Eテスト自動化]自動化の途中駅と終点

2024/05/31に公開

こんにちは。SODAでQAエンジニアをやっているokauchiです。最近のテスト自動化での気づきをメモがてら紹介します!

深い階層にある画面のテストシナリオどう作る?

[今までのテストシナリオの作り方]
・ログインのテストシナリオを作成する、ログイン直後TOPページが表示されていることを確認する
・ログインのテストシナリオを複製して、別のシナリオを作る(ログインは前提条件)

今までこの作り方をしていて、何も疑問に思わなかったのですが、最近は必ずしも複製元シナリオのAssertionを踏襲しなくても良いなと思えるようになりました。Assertionを踏襲するとどうなるかと言うと?

[メリット]
・最終的な確認画面(終点)に至るまでの動線での異常を検出出来る

[デメリット]
・テストシナリオを一括実行した時にシナリオは別だが、同じAssertionが何度も実行されてしまう
 (これによるAssertion重複による一括実行時間の増加、テストの価値低下)
・終点にたどり着く為に導線上の画面(途中駅)で1つでも問題があると、終点にたどり着かずテストが失敗してしまう

目の前のシナリオ作りの楽さと価値のバランス

そのテストシナリオで実現したいことで終点まで画面操作をして導線をなぞって終点にたどり着いて確認することが目的であるなら、途中駅でのトラブルは導線となるボタンやリンクが表示されないか以外で止まってほしくないはず。ただただ楽だという理由で既存のシナリオをコピーしてそれより深い階層にある画面のテストシナリオを作ると運用で失敗しそうだなと思ったのでメモ。目的にあわせてテストシナリオを作らないといけないですね。本当に1画面だけを見たいのなら、URL指定していきなり画面遷移しても良いわけですし。

実行時間や実行ステップ数によって課金がされたりするテスト自動化ツールも多いですし、そもそもテストはより速く完了する方がうれしい。目先のシナリオの作りやすさだけに頼ったらいけないなーと勉強になりました。

SODA Engineering Blog
SODA Engineering Blog

Discussion