Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理

这篇具有很好参考价值的文章主要介绍了Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、异常错误

想根据Id查询信息,在Junit单元测中报错

    @Select("select * from ce_questions where id = #{id};")
    List<CeQuestions> queryAuditDetailsById(@Param("id") Integer id);

Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理

    @Test
    public void queryAuditDetailsById(Integer id){
        List<CeQuestions> queryAuditDetailsById = ceQuestionsMapper.queryAuditDetailsById(1);
        System.out.println(queryAuditDetailsById);
    }
org.junit.jupiter.api.extension.ParameterResolutionException: No ParameterResolver registered for parameter [java.lang.Integer id] in method [public void com.ahead.CExperimentPlatform.LiaoTest.queryAuditDetailsById(java.lang.Integer)].

Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理

二、原因

@Test 单元测试方法中不允许添加参数

三、解决方法

方法1.去除单元测试方法中的参数

(Integer id)删除即可,但这样必须手动添加调用方法中的id,并且只能测试查询单条数据,比如我要查询id=1的数据,就只能手动在括号里添加1

    @Test
    public void queryAuditDetailsById(){
        List<CeQuestions> queryAuditDetailsById = ceQuestionsMapper.queryAuditDetailsById(1);
        System.out.println(queryAuditDetailsById);
    }

Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理

方法2.使用参数化测试@ParameterizedTest

如果我要查询多条数据,自定义参数的话,可以使用参数化测试@ParameterizedTest

当然并不是直接使用,否则会报错,需要配置参数的值

org.junit.platform.commons.PreconditionViolationException: Configuration error: You must configure at least one set of arguments for this @ParameterizedTest

Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理

@ParameterizedTest需要配合 @ValueSource使用,@ValueSource用于简单用例的参数化,支持string,int等多种类型,类型均为数组

Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理

填入对应的参数,即可查询到需要的数据了

    @ParameterizedTest
    @ValueSource(ints = {1,2,3})
    public void queryAuditDetailsById(Integer id){
        List<CeQuestions> queryAuditDetailsById = ceQuestionsMapper.queryAuditDetailsById(id);
        System.out.println(queryAuditDetailsById);
    }

Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理文章来源地址https://www.toymoban.com/news/detail-421052.html

到了这里,关于Junit单元测试 org.junit.jupiter.api.extension.ParameterResolutionException异常处理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 单元测试已从编译中排除类org.junit.platform.commons.PreconditionViolationException

    报错如下:org.junit.platform.commons.PreconditionViolationException: Could not load class with name:xx 原因: 如图: 这是由于换jar包导致一些类不可用,又不想删除类,所以当时排除了部分类 解决: 打开设置: 找到编译器下的排除,减掉对应的类即可: 不要忘记点 确定 或 应用 观察到类左上

    2024年02月11日
    浏览(32)
  • [初学Spring Boot](2):单元测试报错:org.junit.runners.model.InvalidTestClassError:Invalid test class

    是建项目时自动生成的测试类,结果还是报错了。大无语事件。 就是IDEA自建测试时导错包了。  注释掉的时原来自导的,换成短的就好了。 经查证,长的是升级版,junit5,spring boot版本在2.2之后,方法不要public修饰; 短的,是旧版,junit4,spring boot版本在2.2之前,方法要用

    2024年02月07日
    浏览(42)
  • jsonSchema 单测重构 JUnit Jupiter

    Refactor test resources to separate JSON Schema Test Suite files from project specific files · Issue #692 · networknt/json-schema-validator · GitHub fixed by https://github.com/networknt/json-schema-validator/pull/697 i propose moving the specification files from JSON Schema Test Suite to . This would provide the following benefits: src/test/suite Makes

    2024年02月16日
    浏览(37)
  • 【单元测试】Junit 4(三)--Junit4断言

    ​ **断言(assertion)**是一种在程序中的一阶逻辑(如:一个结果为真或假的逻辑判断式),目的为了表示与验证软件开发者预期的结果——当程序执行到断言的位置时,对应的断言应该为真。若断言不为真时,程序会中止执行,并给出错误信息。 这里我们直接上例子 接下来我们

    2024年02月08日
    浏览(51)
  • Java中的JUnit是什么?如何使用JUnit进行单元测试

    JUnit是Java中最流行的单元测试框架之一。它可以帮助开发人员在代码编写过程中检测出错误和异常,从而提高代码的质量和可靠性。 JUnit是一个由Kent Beck和Erich Gamma创建的开源Java单元测试框架,它已经成为Java开发中最常用的测试框架之一。这个框架的主要目的是为了简化单元

    2024年02月12日
    浏览(71)
  • Linux下安装junit,并通过命令执行junit单元测试

    1.首先你的Linux下应该已经安装了jdk,如果没有安装,请先查询安装,并配置好环境变量 2.首先找到你的jdk安装目录,如果你已经配置好环境变量的话,可以执行下面的语句:   博主的安装目录是/usr/lib/jvm/temurin-11-jdk-amd64/ 3.下载junit-4.11.jar和hamcrest-core-1.3.jar到这个目录里的l

    2024年02月04日
    浏览(44)
  • 软件测试实验:Junit单元测试

    目录 前言 实验目的 实验内容 实验要求 实验过程 题目一 题目一测试结果 题目二 题目二实验结果 总结 软件测试是软件开发过程中不可缺少的一个环节,它可以保证软件的质量和功能,发现并修复软件的缺陷和错误。软件测试分为多种类型,其中一种是单元测试,即对软件

    2024年02月02日
    浏览(51)
  • 单元测试 —— JUnit 5 参数化测试

    目录 设置 我们的第一个参数化测试 参数来源 @ValueSource @NullSource @EmptySource @MethodSource @CsvSource @CsvFileSource @EnumSource @ArgumentsSource 参数转换 参数聚合 奖励 总结 如果您正在阅读这篇文章,说明您已经熟悉了JUnit。让我为您概括一下JUnit——在软件开发中,我们开发人员编写的代

    2024年02月03日
    浏览(47)
  • 测开 (Junit 单元测试框架)

    目录 了解 Junit 引入相关依赖 1、Junit注解 @Test @BeforeEach、@BeforeAll @AfterEach @AfterAll 2、断言 1、Assertions - assertEquals 方法 2、Assertions - assertNotEquals 方法 3、Assertions - assertTrue assertFalse方法 4、Assertions - assertNull assertNotNull 小结 3、用例的执行顺序 - 方法排序( @Order 注解) 4、测试套

    2024年02月07日
    浏览(50)
  • Junit 单元测试(详解)

    本博主将用CSDN记录软件开发求学之路上亲身所得与所学的心得与知识,有兴趣的小伙伴可以关注博主!也许一个人独行,可以走的很快,但是一群人结伴而行,才能走的更远! JUnit 是一种流行的单元测试框架,它可以帮助开发人员编写、运行和调试单元测试,以确保代码的

    2023年04月15日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包