Espresso,运行 TestClasses 按顺序

Espresso, Run TestClasses in Order

我正在用浓缩咖啡测试一个应用程序。 第一个测试用例将第一个 activity 的数据从网络加载到本地数据库中。 第二个测试用例/2。Activity显示数据库中的数据。

这就是为什么测试用例 1 需要 运行 在测试用例 2 之前。但这并不总是发生,espresso 偶尔会改变顺序。 我该如何解决这个问题?我可以设置测试用例(测试类)的顺序吗?

您有以下注释@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  
}