1

behavePythonで実行されたシナリオのステータスを取得するにはどうすればよいですか?

after_scenarioメソッドで実行されたテスト ケースのステータス (成功またはエラー) を取得したいと考えています。

4

2 に答える 2

3

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

于 2018-04-24T17:42:52.267 に答える
2

これは、ビヘイビアで行うのは非常に簡単です。Scenarioクラスには という属性がありますstatusafter_scenarioこれをメソッドで次のように使用できます。

# -file- environment.py

def after_scenario(context, scenario):
    print (scenario.status)

これは、次のいずれかを返します。

  • untested: シナリオはまだ完全にはテストされていません。

  • skipped: このシナリオの 1 つ以上のステップがテスト中に省略されました。

  • passed: シナリオは正常にテストされました。

  • failed: このシナリオの 1 つ以上のステップが失敗しました。

于 2016-08-15T22:09:04.357 に答える