首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在junit中的params中传递类?

在JUnit中,可以使用@RunWith(Parameterized.class)注解和@Parameters注解来传递类。

首先,创建一个测试类,并在类上添加@RunWith(Parameterized.class)注解。然后,创建一个公共的静态方法,使用@Parameters注解来标记该方法。该方法应该返回一个Collection对象,其中包含了要传递的测试数据。

接下来,在测试类中创建一个构造函数,用于接收传递的测试数据。同时,为每个测试数据创建相应的实例变量。

最后,在测试方法中使用实例变量进行测试。

下面是一个示例代码:

代码语言:txt
复制
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;

import java.util.Arrays;
import java.util.Collection;

@RunWith(Parameterized.class)
public class MyClassTest {
    private int input;
    private int expected;

    public MyClassTest(int input, int expected) {
        this.input = input;
        this.expected = expected;
    }

    @Parameters
    public static Collection<Object[]> data() {
        return Arrays.asList(new Object[][]{
                {1, 2},
                {2, 4},
                {3, 6}
        });
    }

    @Test
    public void testMultiply() {
        MyClass myClass = new MyClass();
        int result = myClass.multiply(input);
        assertEquals(expected, result);
    }
}

在上面的示例中,MyClassTest是要测试的类。data()方法返回一个包含测试数据的Collection对象。在MyClassTest的构造函数中,接收传递的测试数据,并为每个测试数据创建相应的实例变量。在testMultiply()方法中,使用实例变量进行测试。

这样,当运行JUnit测试时,会自动使用@Parameters注解标记的方法来传递测试数据,并执行相应的测试方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Spring学习笔记(二十八)——springboot单元测试&JUnit5

    Spring Boot 2.2.0 版本开始引入 JUnit 5 作为单元测试默认库 作为最新版本的JUnit框架,JUnit5与之前版本的Junit框架有很大的不同。由三个不同子项目的几个不同模块组成。 JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage * JUnit Platform: Junit Platform是在JVM上启动测试框架的基础,不仅支持Junit自制的测试引擎,其他测试引擎也都可以接入。 * JUnit Jupiter: JUnit Jupiter提供了JUnit5的新的编程模型,是JUnit5新特性的核心。内部 包含了一个测试引擎,用于在Junit Platform上运行。 * JUnit Vintage: 由于JUint已经发展多年,为了照顾老的项目,JUnit Vintage提供了兼容JUnit4.x,Junit3.x的测试引擎。

    01
    领券