Java开发者测试:Junit5

Java开发者测试

实际代码编写中所用到的单元测试框架基本是Junit结合Mockito使用

Junit

spring自带的单元测试框架,涵盖了大部分功能

通过@Test注解即可直接生成测试用例

@Test
public void calTest(){Assert.assertEquals(junit.cal(1,2),3);
}

@BeforeAll
表明在所有测试方法执行之前执行的方法,且只执行一次

@AfterAll
表明在所有测试方法执行之后执行的方法,且只执行一次

@BeforeEach
表明在每个测试方法执行之前都会执行的方法

@AfterEach
表明在每个测试方法执行之后都会执行的方法

class JunitTest {private Junit junit = new Junit();@Testpublic void calTest(){Assert.assertEquals(junit.cal(1,2),3);System.out.println("exeuting...");}@BeforeEachpublic void beforeExe(){System.out.println("before executing...");}@AfterEachpublic void afterExe(){System.out.println("after executing...");}@BeforeEachpublic void beforeEachExe(){System.out.println("before each executing...");}@AfterEachpublic void afterEachExe(){System.out.println("after each executing...");}
}
//超过指定时间报错
@Timeout(value = n,unit = TimeUnit....)

在这里插入图片描述

断言

junit中最为关键的部分,用来验证测试代码的预期结果

assertEquals判断两个对象或两个原始类型是否相等assertNotEquals判断两个对象或两个原始类型是否不相等assertSame判断两个对象引用是否指向同一个对象assertNotSame判断两个对象引用是否指向不同的对象assertTrue判断给定的布尔值是否为 trueassertFalse判断给定的布尔值是否为 falseassertNull判断给定的对象引用是否为 nullassertNotNull判断给定的对象引用是否不为 null

异常校验

@Test
public void exceptionTest(){Assert.assertThrows("no exception",Exception.class,() -> {junit.divide(1,0);});System.out.println("exception");
}

前置条件

如果不满足条件无法继续

Assumptions.assumeTrue(条件);

参数化测试

@ParameterizedTest //定义参数化测试
@NullSource //允许参数为null
@EmptySource //允许参数集合为空
@ValueSource(类型 = {参数1,参数2}) //一个数组
测试方法...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1558359.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

learn C++ NO.21——AVL树

简单介绍一下AVL树 AVL树是一种自平衡的二叉搜索树(Balanced Binary Search Tree, BBST),由俄罗斯数学家G. M. Adelson-Velsky和E. M. Landis在1962年发明,因此以其名字首字母命名。AVL树通过保持任何节点的两个子树的高度最大差…

笔记 | ASPICE 简介

什么是 ASPICE(Automotive SPICE) Automotive SPICE(简称 A-SPICE 或 ASPICE)是欧洲 20 多家主要汽车制造商以ISO/IEC 15504(SPICE,Software Process Improvement and Capability dEtermination&#xff0…

Java反射专题

目录 一.反射机制 1.Java Reflection 2.反射相关的主要类 3.反射的优缺点 4.反射调用优化—关闭访问检查 二.Class类 1.基本介绍 2.常用方法 3.获取Class对象的方式 4.那些类型有Class对象 三.类加载 1.介绍 2.类加载时机 3.类加载各阶段 四.获取类结构的信息 1…

基于微信小程序的网上商城+ssm论文源码调试讲解

2 系统开发环境 2.1微信开发者工具 微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程…

教育领域中聊天机器人和会话代理的使用分析和趋势:一项文献计量学回顾

英文标题: Analysis and Trends in the Use of Chatbots and Conversational Agents in Education: a Bibliometric Review 作者信息: Dennis Arias-Chvez, Universidad Continental, Arequipa, Per; dariascontinental.edu.pe; ORCID: ORCIDTeresa Ramos-Quispe, Universida…

网络连接失败的解决方案

文章目录 问题描述解决方案 问题描述 在公司连不上网,域名解析没问题,经检测是IP地址有问题 解决方案

.NET 一款提权工具:Sharp4PetitPotato

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…

使用 YOLOv 11 模型实现实时手语检测 可同时识别多个手语手势

项目:Yolo11 - Roboflow - OpenCV 手语是聋哑人之间以及他们与外界沟通的重要工具,然而,许多不会手语的人无法与他们有效交流。这个项目的目标是通过自动检测手语手势,构建一个可以帮助聋哑人和普通人之间沟通的桥梁,…

PCL 法向量精细化处理

目录 一、概述 1.1原理 1.2实现步骤 1.3应用场景 二、代码实现 2.1关键函数 2.1.1 pcl::NormalEstimationOMP 2.1.2 pcl::NormalRefinement 2.1.3 visualizePointCloud 2.2完整代码 三、实现效果 PCL点云算法汇总及实战案例汇总的目录地址链接: PCL点云…

非酒精性脂肪性肝炎NASH临床赛道的百米冲刺,谁将成为胜者?

前 言 非酒精性脂肪性肝炎(NASH)是一种与肥胖、血脂异常、2型糖尿病和代谢综合征密切相关的疾病,可能会发展为肝硬化、终末期肝病甚至肝癌。据美国肝脏基金会统计数据显示,截至2023年8月,美国成年人中有5%的NASH患者…

【牛客刷题实战】BC120 争夺前五名

大家好,我是小卡皮巴拉 文章目录 目录 牛客题目: BC120 争夺前五名 题目描述 输入描述: 输出描述: 示例1 示例2 解题思路: 具体思路: 题目要点: 完整代码: 兄弟们共…

WMS 智慧仓储管理系统的可视化管理_SunWMS

【大家好,我是唐Sun,唐Sun的唐,唐Sun的Sun。一站式数智工厂解决方案服务商】 WMS 智慧仓储管理系统的可视化管理主要表现在以下几个方面: 首先是库存可视化。通过系统,仓库管理人员能够以直观的图表、图形等形式清晰地…

基于sklearn的机器学习应用平台 v2.0

基于sklearn的机器学习应用平台 v2.0 链接:https://pan.baidu.com/s/1nvHMTrtBmtPLT4oNXdw74A 提取码私信博主获取 关于作者 作者:小白熊 作者简介:精通python、matlab、c#语言,擅长机器学习,深度学习,机…

【实时计算 Flink】检查点和快照超时的诊断方法与调优策略

Flink的状态管理是一个复杂而关键的领域,涉及到作业的性能、稳定性和资源利用等多个方面。通过对状态生成机制和优化策略地深入理解与正确应用,结合实时计算Flink版提供的产品能力,可以帮您有效地优化Flink作业以应对大规模状态作业带来的挑战…

卫瓴科技,驶向「协同CRM」深水区

在卫瓴协同CRM的产品之上,能看到的不单纯是产品本身,即“提高转化率”这个单纯的指标,而更多的是在产品之中蕴含的“现代企业营销建设”的科学理念和认知。以此为基础,企业可以构建真正有价值且能长期驱动的品牌营销模型。 作者…

是德(Keysight)N9030A、N9030B PXA信号分析仪

Keysight N9030B PXA 信号分析仪是加速高要求应用创新的性能基准。 PXA 提供从优秀到卓越的测量选项,让您处于领先地位。利用高达 510 MHz 的分析带宽和优于 70 dB 的 SFDR 来分析最新信号,并通过本底噪声扩展 (NFE) 揭示以前隐藏的信号。要了解设备的真…

pdf怎么加密码怎么设置密码?这几种pdf设置密码的方法简单!

pdf怎么加密码怎么设置密码?PDF格式作为现代办公和学习中频繁使用的文档类型,其身影遍布于各类场景,然而,在享受PDF带来的便利之余,不少用户对其安全性产生了疑虑,尽管PDF文件相较于其他格式更难被直接编辑…

养生健康:从日常细节中寻觅长寿之钥

养生健康:从日常细节中寻觅长寿之钥 在这个快节奏的时代,健康似乎成了一种奢侈品,但实则不然。养生之道,不在于繁复的仪式,而在于融入日常的点点滴滴。今天,就让我们一起探讨几个简单却至关重要的养生习惯…

冷流还是热流

https://www.youtube.com/watch?vM8YtV47kaqA&t607s pl学习视频 什么是冷流&#xff1f; fun fibonacci(): Flow<BigInteger> flow {var x BigInteger.ZEROvar y BigInteger.ONEwhile (true) {println("fibonacci while $x")emit(x)x y.also {y x}…

【GESP】C++一级练习BCQM3033,略微复杂的计算,国庆七天乐

应该算第一道对小学生来说&#xff0c;计算逻辑稍微复杂一点的题目。多定义几个变量可能对解题过程更有帮助。 题解详见&#xff1a;https://www.coderli.com/gesp-1-bcqm3033/ 【GESP】C一级练习BCQM3033&#xff0c;略微复杂的计算&#xff0c;国庆七天乐 | OneCoder应该算第…