Junit测试实例1

JUnit5单元测试框架的使用教程与简单实例 JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。 JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。JUnit5旨在调整java8样式的编码,并且比JUnit4更强大和灵活。JUnit Jupiter附带了许多JUnit 4拥有的断言方法,并添加了一些可以很好地用于Java 8 lambdas的断言方法。 阅读详情
Junit测试格言两则:
1)keep the bar green to keep the code clean!!!
2)单元测试不是证明您是对的,而是证明您没有错误!!!
 
被测试类代码
package com.zyg.test.junit3;
  1. /**
  2.  * 数学计算
  3.  * 
  4.  * @author zyg
  5.  * 
  6.  */
  7. public class Calculator {
  8.     public int add(int a, int b) {
  9.         return a + b;
  10.     }
  11.     public int minus(int a, int b) {
  12.         return a - b;
  13.     }
  14.     public int multiply(int a, int b) {
  15.         return a * b;
  16.     }
  17.     public int divide(int a, int b) throws Exception{
  18.         if(0 == b){
  19.             throw new Exception("除数不能为零!!");
  20.         }
  21.         return a / b;
  22.     }
  23. }
测试类代码
  1. package com.zyg.test.junit3;
  2. import junit.framework.Assert;
  3. import junit.framework.TestCase;
  4. /**
  5.  * junit3.8中测试类必须继承Test父类
  6.  * @author zyg
  7.  */
  8. public class CalculatorTest extends TestCase{
  9.     /**
  10.      * junit3.8中测试方法需要满足以下原则
  11.      * 1.public 
  12.      * 2.void
  13.      * 3.无方法参数
  14.      * 4.方法名称必须以test开头
  15.      */
  16.     public void testAdd(){
  17.         Calculator cal = new Calculator();
  18.         int result  = cal.add(1, 2);
  19.         
  20.         //断言 
  21.         Assert.assertEquals(3,result);
  22.     }
  23.     
  24.     public void testMinus(){
  25.         Calculator cal = new Calculator();
  26.         int result = cal.minus(1, 2);
  27.         Assert.assertEquals(-1, result);
  28.     }
  29.     
  30.     public void testMultiply(){
  31.         Calculator cal = new Calculator();
  32.         int result = cal.multiply(2, 3);
  33.         
  34.         //断言 
  35.         Assert.assertEquals(6, result);
  36.     }
  37.     
  38.     public void testDivide(){
  39.         Calculator cal = new Calculator();
  40.         int result = 0;
  41.         try {
  42.             result = cal.divide(6, 4);
  43.         } catch (Exception e) {
  44.             e.printStackTrace();
  45.             Assert.fail();
  46.         }
  47.         
  48.         //断言 
  49.         Assert.assertEquals(1,result);
  50.     }
  51.     
  52.     public void testDivide2(){
  53.         Throwable tx = null;
  54.         try{
  55.             Calculator cal = new Calculator();
  56.             cal.divide(4, 0);
  57.             
  58.             Assert.fail();
  59.         }catch(Exception ex){
  60.             tx = ex;
  61.         }
  62.         System.out.println(tx.getMessage());
  63.         Assert.assertNotNull(tx);
  64.         Assert.assertEquals(Exception.class, tx.getClass());
  65.         Assert.assertEquals("除数不能为零!!",tx.getMessage());
  66.     }
  67. }
 
JUnit5测试实例大全 JUnit测试最佳实践摘要 本文提供了全面的JUnit测试实例集合,涵盖基础到进阶场景,适用于学习和日常开发。主要内容包括: 基础测试 断言方法:assertEquals, assertTrue, assertNull等基本验证 异常测试:assertThrows验证预期异常 生命周期管理:@BeforeEach, @AfterEach等钩子方法 高级特性 参数化测试:@ParameterizedTest配合多种数据源 动态测试:运行时生成测试用例 条件测试:基于环境条件执行测试 嵌套测试:组织相关测试用例 阅读详情

相关推荐

Android JUnit测试说明和实例演示

什么是 JUnit ? JUnit是采用测试驱动开发的方式,也就是说在开发前先写好测试代码,主要用来说明被测试的代码会被如何使用,错误处理等;然后开始写代码,并在测试代码中逐步测试这些代码,直到最后在测试代码中完全通过。 现简要说JUnit的4大功能 管理测试用例。修改了哪些代码,这些代码的修改会对哪些部分有影响,通过JUnit将这次的修改做个完整测试。这也就JUnit中所谓的T

张勤一 3407

判断一个数是否是素数

import java.util.*; import java.*; class Java_11_17 { public static void main(String[] args) { int m = 0; int n = 0; System.out.println("\t\t"); System.out.pri

CL 1120

JUnit测试框架实战教程及实例代码下载

单元测试是软件开发过程中不可或缺的一环。它关注代码的最小单元—方法或函数。单元测试能够及早地发现代码中的缺陷,并且在后续的维护和重构中保障代码的稳定性。在某些情况下,JUnit 提供的断言方法可能不足以满足测试需求。这时,可以通过扩展类创建自定义断言方法。@Test自定义断言应该遵循几个最佳实践,以确保它们既健壮又易于使用:明确性:自定义断言应该清晰明确,易于理解。断言失败时抛出的异常消息应提供足够的信息来解释失败的原因。重用性:如果可能,自定义断言应设计为可重用。

weixin_42611310的博客 1108

junit测试实例

文章目录junit测试实例1 创建测试项目1.1 创建java project1.2创建测试类2 编写测试脚本3 执行测试脚本3.1 测试通过情况3.2测试失败情况4 Errors与Failures的区别5 JUnit中 常用的注解6 测试断言6.1 Assert类的方法7 Junit中的异常处理7.1 try/ catch/ finally7.2 ExpectedException junit测试实例 现在的eclipse中已经集成了junit,可以直接创建JUnit项目 1 创建测试项目 1.1 创建j

qq_44677062的博客 5503

第4课 SiC MOSFET的动态特性——关断过程

本文分析了SiC MOSFET的关断过程,将其划分为四个阶段:栅源电容放电阶段(t6-t7)、米勒平台阶段(t7-t8)、电压过冲阶段(t8-t9)和换流结束阶段(t9-t10)。通过等效电路详细描述了各阶段的电压电流变化特点。同时探讨了MOSFET的极间电容特性,包括输入电容Ciss、输出电容Coss和反向转移电容Crss,分析了它们对器件开关速度、损耗及电压变化速率的影响。研究指出这些非线性电容会显著影响器件的动态性能。

嵌入式老牛的博客 1046

永久关闭Windows更新的5种方法

很多家用电脑,如果系统自动更新的话,会变得越来越卡顿,且硬件型号兼容也并不完美。那么我们该如何彻底关闭Win11的自动更新呢?以下准备了5种方法,您可以根据自身实际情况选择合适的方法!

qq_43652793的博客 1万+

JUnit单元测试及相关案例实验

JUnit单元测试JUnitht是开源测试框架体系xUnit的一个实例可以方便地组织和运行Java程序的单元测试。JUnit的源代码是公开的,并具有很强的扩展性,可以进行二次开发,方便地对JUnit进行扩展。JUnit具有如下特点。可以使测试代码与产品代码分开,这更有利于代码的打包发布和测试代码的管理。针对某一个类写的测试代码,以较少的改动便可以应用到另一个类的测试JUnit提供。

m0_51657509的博客 3163

Zotero+Obsidian+Bookxnote联动让文献阅读丝滑般体验

摘录文字或图片到Obsidian

weixin_43694742的博客 1万+

Junit测试的使用场景,这里带来2个非常实用的案例

单元测试比较实用的2个案例,2个案例都用到了断言机制,而且都使用了@Befor和@After2个注解。最后介绍了力扣上通关测试用例的应用。

helpluozhao123的博客 1674

企业微信获取code,URL详解

“https://open.weixin.qq.com/connect/oauth2/authorize?”+ “appid=”企业ID “&redirect_uri=”重定向路径+ “&agentid=”小程序AgentId+ “&response_type=code&scope=snsapi_userinfo&state=123&conn...

weixin_44804985的博客 8736

论文阅读--射频电源在半导体领域的应用

射频电源(RF Power Supply)是能够输出300kHz~300GHz正弦波电压的高频交流电源,在半导体制造领域,射频电源的典型工作频率范围为400kHz∼60 MHz,主要由射频发生器(功率源)、匹配器及配套控制电路组件构成,其关键组件包括变压器与电抗器、晶闸管、绝缘栅双极型晶体管(IGBT)、钣金件、铜材及各种电子元器件。射频电源是刻蚀和薄膜沉积工艺的核心,主要用于产生等离子体,以增强气体反应活性,其性能直接影响反应腔体内等离子体的浓度、均匀性和稳定性。

伊丽莎白的学习之路 2342

Eclipse中怎么使用junit测试

此文引自Didizyp的blog,不是本人原创。 JUnit学习笔记(2007版) 一、简介     JUnit是一款由Erich Gamma(《设计模式》的作者)和Kent Beck(极限编程的提出者)编写的开源的回归测试框架,供Java编码人员做单元测试之用。当前版本4.1,可以从www.junit.org网站上获得。与早期的JUnit 3相比,JUnit 4.1依赖于Jav

kira1999的专栏 4万+

【100%通过率】2024华为OD机试真题E卷 C++ 实现【栈数据合并/空栈压数】

向一个空栈压入正整数,每当压入一个整数时,执行以下规则(设: 栈顶至栈底整数依次编号为n1、n2...nx, n1为最新压入的整数)

MISAYAONE的博客 1554

第一节——Junit单元测试

Junit单元测试 一、Junit使用步骤 定义一个测试类:类名建议为xxxTest,测试类建议放在xxxTest包下面(命名时不能只有Test,否侧会和注解@Test重叠) 定义测试方法 给测试方法添加上:@Test注解 导入junit依赖环境 //创建一个Test1类 public class Test1{ public void show(){ System.out.println("---------"); } } //创建一个测试类Test1Test impor

分享简单的安全技术 588

【逐函数讲解ORB_SLAM3源码】获取普通帧率、关键帧、IMU数据

获得imu的旋转 mRwc * mImuCalib.mTcb.rotationMatrix(); Sophus::SE3 mTwc 创建ORB_SLAM3系统 Create SLAM system. It initializes all system threads and gets ready to process frames. ORB_SLAM3::System SLAM(argv[1],argv[2],ORB_SLAM3::System::IMU_RGBD, true, 0, file_nam

小秋 AI SLAM 入门实战教程 1245

7.5华为OD机试真题 新系统 - 省超足球比赛获胜队伍计算 (Java/Py/C/C++/Js/Go)

7.5华为OD机试真题 新系统 - 省超足球比赛获胜队伍计算 (Java/Py/C/C++/Js/Go)

算法大师! 825

Junit框架测试

Junit框架概述以及手动模拟实现

ILFFQ的博客 350

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

【JUnit学习笔记】1:使用JUnit4进行简易单元测试的例子

程序结构 JUnit运行配置 在IDEA中: 在Eclipse中直接右键,Run AS->JUnit Test即可。 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0&

大桔骑士的学习笔记 4327

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

单元测试利器 JUnit 4

本文主要介绍了如何使用 JUnit 4 提供的各种功能开展有效的单元测试,并通过一个实例演示了如何使用 Ant 执行自动化的单元测试。本文假设读者对 Eclipse 下进行 Java 开发有一定的经验,并了解 Java 5 中的注解(annotation)特性。   引言 毋庸置疑,程序员要对自己编写的代码负责,您不仅要保证它能通过编译,正常地运行,而...

weixin_33806300的博客 87

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Junit测试 实例

Junit测试 详细介绍 一、为什么要进行测试 其实编写测试代码看起来是增加了代码量和工作量,实际不然。测试可以减少后期项目上线debug调试排错的时间,提升代码质量,让代码变得更容易维护。 二、什么是单元测试 单元测试简单来说就是对项目最小的功能模块进行测试,在java中是一个方法。假如说你现在写好了一个类,那你怎么验证这个类中的方法有没有问题?如果按照咱们传统的单元测试做法,就是再编写一个类,然后在新编写的这个类的main方法中调用被测试的类的方法,而且一般情况下都需要通过肉眼去观察运行结果是否正确。

sunrj_niu的博客 1548

JUnit 测试实例

– Start 默认情况下,运行每个测试用例前都会实例化它所在的类,这就是 @BeforeAll 和 @AfterAll 需要是静态的原因。不过我们也可以设置成只实例化一次。 package demo13; import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterEach; import org.junit...

千里之行始于足下 1024
上一篇: TomCat6.0数据库连接池配置实例(Oracle 10g数据库)
下一篇: Junit测试实例1
程序员长弓
博客等级 码龄20年 650粉丝 183原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值