gpt4 book ai didi

java - 从测试类外部将数据传递到 JUnit 测试类

转载 作者:行者123 更新时间:2023-12-01 04:54:17 24 4
gpt4 key购买 nike

如何将数据传递到我以编程方式启动的测试类

junitCore.run(MyAwesomeClass.class);

我需要传入一些根据命令行输入构造的对象。我的程序是一个可执行的 jar。

关于我为什么要这样做的一些背景信息。我正在编写一个命令行程序,根据电子表格的输入为我的 QA 人员驱动测试。我正在尝试测试一些混合了 Android 代码的代码,并且我想在 JVM 上运行它。为此,我使用 Robolectric 填充 stub ,以便我可以运行,但需要注意的是,您必须使用他们的 JUnit 测试运行程序。

最佳答案

您想要的实际上并不是 JUnit 应该使用的方式,因为测试类应该是完整的可运行测试代码。

但是,您始终可以在运行测试类之前使用静态初始化来实现您想要的内容,例如:

MyAwesomeClass.prepare(myParameter);
junitCore.run(MyAwesomeClass.class);

例如:

public class Test2 {
private static int param;
public static void prepare(int param) {
Test2.param = param;
}

@Test public void test() {
Assert.assertEquals(param, 2);
}

public static void main(String[] args) {
JUnitCore jUnitCore = new JUnitCore();
Test2.prepare(2);
jUnitCore.run(Test2.class);
}
}

关于java - 从测试类外部将数据传递到 JUnit 测试类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14428525/

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