Java 学习笔记 Junit4单元测试使用
Junit使用
1.导入Junit包
到官网下载个Junit4.12.jar文件,放在lib目录
或者在类的空白处打@Test,之后按下alt+enter,选择添加Junit4依赖
之后就会弹出一个窗口,搜索网上jar包,记得把那个Download to的选项勾选上,这样jar包之后就会通过maven仓库下载到当前项目的lib目录下

2. 创建test目录
与src同级,新建一个包(文件夹)test,test文件夹变成绿色就说明这个文件夹已经是作为了Junit中test的文件夹了
没有变成绿色的话,则通过项目管理将其设置为test文件夹(选中底下的那个test文件夹,再点击绿色的那个test,之后确定即可)

PS:
这里需要注意的是,如果之前的需要测试的类是在某个包中,那么测试类也需要放在相同包中,如图中的EmployeeDao与EmployeeDaoTest

除此之外,测试类需要为public权限,也就是EmployeeDaoTest需要定义为test权限,之后再某个方法的Test注解才会生效
Junit常用注解补充
- @BeforeClass (setUpBeforeClass方法):
注解静态方法;在运行测试类EmployeeDaoTest时最先运行且只执行一次。 - @AfterClass (tearDownAfterClass方法):
注解静态方法;在运行测试类EmployeeDaoTest时最后个运行且只执行一次。 - @Before(setUp方法)
在执行每个@Test之前执行,每个@Test执行前都会执行@Before。 - @Test
要执行的测试单元 - @After(tearDown方法)
在执行每个@Test之后执行,每个@Test执行结束后都会执行@After
PS:
批量测试:
//在value的花括号里面写上需要测试的测试类
@RunWith(Suite.class)
@Suite.SuiteClasses(value = {CalculatorTest.class,
EmployeeDaoTest.class})
public class TestAll {
}
Junit的Assert断言
断言:是判断执行结果是否达到预期的目标
以下常用方法均为Assert的静态方法
| 方法 | 说明 |
|---|---|
| assertArrayEquals | 判断实际结果是否与期望结果数组相等 |
| assertTrue/Faile | 判断实际结果是否为真 |
| assertNotEquals/Equals | 判断实际结果是否与期望结果不相等/相等 |
| assertSame/NotSame | 判断实际结果是否与期望结果的引用内存地址相同 |
参考链接:junit中的assert方法总结
快速生成Junit测试类(待补充)
Java 学习笔记 Junit4单元测试使用的更多相关文章
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- Java学习笔记4
Java学习笔记4 1. JDK.JRE和JVM分别是什么,区别是什么? 答: ①.JDK 是整个Java的核心,包括了Java运行环境.Java工具和Java基础类库. ②.JRE(Java Run ...
- SpringBoot学习笔记:单元测试
SpringBoot学习笔记:单元测试 单元测试 单元测试(英语:Unit Testing)又称为模块测试,是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部 ...
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
随机推荐
- Python 处理时间的模块
1.由日期格式转化为字符串格式的函数为: datetime.datetime.strftime().date() 2.由字符串格式转化为日期格式的函数为: datetime.datetime.strp ...
- Fibonacci数列的解法
Fibonacci数列的解法: 1.递归算法 递归的概念,我说不清楚,语文不好.但是核心思想,我认为就是入栈出栈.比方说,你想要求得某个结果,如果一步求解不出来,那么先把最后一步的计算步骤进栈,先不考 ...
- CSS学习笔记六:写原生导航栏
因为刚开始学习CSS时,只了解了一些基本样式,然后就跑去学习bootstrap.bootstrap是个不错的东西,挺好玩,起码让你写界面写的轻轻松松,几行引入代码,再来个复制粘贴就解决了,而且boot ...
- Robot Framework和Selenium简介
1.1 RF简介 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于 ...
- django+appium实现UI自动化测试平台---构思版
背景 UI自动化,在进行的过程中,难免会遇到平台化, 在实际的工作中,有的领导也会想要实现自动化测试的平台化.自动化平台化后,有了更为实际的成果, 在做UI自动化,很想吧现在的自动化 ...
- PAT1021:Deepest Root
1021. Deepest Root (25) 时间限制 1500 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue A graph ...
- FPA笔记三 数据功能的识别
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://welkinhu.blog.51cto.com/447606/115477 ...
- PAT1099:Build A Binary Search Tree
1099. Build A Binary Search Tree (30) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN ...
- swagger-codegen自动生成代码工具的介绍与使用
一.Swagger Codegen简介 Swagger Codegen是一个开源的代码生成器,根据Swagger定义的RESTful API可以自动建立服务端和客户端的连接.Swagger Codeg ...
- UIDatePicker在swift中的使用
在上一篇文章中,创建了UISegmentedControl控件并了解它的简单用法,这篇文章主要学习DatePicker的使用,将通过Swift语言创建一个简单的例子. UIDatePicker对象:是 ...