junit测试中@runwith注解是如何工作的?
- 原创
- |
- 浏览:6089
- |
- 更新:
方法/步骤
@RunWith 批注是类级别批注, 它提供了一种更改测试运行程序的默认行为的机制。批注的参数是 runner 的子类。junit 本身有几个跑步者, 默认值为 junit4, 一个常见的替代方法是参数化类。
当使用@RunWith(Parameterized.class), 对 junit 测试进行注释时, 将对测试的生命周期和测试的运行方式进行一些更改。需要提供测试数据的类级方法, 这将返回用于测试的数据数组。这些数据可以在测试中硬编码, 或者对于更复杂的测试, 可以动态生成, 甚至可以从文件系统、数据库或其他相关存储机制中提取。
无论生成此数据, 此方法中数组中的每个元素都将传递到测试套件的构造函数中, 并且所有测试都使用该数据运行。
如下图:显示了使用参数化运行器运行的测试套件。它在测试中提供了一层抽象;所有测试都是针对每个数据集运行的。
- 本页面未经授权抓取自百度经验
此列表引入了一些新概念。首先, 需要在公共类方法上放置一个新的注释, @Parameterized.Parameters, 它返回数组列表。每个数组中的对象都传递给测试的构造函数, 在数组中的顺序与对构造函数的排序相同。
需要记住的一点是, 对于需要许多参数的测试套件, 所提供的数组中的哪个位置与哪个构造函数参数匹配可能是不实用或不清楚的
END
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。
展开阅读全部











