我正在用espresso测试一个应用程序。 第一个测试用例将具有第一个活动的数据从Web加载到本地数据库中。 第二个测试用例/ 2.活动显示了数据库中的数据。
这就是为什么测试用例1需要在测试用例2之前运行的原因,但这并非总是如此,espresso有时会更改顺序。 我该如何解决这个问题?我可以设置TestCases(测试类)的顺序吗?
答案 0 :(得分:1)
您具有以下注释@FixMethodOrder。
您可以将其与以下参数一起使用:MethodSorters.NAME_ASCENDING。
代码(示例):
@RunWith(AndroidJUnit4.class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class YourTestClass {
@Test
public void A_Test() {
System.out.println("1");
}
@Test
public void B_Test() {
System.out.println("2");
}
}
您将在此处找到更详细的解决方案:[先前的答案](Test order with espresso)
您可以使用@RunWith注释来实现。您可以在这里Aggregating tests in suites进行简短浏览。基本上,您需要执行以下操作:
编辑:
@RunWith(Suite.class)
@Suite.SuiteClasses({
TestFeature1.class,
TestFeature2.class,
TestFeature3.class,
TestFeature4.class
})
public class FeatureTestSuite {
// the class remains empty,
// used only as a holder for the above annotations
}