单元测试的好处

1.有助于消除和减少代码中的错误;

2.单元测试提供了良好的文档资源;(经常将文档作为发布到git的最后一件事情;)
(1)单元测试一旦完成就可以帮助别人看到如何使用代码;
(2) 单元测试提供了一种样本代码或事列代码的形式,让其他人了解如何运用软件中根深蒂固的api;
(3)有助于重新熟悉自己写过的代码的运行方式的最好方式;

3.单元测试经常改进软件的代码和总体设计,很容易测试的代码是最好的代码,更加松散耦合的代码;(单元测试通常会很难达到某些代码,这些部分往往没有使用或者不被注意;)

4.单元测试减少开发更改的成本;

5.好的单元测试有助于减少更高级别的测试的成本和时间

测试不调用其他方法或者其他代码的单个方法是良好的单元测试的起点,通常称为逻辑单元测试

通常编写易于测试的代码意味着编写更加孤立的代码;

尝试保持对象从应用程序中实例化代码,工厂方法;

易于测试的代码是最好的质量代码;

单元测试的复杂性和范围

在编写单元测试之后,接下来将编写单元测试来检查这些单元之间的交互以及调用其他方法的示例方法;

在编写逻辑单元测试之后,接下来将编写单元测试来检查这些单元之间的交互以及调用其他方法的示例方法(通常称为集成单元测试)

方法的组合,将几个单元测试结合起来,称为功能单元测试;

下面是一些准则,帮助开始单元测试

1.单元测试应该清晰,专注,简洁;

2.测试任何公开的方法;(公告方法是其他开发人员所依赖的API,不应该被失败,应该经过充分测试)对应用程序的每个公共方法至少进行一次单元测试;如果方法有很多参数,测试各种参数选项,或者如果在该方法中又很多条件或异常路径,那么写几个单元测试;

3.根据行为对你的测试进行分组;

4.一次观察和检查或确认一件事情;在单元测试中,你应该一次测试和检查;
什么叫断言->
例如,当加2加2时,我们可以断言答案应该是4

软件开发的测试分类

单元测试_应用程序

1.单元测试测试最小的代码单元,由每个开发人员完成,需要知道代码才能编写测试,
当需要编写测试代码的知识时,他就被称为白盒测试;
除了单元测试,还有集成测试,它测试交互和组合代码段;

2.功能测试根据其规范或使用案例来测试应用程序;
功能测试检查某些预期的输入是否会产生预期的输出;
通常由测试人员或质量保证分析人员完成;
这种类型的测试不需要对代码有深入的了解,称为黑盒测试;

3.压力测试检查应用程序在压力下的工作情况,换言之,超出其规范,例如超出设备的预期存储容量或提供给应用程序的连续输入量;

4.负载测试会检查负载较重的应用程序,以了解应用程序的响应或性能下降的程度;

5.可用性测试测量了应用程序的用户友好程度;