H3BPM Controllers 单元测试(一)

作用:

1,从代码层面去测试程序是否可靠
2,重构代码时,保证了输入和输出的正确性
3,单元测试,可以保持功能的颗粒度相对较小

TDD:

Test Driven Development 测试驱动开发

测试代码先行,通过需求分析,设计测试用例。通过丰富的测试用例,来编写单元测试代码。通过完整并且健壮的单元测试再进行功能的开发。这样功能代码则是可靠的,并且在方法修改后,可以通过单元测试反复验证代码的可靠性。但也会引发一些问题,单元测试代码通常是功能代码的两倍之上,会增加相当大的工作量。在方法约定发生改变时,相应的单元测试也需要进行修改。

TIM图片20180608135352.jpg
  • 测试先行
    将需求分解,针对每一个小的单元设计测试用例,编写测试代码

  • 实现业务代码
    实现业务代码,并让业务代码通过测试

  • 重构代码
    将业务代码进行重构,优化业务代码

KeyTips:

  1. 保持单元测试的独立性
  2. 不要滥用断言(Assert)
  3. 每个测试只有一个逻辑性的断言(Assert)
  4. 一次单元测试只测试一个模块
  5. 剔除外部服务和状态,不依赖于过多的服务
  6. 保持单元测试名称的清晰以及一致性
  7. 单元测试不是覆盖所有的手动测试

方法类型:

  1. 无引擎交互

  2. 引擎交互(数据库交互)
    Mock数据
    引擎交互(增/改)
    Assert 逻辑
    清楚Mock数据(删除)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 摘自http://www.51testing.com/html/75/n-3721875.html 单元测试,一个...
    许小小晴阅读 419评论 0 1
  • 前言 最近小组里面引进了Spock这个测试框架,本人在实际使用了之后,体验非常不错,本篇文章一是为了巩固输入的知识...
    Richard_易阅读 1,435评论 0 8
  • 一、百变怪 Mockito Mockito可谓是Java世界的百变怪,使用它,可以轻易的复制出各种类型的对象,并与...
    罗力阅读 3,976评论 3 18
  • 什么是单元测试 在计算机编程中,单元测试(Unit Testing)又称为模块测试, 是针对程序模块(软件设计的最...
    HelloCsl阅读 10,997评论 1 46
  • 初见你清澈明亮的眸子, 将我轻轻牵动。 从未有过的悸动悄悄拎上心头。 再见你灿烂明媚的笑容, 任垂的长发将羞红的脸...
    初心四九阅读 277评论 2 10