问答详情
源自:4-2 JUnit参数化设置

和老师的一样,这段代码能运行,但是测试结果是错误的

import static org.junit.jupiter.api.Assertions.*;


import java.util.Arrays;

import java.util.Collection;

import org.junit.jupiter.api.Test;

import org.junit.runner.RunWith;

import org.junit.runners.Parameterized;

import org.junit.runners.Parameterized.Parameters;


@RunWith(Parameterized.class)

class ParameterTest {

int expected = 0;

int input1 = 0;

int input2 = 0;


@Parameters

public static Collection<Object[]> t() {

return Arrays.asList(new Object[][] { { 3, 1, 2 }, { 4, 2, 2 } });

}


public ParameterTest(int expected, int input1, int input2) {

this.expected = expected;

this.input1 = input1;

this.input2 = input2;

}


@Test

public void testAdd() {

assertEquals(expected, new Calculate().add(input1, input2));

}


}


提问者:慕尼黑0382964 2018-10-19 13:06

个回答

  • 慕容2016289
    2019-11-17 14:05:48
    已采纳

    因为你用的junit5,junit5里面没有参数解析器

  • 慕容2016289
    2019-11-17 13:51:20

    有人知道什么错误了吗?


  • 宋兆恒
    2018-12-22 22:56:08

    我的也是不能运行

    Errors:

    org.junit.jupiter.api.extension.ParameterResolutionException: No ParameterResolver registered for parameter [int arg0] in executable [public com.CalculateTest.ParameteriTest(int,int,int)].

  • 慕工程2468606
    2018-10-21 00:08:58

    public class ParameterTest {}