一、按阶段划分
1.单元测试
????????目的是对软件中的单个功能进行测试,如登录、注册等。目的是检验软件基本组成单位的正确性。
2.集成测试
????????集成测试是在软件系统集成的过程中所进行的测试。主要目的是检验软件之间的接口是否正确。
3.系统测试
????????系统测试是对已经集成完毕的软件系统进行比较彻底的测试(考虑各个方面),以验证软件系统的功能和性能可以满足产品的需求。
4.验收测试(用户检验产品是否满足自己预期)
????????验收测试是部署软件之前的最后一个测试操作。验收测试的目的是确保软件准备就绪,满足其用户的需求。?
二、按是否覆盖源代码划分
1.黑盒测试
????????黑盒测试,可以这么理解。把被测的软件看作是一个黑盒子,我们不用去管盒子里面是怎么样的,只要关注我们往这个黑盒子输入我们设定的内容后,它会输出什么结果给我们。黑盒测试只关注产品功能是否可以按照需求文档的规定正常使用,产品接收特定的输入数据能否产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。?
1.1黑盒测试-功能测试
功能测试检查实际的功能是否符合用户的需求。功能测试又可可以细分为很多种:逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试等。
1.2黑盒测试-性能测试
????????性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。
????????软件的性能包括很多方面,主要有时间性能和空间性能两种。
时间性能:主要是指软件的一个具体的响应时间。比如一个登录所需要的时间,一个交易所需要的时间等。当然,抛开具体的测试环境,来分析一次事务的响应时间是没有任何意义的。需要搭建一个具体且独立的测试环境。
空间性能:主要指软件运行时所消耗的系统资源,比如硬件资源,CPU、内存,网络带宽消耗等。
2.白盒测试
????????白盒测试,指的是把盒子盖子打开,去研究里面的源代码和程序结果。它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。
三、按是否自动化划分
1.手工测试
? ? ? ? 就是所谓的人工点点点,手工测试需要熟悉业务、基本的测试方法、测试思维,看似简单但是无法替代的一种测试方法,大多数BUG都是通过手工测试发现。
2.自动化测试
? ? ? ? 自动化测试通俗点说就是把手工执行测试通过代码实现机器执行测试,即模拟手工测试步骤,通过执行测试脚本操作测试对象并判断出测试结果。
四、其他
冒烟测试、回归测试、随机测试、探索测试、安全测试
|