1

在编写 android espresso UI 测试时,是否可以编写参数化测试来接受来自两个不同 json 文件的数据以在应用程序内添加项目列表?我已经看到参数化测试需要两个文件并为 junit 测试运行相同的测试代码,但找不到 android espresso UI 测试的任何参考

4

2 回答 2

1

您可以执行以下操作:

@RunWith(Parameterized.class)
public class LoginTest {

  @Parameterized.Parameter
  public String mUserName;

  @Parameterized.Parameter(value = 1)
  public String mPassword;

  @Parameterized.Parameters
  public static Collection<Object[]> initParameters() {
      return Arrays.asList(new Object[][]{
            {"validUsername", "validPassword"},
            {"invalidUsername", "invalidPassword"},
            // or other initialization like json file input
      });
  }

// Tests using mUserName and mPassword

}

然后每个测试都将使用参数数组的每个元素运行。

于 2020-05-28T06:21:23.387 回答
0

请看一下库https://github.com/google/TestParameterInjector,它非常方便,是 JUnit4 的下一步进化步骤Parameterized

于 2021-05-28T15:28:58.000 回答