【发布时间】:2017-10-26 10:08:03
【问题描述】:
我想介绍我的单元测试之间的依赖关系。我的第一个测试确定是否应该执行其余测试。
我知道@unittest 装饰器的存在及其条件跳过方法skipIf。因此,我的解决方案可以像引入一个负责保存有关第一个单元测试状态的信息的字段一样简单。有了这些信息,我可以装饰剩余的单元测试,如果第一个单元测试失败,则跳过它们。
但是,我觉得这不是最好的方法。如果您考虑更多的依赖关系,那么似乎需要维护一个完整的结构来保存所需的信息。
我一直在寻找内置功能,但找不到更好的功能。
更新
为了尽可能清楚:我正在寻找类似于PHPUnit 中的@depends 注释的功能。例如,以下代码在firstTest 和secondTest 之间创建依赖关系:
/**
* @depends firstTest
*/
public function secondTest()
{
// test body
}
在上面的示例中,当且仅当 firstTest 通过时,才会执行 secondTest。
【问题讨论】:
-
尚未完全理解您的问题,但我建议考虑使用
pytest而不是nosetest。参考:agopian.info/presentations/2015_06_djangocon_europe -
@zyxue 感谢您的反馈。我澄清了我的问题。
标签: python unit-testing python-unittest nose