Python-Selenium2做Web自动化测试(1)-软件测试分类以及什么时候需要进行自动化测试

时间:2022-10-04 05:55:12

关于软件测试领域名词:

1.单元测试、集成测试、系统测试、验收测试

1)单元测试:单元测试(或模块测试)是对程序中的单个子程序或具有独立功能的代码段进行测试的过程。

2)集成测试:集成测试是单元测试的基础上,将通过单元模块组装成系统或子系统,再进行测试,重点是检查模块之间的接口是否正确
3)系统测试:系统测试是针对整个产品系统进行的测试验证系统是否满足了需求规格的定义,以及软件系统的正确性和性能等是否满足其规约所指定的要求
4)验收测试:验收测试是部署软件之前的最后一个测试操作。验收测试的目的是确保软件准备就绪,向软件购买都展示该软件系统满足其用户的需求。

2.白盒测试、黑盒测试、灰盒测试

1)白盒测试与黑盒测试,主要是根据在软件测试工作中对软件代码的可见程度进行的划分;这也是软件测试领域中最基本的概念。

2)白盒测试,指的是把盒子打开,去研究里面的源代码和程序执行结果.它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。

3)黑盒测试,指的是把被测的软件看作是一个黑盒子,我们不去关心盒子里面的结构是什么样子的,只关心软件的输入数据和输出结果。它只检查程序呈现给用户的功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。

4)灰盒测试,介于黑盒测试与白盒测试之间。可以这样理解,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不象白盒那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态,有时候输出是正确的,但内部其实已经错误了,这种情况非常多,如果每次都通过白盒测试来操作,效率会很低,因此需要采取这样的一种灰盒测试的方法。


3.功能测试、性能测试.

1)功能测试
功能测试检查实际的功能是否符合用户的需求。测试的大部分工作也是围绕软件的功能进行,设计软
件的目的也就是满足客户对其功能的需求。如果偏离的这个目的任何测试工作都是没有意义的。
功能测试又可以细分为很多种:逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试等。

2)性能测试
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进
行测试。


软件的性能:时间性能、空间性能

1)时间性能:主要是指软件的一个具体的响应时间。比如一个登录所需要的时间,一个交易所需要的时
间等。当然,抛开具体的测试环境,来分析一次事务的响应时间是没有任何意义的。需要搭建一个具体且
独立的测试环境。

2)空间性能:主要指软件运行时所消耗的系统资源,比如硬件资源,CPU、内存,网络带宽消耗等。


何时需要进行自动化测试

1、任务测试明确,不会频繁变动
2、每日构建后的测试验证
3、比较频繁的回归测试
4、软件系统界面稳定,变动少
5、需要在多平台上运行的相同测试案例、组合遍历型的测试、大量的重复任务
6、软件维护周期长
7、项目进度压力不太大
8、被测软件系统开发比较规范,能够保证系统的可测试性
9、具备大量的自动化测试平台
10、测试人员具备较强的编程能力