【问题标题】:How i can continue execute testing, when first step is failed?当第一步失败时,我如何继续执行测试?
【发布时间】:2018-04-01 16:05:55
【问题描述】:

我有测试用例。 测试用例有 10 个独立的步骤。 当第一步失败时,另一个步骤不执行。

我该怎么做才能继续测试?

示例:

with allure.step('Проверка, что после явной отписки освобождаются pullpoint`ы'):
    for i in range(0, kMaxPullPoints + 5):
    ...
with allure.step('Проверка одновременного запроса PullMessages на один адрес подписки'):
    cpps = CreatePullPointSubscription
    ...
with allure.step('Проверка максимального количества подключений клиентов'):
    def start_th():
    ...

【问题讨论】:

    标签: python pytest allure


    【解决方案1】:

    这是一种叫做deferred asserts的常用技术
    您需要包装断言并捕获异常。或者写一个python decorator 或者只是function。 在 python 中,您可以使用 try/catch 来完成。

    此外,在不同的测试用例中但在同一个测试套件中最好有 10 个独立的步骤(例如,如果他们检查相同的模块)。
    Simple rule 1 test - 1 check.

    至于 py.test 的解决方案,您可以使用
    http://pythontesting.net/pytest-expect/

    【讨论】:

    • 我可以获得步骤的失败堆栈跟踪吗?就像普通的putest失败一样?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多