gpt4 book ai didi

java - 如何加载大量数据并将其用于多个测试用例?

转载 作者:行者123 更新时间:2023-11-30 11:16:31 30 4
gpt4 key购买 nike

我想用“真实”数据测试我的代码。此数据可以在套件中的每个测试中重复使用,因为它是只读数据。

数据的加载时间很长,我想在整个套件中重用加载的数据(在许多测试用例中)。现在我将数据存储为静态字段。像这样:

Context.setData(new DataReader().getData(url));

执行此操作的更“JUnit”方式是什么(即加载大量数据并在多个测试用例中使用它)?我真的不喜欢这个,因为它有明显的缺点。比如谁初始化数据?

我还有哪些其他选择可以实现这一目标?

最佳答案

您可能想使用 ParametrizedTests :

import java.net.URL;
import java.util.Arrays;
import java.util.Collection;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;

@RunWith(Parameterized.class)
public class MyTest {

@Parameters
public static Collection<Object[]> data() {
return Arrays.asList(new Object[][] {
{ new DataReader().getData(url) }
});
}

private final Data data;

public MyTest( Data data) {
this.data = data;
}

@Test
public void test1() {
//
}

@Test
public void test2() {
//
}
}

注解为@Parameters的方法只被调用一次。

关于java - 如何加载大量数据并将其用于多个测试用例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24823972/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com