我有一个测试夹具,里面有一些测试用例(test1-test5),从逻辑上讲,测试用例应该一个一个水平运行。
这些案例应该被分批放在一起(由于另一个限制)。
我曾尝试使用OrderAttribute,但似乎顺序发生在每个夹具中,但不是在它们之间全局共享。有什么想法吗?
下面是代码示例。
[TestFixture, TestFixtureSource(nameof(TestFixture))]
public class TestCases
{
[Test, Order(1)]
public async Task Test1()
{
...
}
[Test, Order(2)]
public async Task Test2()
{
...
}
[Test, Order(3)]
public async Task Test3()
{
...
}
[Test, Order(4)]
public async Task Test4()
{
...
}
[Test, Order(5)]
public async Task Test5()
{
...
}
}
这根本行不通。你似乎想要一种使测试相互依赖的通用能力,这在NUnit中已经被讨论过,但从未真正实现。
固定装置是NUnit中使用的关键组织结构。如果你所有的 "Test1 "案例需要一起运行,也许它们应该在同一个夹具中。或者,也许你所有的测试都需要在一个夹具中--虽然这听起来很乱。
这种事情通常发生在一些组织中,在这些组织中,有一些关于如何组织夹具的规则,而这些规则并没有关注NUnit如何使用夹具。
我认识到这对您来说并不是什么答案,但是由于您实际上并没有说过这样的话 何以 你需要按照这个顺序运行测试,不可能提出其他方法。如果你编辑你的问题,我很乐意编辑我的答案。 :-)