一、根据是否看程序内部结构划分。
1、黑匣子测试(Black Box Testing ) :
黑匣子测试是根据软件的规格来测试软件的,因为这样的测试不考虑软件内部的工作原理,所以软件对用户来说就像黑匣子一样。 简单地说,这个测试只关心输入和输出的结果,不考虑程序的源代码。 黑匣子测试包括功能测试和性能测试。
1 )功能测试(function testing )在黑匣子测试的一方面检查实际软件的功能是否符合用户的需求。 包括逻辑功能测试、接口测试、易用性测试和兼容性测试。
2 )性能测试(performance testing )、软件性能主要有时间性能和空间性能两大类。 其中时间性能主要是指软件特定事务的响应时间,空间性能主要是指软件运行时消耗的系统资源。
2、白盒测试(白盒testing ) :
白盒测试是指将测试对象视为打开的箱子。 采用白盒测试法进行动态测试时,需要测试软件产品的内部结构和处理过程,而无需测试软件产品的功能。 与黑匣子测试相反,该测试考虑程序中的源代码和程序结构。
二、按是否执行程序划分
1、静态测试(static testing ) :
静态测试是指在不运行测试的部分静态检查程序代码、接口或文档中可能存在的错误的过程。 例如,测试产品说明书,检查并审查这个。
2、动态测试:
动态测试是通过运行软件来验证软件的动态行为和运行结果的正确性。 具体操作是输入相应的测试数据并检查输出结果与预期结果是否一致的过程。
三、分阶段:
1、单元测试(Unit Testing ) :
单元测试是规模最小的测试,用于测试某个功能或代码块。 典型的是程序员而不是测试员。 因为我需要知道内部程序的设计和编码的详细情况。
2、集成测试:
集成测试是对APP应用系统中每个部件的联合测试,意味着确定他们是否可以一起工作没有冲突。 部件可以是代码块、独立APP应用程序、网络上的客户端程序或服务器端程序。 这种类型的测试特别与客户端服务器和分布式系统相关。 在一般集成测试之前,必须完成单元测试。
3、系统测试:
系统测试是将整个软件系统作为一个整体进行测试,包括功能、性能、软件运行的硬件和软件环境的测试
4、验收测试(Accept Testing ) :
验收测试是基于客户或最终用户规范的最终测试,或者是在用户使用一段时间后验证软件是否符合客户要求的测试。 一般从功能、用户界面、性能、业务关联性进行测试。
5、回归测试(Regression testing ) :
回归测试是指在修正发生后,重新测试以前的测试以保证修正的正确性。 理论上,软件要生成新版本,必须进行回归测试,验证新软件版本中是否再次出现以前发现并修复的错误。