浓咖啡,按顺序运行TestClasses

时间:2018-08-31 15:25:54

标签: android-espresso

我正在用espresso测试一个应用程序。 第一个测试用例将具有第一个活动的数据从Web加载到本地数据库中。 第二个测试用例/ 2.活动显示了数据库中的数据。

这就是为什么测试用例1需要在测试用例2之前运行的原因,但这并非总是如此,espresso有时会更改顺序。 我该如何解决这个问题?我可以设置TestCases(测试类)的顺序吗?

1 个答案:

答案 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  
}