我想介绍我的单元测试之间的依赖关系。我的第一个测试确定是否应该执行其余的测试。
我知道@unittest
装饰器及其条件跳过方法skipIf
的存在。因此,我的解决方案就像引入一个负责保存第一个单元测试状态信息的字段一样简单。有了这些信息,我可以装饰剩余的单元测试并在第一次单元测试失败时跳过它们。
但是,我觉得这不是最好的方法。如果考虑更多的依赖关系,那么似乎需要维护整个结构以保留所需的信息。
我一直在寻找内置功能,但我找不到更好的功能。
更新
为了使其尽可能清晰:我正在寻找与PHPUnit
中的@depends注释类似的功能。例如,以下代码在firstTest
和secondTest
:
/**
* @depends firstTest
*/
public function secondTest()
{
// test body
}
在上面的示例中,当且仅当secondTest
通过时才会执行firstTest
。