アサーションステートメントを使用すると、スクリプトが予期される結果を受信していることを確認できます。セッションステータスは、ジョブが失敗した原因が不明な例外か、またはアサーションステートメントの失敗かを判断するために使用します。
このページでは、アサーションの例を示して、セッションステータスを使用して問題のあるスクリプトを特定する方法について説明します。
アサーションを使用して予期される結果を確認する
assert ステートメントは、単純なシンタックスを使用して予期される結果を確認します。アサーションが失敗した場合に表示するメッセージを指定することもできます。次の例では、アサーションが失敗した場合に、メッセージ「Title should contain AppDynamics
」が表示されます。
# Get page and check the title
driver.get("http://https://ecommerce.com/view.html/ref=nav_cart")
assert "E-Commerce Shopping Cart" in driver.title, "Title should contain E-Commerce Shopping Cart"
# Click link and confirm URL is correct
driver.find_element_by_link_text("Place your order").click()
assert "ThankYouCart" in driver.current_url
PY
また、文字列が結果に含まれていないこと、または数学的な式の真偽を確認することもできます。false の Assert ステートメントは、セッションステータスが FAILED
になります。
# Confirm the page doesn't gives a 500 error.
assert "500 Internal Server Error" not in driver.page_source
# Confirm the footer is on the page.
footer = driver.find_elements_by_class_name('footer-body')
assert len(footer) > 0, "Footer couldn't be found."
PY
セッションステータスを使用してスクリプトの問題を検出する
2 つのセッションのステータス BROKEN
と FAILED
は、スクリプトに問題があったことを示します。セッションステータスが BROKEN
の場合、スクリプトが不明な例外をスローしたことを意味します。多くの場合、コードを確認してエラーを検索する必要があります。一般的な例外のリストについては、「Exceptions」を参照してください。
セッション状態が FAILED
の場合、assert ステートメントが失敗したか、または「Fail on page load error」をオンにした場合、ページをロードできません。アサーションステートメントが失敗した理由、またはページをロードできなかった理由を特定する必要があります。
アサーションステートメントの結果は、セッションステータスの詳細とスクリプトの出力で表示できます。[Session Details] ページでは、上部の赤色の例外ボックスと [Waterfall] タブから、失敗した assert ステートメントを表示できます。

失敗した assert ステートメントは、Script Output ダイアログにも表示されます。
