behave
Pythonで実行されたシナリオのステータスを取得するにはどうすればよいですか?
after_scenario
メソッドで実行されたテスト ケースのステータス (成功またはエラー) を取得したいと考えています。
behave
Pythonで実行されたシナリオのステータスを取得するにはどうすればよいですか?
after_scenario
メソッドで実行されたテスト ケースのステータス (成功またはエラー) を取得したいと考えています。
Behave 1.2.6 以降、status は列挙型であるため、次のようになります。
# -file- environment.py
from behave.model_core import Status
def after_scenario(context, scenario):
print(Scenario.status)
if scenario.status == Status.failed:
print('more details:...')
はimport
、ステータスを と比較する場合にのみ必要ですStatus.failed
。たとえば、詳細を印刷する場合などです。
これstatus
は、シナリオの実行の読み取り専用の要約です。
Status.untested: シナリオはまだ完全にはテストされていません。
Status.skiped: このシナリオの 1 つ以上のステップがテスト中に渡されました。
Status.passed: シナリオは正常にテストされました。
Status.failed: このシナリオの 1 つ以上のステップが失敗しました。
バージョン 1.2.6 で変更: Status 列挙型クラスを使用する (was: string)
参照: http://behave.readthedocs.io/en/stable/api.html#behave.model.Scenario.status
これは、ビヘイビアで行うのは非常に簡単です。Scenario
クラスには という属性がありますstatus
。after_scenario
これをメソッドで次のように使用できます。
# -file- environment.py
def after_scenario(context, scenario):
print (scenario.status)
これは、次のいずれかを返します。
untested
: シナリオはまだ完全にはテストされていません。
skipped
: このシナリオの 1 つ以上のステップがテスト中に省略されました。
passed
: シナリオは正常にテストされました。
failed
: このシナリオの 1 つ以上のステップが失敗しました。