我知道单元测试应该足够灵活,以便以不同的顺序运行。但我有一种情况,我希望我的测试用例按特定顺序运行。在这种情况下,我正在使用fakeAppwork和fetsRequest的playframework 2.3测试我的控制器。尽管使用FixMethodOrder将我的测试类注释为NAME_ASCENDING,但我的测试以随机顺序运行。
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class JobTest {
@Test
public void _1_addJob() {
running(fakeApplication(), new Runnable() {
@Override
public void run() {
}
});
}
@Test
public void _2_editJob() {
running(fakeApplication(), new Runnable() {
@Override
public void run() {
}
});
}
}
请参阅下面的图表截图,其中交换测试订单而代码没有变化。
答案 0 :(得分:0)
在sbt级别定义顺序,如下所示:
testGrouping <<= definedTests in Test map { tests =>
tests.map { test =>
import Tests._
new Group(
name = test.name,
tests = Seq(test),
runPolicy = InProcess)
}.sortWith(_.name < _.name)
}