2023/03/31 アサーションに便利なオプションが追加されました

アプリケーションのテストでは、機能ごとに検証の優先度は異なります。たとえば、フォームのラベル属性がすべて正しいかどうかの検証よりも、ログインや支払いなどアプリの中核機能の検証のほうが優先度が高いのは明らかです。
このような、テスト内での検証の優先度に対応するため、ソフトアサーションに「Fail at end of test」オプションを新たに追加しました。
[Fail at end of test] オプションを使用すると、テストの実行を停止することなく、要素のラベルやスタイルなど非機能的部分についてのアサーションを行うことができます。

An assertion marked "Fail at end of test"

An assertion marked "Fail at end of test"

変更点

以前は、ソフトアサーションのオプションは [失敗時も続行] の1種類しかありませんでした。このオプションがチェックされている場合、アサーションの条件を満たすかどうかに関係なく、アサーションは常に成功とされていました。そのため、アサーションに成功したかどうかを確認するには、テスト結果ページでそれぞれのステップを確認する必要がありました。

使ってみる

mablトレーナーでページ要素、変数、URL、Cookieに対してアサーションを行う際、アサーションに失敗した場合の、mablの動作を指定することができます。オプションには、"Fail immediately"、"Fail at end of test"、"Continue on failure & mark warning "があります。

オプション動作
Fail immediatelyアサーションに失敗した場合、失敗としてテスト実行を中断します。既定の設定です。
Fail at end of testアサーションに失敗してもテスト実行を継続し、テスト完了後にアサーションの失敗を記録します。今回追加された新しいオプションです。
Continue on failure & mark warningアサーションに失敗した場合、警告つき成功としてステップを成功扱いにしてテストを継続します。以前の「失敗時も続行」オプションと同等の動作です

クラウドの実行で[Fail at end of test]とマークされたアサーションが失敗した場合、テスト結果ページの上部に、どのステップで失敗したかが表示されます:

Browser test output failing on one assertion

ブラウザテストで 1ヶ所のアサーションに失敗した場合

[Fail at end of test] と設定されている複数のアサーションがクラウド実行で失敗した場合、テスト結果ページの上部には、失敗したすべてのステップが表示されます。

Browser test output failing on multiple assertions

ブラウザテストで複数のアサーションに失敗した場合

アサーションの詳細については、 こちらをご参照ください。