使用不同的数据集进行参数化的android测试

时间:2016-08-17 15:31:12

标签: java android unit-testing junitparams

目前我正在研究为Android应用程序编写单元和集成测试的方法。我很困惑,没有可能直接向方法提供一组参数,就像JUnitParams库那样。 所以我有几个问题:

  1. 有没有办法将AndroidJUnit4和JUnitParamsRunner结合起来,将对android类(如Rect)的访问与参数化方法结合起来?
  2. 如果没有,那么测试架构组织的最佳方式是什么?例如,我有一组无效数据,这些数据应该导致异常和一组有效数据(阈值和常规)以及两种测试方法。我应该为此目的创建两个类吗? (因为不可能提供不同的数据集,这些数据将在没有某些胶带的情况下用于一个类,例如枚举参数等。)

1 个答案:

答案 0 :(得分:0)

我不熟悉JUnitParamsRunner,但我建议您创建多个测试方法,每个测试方法对应一个您想要测试的结果。您正在测试的每个类都应该拥有自己的测试类,并且测试所需的代码将包含在其中(除了通用帮助程序)。

这通常是我的测试的样子(基本上是Given,When,Then):

public void testExample() throws Exception {
    // setup test data

    // do the actual method calls

    // assert the expected outcome
}