SpringBoot @Test 带参数的单元测试
org.junit.jupiter.api.extension.ParameterResolutionException: No ParameterResolver registered for parameter [java.lang.String code] in method [void com.vipsoft.admin.RoleTest.getRoleTest(java.lang.String)].
@Test
void getRoleTest(String code) {
    SysRole param = new SysRole();
    param.setCode(code);
    ApiResult apiResult = roleController.getSysRole(param);
    logger.info(PojoUtil.pojoToJson(apiResult));
    Assert.isTrue(apiResult.getCode() == 1, "失败");
}
@Test 单元测试方法中不允许添加参数
解决方案
@ParameterizedTest需要配合 @ValueSource 使用,@ValueSource 用于简单用例的参数化,支持 string,int... 等多种类型,类型均为数组
@ParameterizedTest
@ValueSource(strings = {"admin"})
void getRoleTest(String code) {
    SysRole param = new SysRole();
    param.setCode(code);
    ApiResult apiResult = roleController.getSysRole(param);
    logger.info(PojoUtil.pojoToJson(apiResult));
    Assert.isTrue(apiResult.getCode() == 1, "失败");
}
@Test
void curdTest() {
    //查询
    getRoleTest("角色标识" + 83);
}

本文来自博客园,作者:VipSoft 转载请注明原文链接:https://www.cnblogs.com/vipsoft/p/18511880
 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号