junit学习笔记一

《数学建模与数学实验》第5版 线性规划 习题3.4 1. 某鸡场有1000只鸡,用动物饲料和谷物混合喂养. 2. 某工厂用A1,A2两台机床加工B1,B2,B3三种不同零件. 3. 某工厂利用两种原料甲、乙生产$A_1、A_2、A_3$三种产品. 4. 每班的护士在值班开始时向病房报到,连续工作8个小时. 5. 某工厂生产 A1 、A2 两种型号的产品 6. 有两个煤厂A,B 7. 某工厂制造三种产品,生产这三种产品需要三种资源 8. 已知某工厂计划生产1,2,3三种产品,各产品需要在ABC设备加工。... 阅读详情

Junit4相通对于junit3有以下几个特点.

1,Junit4不用去继承TestCase

2.Junit4增加Annotation注解,简化单元测试的编写

3,测试的方法名可以随便起,但最好沿用Junit3风格.用testXXX().这样能见名知意.

4,对异常处理方面有了较大改进,如:@Test(expected = Exception.class)通过expected参数大大简化了处理

5,新增@BeforeClass注解和@AfterClass注解,全局只执行一次.这是以前版本没有的功能.

6,@Before注解和@After 注解在每个测试方法前后执行一次.

7.在Junit4中,套件语义被两个新注释所替代。@RunWith(Suite.class)和@SuiteClasses({Test1.class,Test2.class})

以下面的这个BetsFilter为例,编写单元测试.

  1. package com.dadao.util;
  2. import java.util.regex.Matcher;
  3. import java.util.regex.Pattern;
  4. public class BetsFilter {
  5.     public String formatBets(String bets){
  6.         String result=null;
  7.         String filtedFirstBets = bets.replace("-""/");
  8.         String oldstr = ".0";
  9.         result=filtedFirstBets.replace(oldstr, "");
  10.         String regex = "((//d//.//d)0).*";
  11.         Matcher matcher = Pattern.compile(regex).matcher(result);
  12.         if(matcher.matches()){
  13.             result = result.replaceAll(matcher.group(1), matcher.group(2));
  14.         }
  15.         return result;
  16.     }
  17. }

单元测试类如下:

  1. package com.dadao.util;
  2. import org.junit.Assert;
  3. import org.junit.BeforeClass;
  4. import org.junit.Test;
  5. public class BetsFilterTest {//注意命名规范,较好的命名方式应该是要测试的类名后面加上"Test"
  6.     private static BetsFilter betsFilter;
  7.     @BeforeClass //该方法和@AfterClass标注的方法一样,必须是静态的.全局只执行一次
  8.     public static void initBetsFilterTest(){//
  9.         betsFilter = new BetsFilter();
  10.     }
  11.     @Test 
  12.     public void testFormatBets(){//虽然测试方法的名字可以随便取,但要养成好的代码编写习惯,见名知意.
  13.         String result = betsFilter.formatBets("2.50-3.0");
  14.         Assert.assertEquals("2.5/3",result);
  15.         String result2 = betsFilter.formatBets("0-0.5");
  16.         Assert.assertEquals("0/0.5",result2);
  17.     }
  18.     @Test(expected = java.lang.NullPointerException.class )//如果未抛出NullPointerException,则失败
  19.     public void testFormatBets2(){
  20.         betsFilter.formatBets(null);
  21.     }
  22.     @Test 
  23.     public void testFormateBets3(){
  24.         String result = betsFilter.formatBets("");
  25.         Assert.assertEquals("", result);
  26.     }
  27.     @Test(timeout = 1)//如果被测试的代码执行超过一豪秒,则失败.
  28.     public void testFormatBets4(){
  29.         betsFilter.formatBets("2.50-3.0");
  30.     }
  31. }
BMS短路测试避坑指南:从炸管到稳定,我是如何搞定MOS管和TVS的 本文详细记录了BMS短路测试中MOS管和TVS的优化过程,从驱动电阻调整、PCB寄生参数控制到TVS选配策略,提供了套实用的调试方法论。通过实战案例解析,帮助工程师避免常见陷阱,实现稳定可靠的短路测试性能。 阅读详情

相关推荐

Python爬取网页数据并写入Excel

ChromeDriver下载链接:https://registry.npmmirror.com/binary.html?path=chromedriver/本例是从Excel表从读取数据,运用到网页中进行搜索,再将结果写入Excel表中。这里要先下载与Chrome版本相同的chromedriver(版本要相同!下载好后,将chromedriver路径正确配置在环境变量中。刚才爬了些数据,分享下代码。

weixin_68443051的博客 2509

JUnit学习笔记()

前言 在慕课网上听了位老师的JUnit的基础讲解,感觉对于新人来说还是很友好,故总结下来做此笔记 什么是单元测试 你的程序主要是由个个的 Class 组成的,个类或个对象当然也是个单元,而比类更小的单元是类的方法(函式)。如果你的类中的基本单元——如某些方法不能正常工作,在某些输入条件下会得出错误的执行结果,那么如何保证你的类/对象乃至整个应用软件或系统作为个整体能正常工作呢...

无_言的笔记本 4177

开源模型应用落地-qwen模型小试-入门篇(二)

在windows环境下,使用transformer设置模型参数/System Prompt/历史对话

以微薄之力,予他人些许温暖. 3125

Junit学习笔记

<!--google_ad_client = "pub-1926348199765453";/* 728x90, 创建于 08-12-3 */google_ad_slot = "0385006797";google_ad_width = 728;google_ad_height = 90;//--><script type="text/javascript"sr

Sonic 的技术博客 1612

junit4学习笔记

 Junit4测试  常用注解: @Test,用来标识测试方法 @Before  @BeforeClass,标识初始化方法。不同点是:@Before 在每个测试方法之前都会运行次,只需声明成public类型,@BeforeClass在类中只运行次,必须声明成public static类型。 @After,@AfterClass 标识释放资源的方法 ,@After 在每个测试方法之前...

Adla_bin的专栏 272

JUnit4学习笔记

可以从www.junit.org上获得最新版本的JUnit。与早期的JUnit 3相比,JUnit 4依赖于Java 5.0的新特性,因此无法兼容于jdk 1.4,可以说是个全新的框架。JUnit4是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写。 先简单解释下什么是Annotation,这个单词般是翻译成元数

hjf19790118的专栏 7608

junit学习笔记):JUnit的安装和测试原则

这里以个加减乘除的类为例子。 最终工程如下: 1、导入junit的jar,不建议直接使用eclipse 中提供的包       junit的jar包下载:点击打开链接 最新版本的是4.11       这里注意个问题:如果是用4.11版本的话,同时还要下载hamcrest 1.3,下载地址->点击打开链接,使用

D_Double's Journey 1万+

Junit In Action》学习笔记

Junit In Action》是Minning公司《Java人的工具箱》系列丛书之,其封面设计选自1799年初版于西班牙马德里的本各地服装简编书。Minning想通过书中生动多样、颜色鲜明的图画表达当前个人生活的多姿多彩,以“换取更多彩也更有趣的精神与文明”。“更多彩也更有趣”——正是我阅读此书的感受。《Junit In Action》对于测试理论和Junit的描述深入浅出,作者的语气非常

EileenHuan的专栏 1904

JUnit4学习笔记):基本应用

、简介 这个估计大家都比我清楚了,JUnit单元测试框架,我们可以基于它编写用来测试代码的代码,从而更方便地进行回归测试。   二、编写测试与断言(Assertion) 在Junit4中,编写测试方法只需要使用@Test注解并保证被注解的方法满足以下条件 方法可见性为public 方法无返回值 方法没有参数 在测试中,往往需要满足某种条件才能断定测试成功,而...

haibin369 623

JUnit测试学习笔记

在软件测试中,最基本的测试莫过于单元测试单元测试在使用Eclipse开发过程中莫过于使用JUnit进行单元测试。既然是要写程序,那么就必须对程序进行质量保证。自己写程序,那么自己也写单元测试来验证你写的程序。这种反复辩证是种很好的习惯,也是种很好的思维。废话就不多说了。 最简单的测试莫过于验证个方法的返回值,这种测试是所有程序测试的基础。其实可能单元测试复杂的地方在于将个复杂的...

博学之,审问之,慎思之,明辨之,笃行之 163

Junit学习笔记()

1.>Eclipse中自带了junit中所需的两个jar包

一杨 528

33 极物科技 | Control4 对接 - A8 按键面板驱动

句话概述:本文详细解析极物网关 A8 按键面板驱动的 Control4 DriverWorks 实现,涵盖 8 路按键事件处理、RS485 通讯协议、Proxy 代理机制及场景联动。 本文聚焦于 极物 A8 按键面板驱动的完整实现,从 8 路按键结构体、RS485 通讯协议、Proxy 代理机制到场景联动,逐深入剖析,并提供完整代码供 C4 集成商参考。

weixin_43951955的博客 193

redis--009

/尝试获取锁,timeoutSec:锁超时时间,返回true获取成功,false失败//释放锁。

2503_93626619的博客 273

次 Nginx Lua 后门应急响应实录:从手机跳转到彻底清除

手机访问其网站时,第次打开会跳转到个色*情网站,而 PC 端访问正常,且并非每次都跳转(概率约 30%)。这是个典型的“选择性劫持”案例,攻击者企图通过低概率跳转躲避检测。经过数小时的排查,我们发现了个隐藏在 Nginx 背后的 Lua 后门,并最终彻底清除。本文将完整还原这次应急响应的全过程,包括现象、排查思路、恶意代码分析、清理步骤以及最终的自动化脚本,希望对遇到类似问题的运维/安全同仁有所帮助。

极创信息的博客 246

31 极物科技 | Control4 对接 - CAN 继电器驱动

句话概述:本文详细解析极物网关 CAN 继电器驱动的 Control4 DriverWorks 实现,涵盖多路继电器控制、状态同步、Proxy 代理机制及高级场景定时。 本文聚焦于 极物 CAN 继电器驱动的完整实现,从多路继电器结构体、Proxy 代理分发、状态同步机制到高级场景定时,逐深入剖析,并提供完整代码供 C4 集成商参考。

weixin_43951955的博客 334

Unity 手游 Lua 热更框架与 XLua 实战

为什么手游要用 Lua、主流框架怎么选、C#/Lua 怎么互调、热更到底更什么。后半部分落在实际项目的 XLua 接入上。

CSDNzhizunbao的博客 649

LangGraph 实战 03:Workflows 与 Agents——六种工作流模式与智能体实战(附 6 个可运行示例)

模式句话收获关键机制链式 + 门函数add_conditional_edges 字典映射并行 fan-out + 汇聚多 START 边 + BSP 屏障RoutingLLM 语义分流结构化输出 + 条件边动态派工 + 并行合并迭代到合格反馈存 state 循环AgentLLM 自主工具循环bind_tools + ToolMessage 配对。

zylyw123的博客 227

让go在Shell下当脚本执行

本文探讨了在Shell下直接运行Go脚本的可行性,介绍了通过/usr/bin/true结合exec、直接使用go run等技巧实现Shebang效果,并说明处理第三方库依赖的方法,为Go脚本化提供实用方案。

witton的专栏 434

35 极物科技 | Control4 对接 - 温控器驱动(IRAcc/CAN/中弘)

句话概述:本文详细解析极物网关温控器驱动的 Control4 DriverWorks 实现,涵盖 IRAcc/CAN/中弘多协议适配、温度设定、模式切换、Proxy 代理机制及状态同步。 本文聚焦于 极物温控器驱动的完整实现,从 IRAcc/CAN/中弘多协议适配、温度设定、模式切换、Proxy 代理机制到状态同步,逐深入剖析,并提供完整代码供 C4 集成商参考。

weixin_43951955的博客 392

SpringBoot整合Redis分布式锁-为什么不能直接DEL

MetaLite 是面向企业生产环境的新代 Java 微服务技术底座。系列文章重点分享代码背后的设计思路、技术取舍与工程实践。

MetaLite的博客 347

【软测】接口自动化入门:requests + pytest + pymysql 三件套实战

库定位在自动化中承担的角色requestsHTTP 客户端模拟客户端,发送接口请求pytest测试框架组织用例、执行断言、生成测试报告pymysqlMySQL 驱动操作数据库,做数据准备与结果校验pytest 组织用例├─ pymysql 预置/清理测试数据├─ requests 调用被测接口└─ assert 断言响应结果(必要时 pymysql 回查数据库验证)requests:把请求信息字典化 +解包,是数据驱动框架的第块砖;

2301_81499791的博客 204

UI调试平台Web UI自动化项目框架设计

该项目是个UI自动化框架的封装平台,主要基于Python+PlayWright搭建了接口自动化框架,实现注册,登录,新增项目,新增环境等功能用例转自动化的实现,并且合理使用断言,生成可视化的测试报告

2301_80424145的博客 328

迅雷不限速版本

这是个不限速的迅雷,可以不用开通会员享受极速下载

STM32F407控制直流无刷电机:双环PID控制-速度环+电流环【支持STM32F4系列单片机_直流无刷电机驱动】.zip

STM32F407直流无刷电机驱动程序。项目支持STM32F4系列单片机调测和移植。项目可直接编译、运行。

上一篇: J2EE安全之Http基本验证
下一篇: Junit4学习笔记二
JavaChenYang
博客等级 码龄20年 35粉丝 29原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值