如何在一个测试类中如果有一个测试失败就跳过其他测试?

7 浏览
0 Comments

如何在一个测试类中如果有一个测试失败就跳过其他测试?

我正在使用Jenkins、Python、Selenium2 (webdriver)和Py.test框架为Web测试创建测试用例。

到目前为止,我正在按以下结构组织我的测试:

每个是一个测试用例,每个test_方法是一个测试步骤

当一步失败时,这个设置非常好用,但是当一个步骤崩溃时,其余的"测试步骤"会变得混乱。我能够通过teardown_class()将失败限制在类(测试用例)内部,但是我正考虑如何改进这一点。

我需要的是,如果其中一个方法失败了,跳过(或标记为xfail)同一个类中的其余test_方法,以便不运行和标记其余的测试用例为失败(因为那将是错误的结果)。

谢谢!

更新:我不是在寻找“这是不好的实践”的答案,因为这个问题很有争议。(每个测试类都是独立的-这应该足够了)。

更新2:在每个测试方法中放置"if"条件不是一个选择-这是很多重复的工作。我正在寻找的是(也许)有人知道如何使用hooks来处理类方法。

0