为什么我的NUnit测试的执行顺序与列出的顺序不同?
执行顺序取决于什么?
答案 0 :(得分:3)
这取决于跑步者在反射测试组件后如何排列它们。每个跑步者可以这样做。
例如,Reshaper的跑步者按字母顺序排列。
但这里的突出问题是NUnit测试不应该有顺序规定或依赖。
如果您需要依赖其他测试进行测试,请使用MbUnit。 This是使用DependsOnAttribute的夹具依赖性的一个例子。
答案 1 :(得分:2)
任何单元测试运行器都可能会反映测试夹具类,并搜索应用了某个属性的所有方法(或者匹配某些命名约定)。返回这些方法的顺序不依赖于它们在源文件中指定的顺序,因此它们不能按照定义的顺序执行。这应该不是问题,因为单元测试应该彼此独立运行。
答案 2 :(得分:2)
如上所述,它们按字母顺序运行。如果您在GUI NUnit运行器中打开测试dll,您将看到订购。
尽管如此,运行单元测试的顺序应该不重要。单元测试应该隔离和独立,因此顺序应该没有问题。