Junit4入门
eclipse自带junit包,可右键直接新建junit类
静态引入:import static org.junit.Assert.*
assert.*是类,静态引入会引入assert里的所有静态方法,可以不用写类名直接调用静态方法。非常多的assert方法。
运行结果:keep the bar green to keep the code clean。
----------------------
实战的时候查一下Junit的API/hamcrest api
大部分asset方法都重载了一个可以加入string参数的方法,string可以传入作为false的提示消息。
assetEquals
assetFalse
assetTrue
assetSame
assertNotNull/assertNull
assertThat
-----------------------
Junit4以后添加assertThat可以实现上面所有的assert方法。需要加入hamcrest包:hamcrest-core/hamcrest-lib。hamcrest里有Matchers方法
AssertThat(实际值,Matchers.is(表达式))
hamcrest用eclipse自带的junit会造成类加载错误,引入新的junit包即可解决。
hamcrest里Matchers有很多写好的现成可用的方法,提供很多简单可用的。如果单元测试比较简单,不用assertThat也可以。
------------------------
注解:
@Test(expected=java.lang.异常类.class)可用于专门测试抛出异常的方法
@Test(timeout=100)用于测试执行效率
@Ignore用于@Test前面
@BeforeClass/@AfterClass:必须是静态方法。测试前比较耗时间的环境或是资源实使用此方法。eg:加载spring配置文件,建立数据库连接。
@Before/@After
-------------------------
运行多个测试:
eclipse右键run configuration,可以选择跑某一个项目或事文件夹下的所有junit test,用这种方式来控制junit运行。
Junit4入门的更多相关文章
- JUnit4 入门笔记
Test注解的两个可选参数 expected timeout The Test annotation supports two optional parameters. The first, expe ...
- Java 单元测试 JUnit4 快速入门
JUnit最佳实践 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class CardServiceTest { /** * 最佳 ...
- JUnit4快速入门
JUnit最佳实践 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class CardServiceTest { /** * 最佳 ...
- JUnit4单元测试入门教程
本文按以下顺序讲解JUnit4的使用 下载jar包 单元测试初体验 自动生成测试类 执行顺序 @Test的属性 下载jar包## 下载地址 在github上,把以下两个jar包都下载下来. 下 ...
- SpringBoot中使用JUnit4(入门篇)
添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>sp ...
- Spring+JUnit4单元测试入门
(一).JUnit介绍 JUnit是Java中最有名的单元测试框架,多数Java的开发环境都已经集成了JUnit作为单元测试的工具.好的单元测试能极大的提高开发效率和代码质量. Maven导入juni ...
- Spring快速入门
什么是Spring Spring是分层的JavaSE/EE full-stack(一站式) 轻量级开源框架 分层 SUN提供的EE的三层结构:web层.业务层.数据访问层(持久层/集成层) Strut ...
- Groovy入门教程
Groovy入门教程 kmyhy@126.com 2009-5-13 一.groovy是什么 简单地说,Groovy 是下一代的java语言,跟java一样,它也运行在 JVM 中. 作为跑在JVM ...
- junit入门
一.简介JUnitJUnit是一个开源的java单元测试框架.在1997年,由 Erich Gamma 和 Kent Beck 开发完成.这两个牛人中 Erich Gamma 是 GOF 之一:Ken ...
随机推荐
- FreeSWITCH第三方库(视频)的简单介绍(二)
FreeSWITCH使用了大量的第三方库,本文档主要介绍视频相关库的信息: 音频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5486753.html 其他相关 ...
- linux中mysql基本操作
1.linux下启动mysql的命令: mysqladmin start /ect/init.d/mysql start (前面为mysql的安装路径) 2.linux下重启mysql的命令: mys ...
- [Python]解决python链式extend的技巧
众所周知python中的list是可以extend的,功能 旨在将两个list合并成一个.譬如[1,2,3].extend([4,5,6])=[1,2,3,4,5,6] 假如有一个list的list, ...
- C# 导出数据至 CSV
有时候将Excel的数据另存到csv文件会出现csv格式错误,以下示例实现将DataTable里面的数据直接保存到csv文件. System.Web.HttpRuntime.Cache["v ...
- 创建XML
//创建XML XElement xelement = new XElement("request", new XElement("head", new XEl ...
- JPA EntityManager详解(一)
JPA EntityManager详解(一) 持久化上下文(Persistence Contexts)的相关知识,内容包括如何从Java EE容器中创建EntityManager对象.如何从Java ...
- [转载] Python的GIL是什么鬼,多线程性能究竟如何
原文: http://cenalulu.github.io/python/gil-in-python/ GIL是什么 首先需要明确的一点是GIL并不是Python的特性,它是在实现Python解析器( ...
- Mysql ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA
ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declar ...
- JS实现复选框全选全不选以及子复选框带动全选框的选中
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Android开发面试经——1.常见人事面试问题
Android开发(29) 版权声明:本文为寻梦-finddreams原创文章,请关注:http://blog.csdn.net/finddreams 做为程序员,我们都是有梦想的人,有时候当我 ...