【读书笔记】Junit实战

Junit实战读书笔记

第一章节

探索Junit:
Junit是1997年Erich Gammay和Kent Beck一同建立的一个简单有效的测试框架,其中Erich Gammay是经典《设计模式》的四大做者之一,而BentBeck是《极限编程》的创造者编程

安装Junit:直接引入对应的jar包设计模式

编写第一个测试:
可以使用main模拟对应的测试case,而后使用System.out的模式进行处理,可是后期项目庞大的时候,就没有办法掌控住对应的局面了,因而有了这样一个框架。可以对输入参数,前期准备、执行测试、测试返回进行断言,对超时,对异常进行全面的处理。针对单一的方法。网络

运行测试:
使用对应的方法执行框架

第二章节

  1. 使用核心Junit类
Junit概念 责任
Assert 让你去定义想要测试的条件,当条件成立是,assert保持沉默;单条件不成立的时候,抛出异常
测试 一个以Test注释的方法定义的一个测试。为了运行这份方法,JUnit会建立一个包含类的新实例,而后调用这个被注释的方法
测试类 一个测试类是Test方法的容器
Suite测试集合 suite容许将测试类归类成一组
Runner运行器 Runner类用来运行测试。Junit4是向后兼容的,能够运行Junit3的测试

运行参数化测试:Parameterized(参数化)的测试运行器容许你使用不一样的参数去屡次容许同一个测试代码。单元测试

测试运行器:Junit的测试运行器测试

目的
org.junit.internal.runners.Junit38ClassRunner 这个运行器包含在当前的JUnit版本中,仅仅是为了向后兼容,他将测试用例做为JUnit3.8的测试用例来启动
org.junit.runner.Junit4 这个运行器将测试用例做为JUnit4的测试用例来启动
org.junit.urnners.Parameterized 这个测试运行器可使用不一样参数来运行相同的测试集
org.junit.runners.Suite Suite是一个包含不一样测试的容器,同事Suite也是一个运行器,能够运行一个测试类中的全部以Test注释的方法
  1. 理解Junit的机制

JunitCore facade外观模式(org.junit.runner.JunitCore),他能够运行任何测试运行器,并收集测试结果以及统计信息ui

设计模式实践:设计模式
facade是一种设计模式,它为子系统的一组接口提供了一个统一的接口,facade定义了一个更高级别的接口,使得子系统更易于使用。你可使用facade来将一些复杂的对象交互简化成一个单独的接口。
而且可以自定义测试运行器,只要扩展Runner类便可设计

使用sutie来组合测试类
组合一组测试集合code

  1. 理解Junit的生命周期

生命周期
@BeforeClass -> @Before -> @Test -> @After -> @AfterClass -> 结束对象

第三章节

  1. 实现一个简单的应用程序
    模拟一个网络应用的控制层面的代码,而且模拟测试
  2. 使用Junit测试这个应用程序
  3. 遵循Junit最佳实践
    测试的异常处理
    在Test中可以处理对应的异常,若是抛出对应异常,也算测试经过
    测试超时处理
    在测试方法中设定timeout,若是测试事后,之后不须要进行超时设置,就创造忽略的注解

Junit最佳实践:

  1. 一次只能单元测试一个对象
  2. 选择有意义的测试方法名字
  3. 在assert调用中解释失败的缘由
  4. 一个单元测试等于一个Test方法
  5. 测试任何可能失败的事物
  6. 让测试改善代码
  7. 使异常测试更易于阅读
  8. 老是为跳过测试说明缘由
相关文章
相关标签/搜索