performance-testing - jupiter zerocode ParallelLoadExtension 选择方法顺序
问题描述
是否可以使用某种 @Before 注释?
我想在启动测试(GET)之前“预加载”数据(POST)。但我只想在 GET 上并行执行。我正在考虑用 @LoadWith("preload_generation.properties") 定义一个方法:
number.of.threads=1
ramp.up.period.in.seconds=1
loop.count=1
只是为了确保我们只执行一次。但看起来我无法选择执行顺序,我需要这个 POST 方法是第一个执行的方法。
我还尝试将带有“加载方法”的 TestMappings 放在类的顶部。但它也不起作用。
解决方案
我不知道 ZeroCode 能够以任何方式做到这一点,因为它仅适用于重新利用已经用 JUnit 编写的测试。我的建议是遵循更传统的方法并使用标准的 JUnit 设置方法
@BeforeClass
public static void setupClass() {
// setup before the entire class
}
@Before
public void setup() {
// setup before each individual test
}
而不是试图在其预期目的之外使用工具。
根据您上面描述的场景,您希望确保在执行测试之前加载数据,特别是在 ZeroCode 在负载下运行的情况下,建议您确定如何使用
@BeforeClass
public static void setupClass() {
// setup before the entire class
}
虽然这可能需要更多地考虑如何通过在所有测试之前创建数据来创建数据,但这将确保您的负载测试不包括数据设置时间。
推荐阅读
- java - 电子邮件服务的 Junit 测试
- java - 使用每个循环和映射创建 JSON 文件 - 它在 for 循环的所有迭代中重复第一个元素值
- android - 在 saveOnIstanceState() 之后 viewPager.setCurrentItem() 似乎不起作用
- java - Java 中的流比原生 for 循环慢得多 - 为什么?
- c# - 动态反序列化一个 json 文件是一些单元格是空的并且得到一个无效的数组
- xml - 如何在不将整个 XML 保存在内存中的情况下从 XML 文件中消除空叶元素?
- php - Symfony3 将表单数据传递给集合内的集合
- android - 位于行尾时不显示包含空格的嵌套文本组件
- c# - 通过 odata.context Url 获取 Office 365 服务通信 API 的元数据
- php - 如何让 PHP 升级到更高版本的 Curl?