1

我正在使用 uiautomator 运行测试。当我的测试结束时,我需要测试我的结果。我的问题是一个测试失败,其他的将不会被测试。无论其他测试的结果如何,我都需要对它们进行测试。这是我的尝试:

public void testSomeUI() {
  ////lots of stuff

  assertEquals(///assertion///);
  assertEquals(///assertion///);
  assertEquals(///assertion///);
  ....and so on
}

我也试过:

public void testSomeUI() {
  ////lots of stuff

 testValue1();
 testValue2();
 testValue3();
  ....and so on
}

  private void testValue1(){
   assertEquals(///assertion///);
}  
  private void testValue2(){
   assertEquals(///assertion///);
}   
  private void testValue3(){
   assertEquals(///assertion///);
} 
..and so on

如果一个失败,最后三个将不会运行。有什么建议么?谢谢。

4

1 回答 1

0

问题是一旦断言失败,它就会脱离方法。这就是为什么其余的不运行。

尝试使用 JUnit 之类的测试框架(UIAutomator 似乎是基于该框架构建的)。然后为每个断言编写一个方法。这样,您不仅可以让所有断言每次都运行,还可以将测试分解为适当的小尺寸。如果它们被正确命名,您可能根本不需要调试,因为您可以通过失败测试的名称来判断问题到底出在哪里。

例如,这里是一个教程的链接。

于 2013-11-27T17:13:11.013 回答