《Junit实战》读书笔记
核心原则:任何没有经过自动测试的程序功能都可以当做不存在
单元测试框架的大三规则:
1.每个单元测试都必须独立于其他所有单元测试而运行
2.框架应该以单个测试为单元来检测和报告错误
3.应该易于定义要运行哪些单元测试
Junit框架的三大核心:测试类、测试集(Suite)、运行器(Runner)
运行器(Runner):
1.JUnit38:向后兼容3.8版本的runner
2.Junit4:版本4的runner
3.Parameterized:使用不同参数来运行相同的测试集
4.suiter:测试集,同时也是个运行器。所以说测试集本质也是个运行器
5.facade:以上模式的统一的接口,名字是:org.junit.runner.JUnitCore
测试集(Suite):suite可以包含多个其它suite
Assert<测试方法<测试类<Suite<Runner
测试类产生的测试对象(Test Object)是用来测试,你要测试的领域对象(Domain Object:被测试的对象),测试来来自于:包中的公共类或者测试用例中的内部类(实例化接口)
个人笔记:
1.eclipse允许在指定目录下运行所有的测试类和suite,因此可以考虑不用自己建suite(但还是有必要知道下概念)
2.runner一般是用来选择使用哪个的,在类的顶部通过@RunWith加载不同的runner来使用
最佳实践:
1.对还没有实现的测试代码抛出一个异常:throw new RuntimerException("implement me") P31
2.测试方法命名:使用testXXX[YYY]的形式,XXX是被测的方法,YYY是为同个方法添加其他测试时采用的测试说明 P33
《Junit实战》读书笔记的更多相关文章
- csapp读书笔记-并发编程
		
这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...
 - CSAPP 读书笔记 - 2.31练习题
		
根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1) 属于第一种情况 sum = x ...
 - CSAPP读书笔记--第八章 异常控制流
		
第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...
 - CSAPP 并发编程读书笔记
		
CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...
 - 读书笔记汇总 - SQL必知必会(第4版)
		
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
 - 读书笔记--SQL必知必会18--视图
		
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
 - 《C#本质论》读书笔记(18)多线程处理
		
.NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...
 - C#温故知新:《C#图解教程》读书笔记系列
		
一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...
 - C#刨根究底:《你必须知道的.NET》读书笔记系列
		
一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...
 - Web高级征程:《大型网站技术架构》读书笔记系列
		
一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...
 
随机推荐
- android121 zhihuibeijing  SlidingMenu(侧边栏效果,使用开源库)
			
## Splash ## - 旋转 RotateAnimation - 缩放 ScaleAnimation - 渐变 AlphaAnimation 工程可以作为一个库被其他工程当成一个Library使 ...
 - C#_dropdownlist_1
			
关于ASP.net MVC 中DropDownList绑定与提交数据 在做 ASP.net MVC项目中,数据绑定也是很关键的,现在以个人经验与大家交流下 ASP.net MVC 中DropDow ...
 - Android ADB启动失败 ADB server out of date
			
调试Android程序时总提示ADB未运行,转到命令行方式下启动ADB, adb kille-server停止ADB, 然后再运行adb start-server 随后提示: adb server i ...
 - iOS 图片加载框架- SDWebImage 解读
			
在iOS的图片加载框架中,SDWebImage可谓是占据大半壁江山.它支持从网络中下载且缓存图片,并设置图片到对应的UIImageView控件或者UIButton控件.在项目中使用SDWebImage ...
 - 认识CoreData-多线程
			
CoreData使用相关的技术点已经讲差不多了,我所掌握的也就这么多了.... 在本篇文章中主要讲CoreData的多线程,其中会包括并发队列类型.线程安全等技术点.我对多线程的理解可能不是太透彻,文 ...
 - Android(java)学习笔记133:ListViewProject案例(ListView + BaseAdapter + CheckBox)
			
这个案例可能稍微复杂一点,我会讲述详细一点: 1.首先是AndroidManifest.xml: <?xml version="1.0" encoding="utf ...
 - nfs文件系统挂载失败解决方法
			
nfs文件系统挂载失败解决方法 */--> nfs文件系统挂载失败解决方法 Table of Contents 1. 错误提示 2. 我的配置 1 错误提示 bootserver=255.255 ...
 - Javascript学习总结三(Array对象的用法)
			
javascript Array对象的常用API 1:concat concat() 方法用于连接两个或多个数组.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本.举例:var a1 = [ ...
 - linux系统安装(虚拟机以及linux的下载与安装)
			
最近开始研究linux系统,以前接触linux系统只是一些简单的命令,例如: pwd:查看当前目录 ls:遍历目录 cd :在目录之间切换等. linux系统是基于unix系统开发的,是一个 ...
 - 关于Collections中的sort()方法总结
			
用Java集合中的Collections.sort方法对list排序的两种方法 本文部分引用自:http://my.oschina.net/leoson/blog/131904 用Collection ...