1、@RunWith 批注是类级别批注, 它提供了一种更改测试运行程序的默认行为的机制。批注的参数是 runner 的子类。junit 本身有几个跑步者, 默认值为 junit4, 一个常见的替代方法是参数化类。
2、当使用@RunWith(Parameterized.class),对 junit 测试进行注释时, 将对测试的生命周期和测试的运行方式愉桴狁焕进行一些更改。需要提供测试数据的类级方法, 这将返回用于测试的数据数组。这些数据可以在测试中硬编码, 或者对于更复杂的测试, 可以动态生成, 甚至可以从文件系统、数据库或其他相关存储机制中提取。
3、无论生成此数据, 此方法中数组中的每个元素都将传递到测试套件的构造函数中, 并且所有测试都使用该数据运行。
4、如下图:显示了使用参数化运行器运行的测试套件。它在测试中提供了一层抽象;所有测试都是针对每个数据集运行的。
5、此列表引入了一些新概念。首先, 需要在公共类方法上放置一个新的注释, @Parameterized.霸烹钟爷Parameters, 它返回数组列表。每个数组中的对象都传递给测试的构造函数, 在数组中的顺序与对构造函数的排序相同。
6、需要记住的一点是, 对于需要许多参数的测试套件, 所提供的数组中的哪个位置与哪个构造函数参数匹配可能是不实用或不清楚的