About Unit Testing单元测试摘要

这里的unit是每次所测试的一小独立的代码片段。对于面向对象语言而言,unit相当于一个class。


Unit Test的主要特点有:

1、独立于整个系统

2、每次验证特定的行为

3、每个测试之间相互独立

4、结果显然正确


Unit Test的测试步骤简单,只需要载入代码之后右键以Junit Test的形式运行即可


一般代码中bug的典型分布,占最大比例的是Logical错误,其次是Writing错误和Rendering错误


Unit Test原则主要有:

1、单元测试必须是正确的

2、writing “testable code”

3、following good Object Oriented Design Principles and Practices

在可测试的代码中Writing错误和Rendering错误的比例降低


我们在测试code时需要着重测试的地方:

1、将object创建和执行混合的地方

2、在constructor中所做的工作

3、让对象自己查找所需的代码

4、依赖具体类的地方

5、全局状态和静态变量、类等

6、多状态处(high Cyclomatic Complexity)

7、深继承处

8、在class名字处有“Utils”和“Context”的任何事物

Mocking, Spying和Stubbing的概念介绍

Stubbing是指overriding一个方法,返回一个指定的响应,而非原有的逻辑处理过程所得出的结果


Mocking和Spying是指在测试与系统中其他变量关联较多的对象时,将对象所需的依赖重新定义从而将其从系统中独立出来进行测试


一个简单的mock例子:在测试类的@Before中建立mock对象实例,在@Test中载入要测试的代码即code under test


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值