按照瀑布模型的阶段划分,软件测试可以分为单元测试、集成测试和系统测试。
其中,单元测试的任务主要为:
模块接口测试、模块局部数据结构测试、模块中所有独立执行通路测试、模块的各条错误处理通路测试、模块边界条件测试
集成测试的主要任务为:
接口测试、集成后的功能测试、对以前的集成进行回归测试
系统测试的主要任务:
安全测试、性能测试、压力测试、功能测试和回归测试
性能测试中的疲劳强度测试通常采用系统稳定运行情况下能够支持的最大并发用户数或者日常运行用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。
因为疲劳强度测试强调持续执行一段时间业务,所以对系统软件来说,最容易暴露的性能故障是内存泄漏,以及内存是否不足问题。
因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。
α测试(内测)就是把用户请到公司内部进行测试使用,不能由程序员或测试员来完成。α测试的环境是受开发方控制的,用户的数量相对比较少、时间比较集中。
β测试(公测)由软件的终用户们在一个或多个场所进行。β测试是不受开发方控制的,用户数量相对比较多,时间不集中。
α测试先于β测试执行。通用的软件产品需要较大规模的β测试,测试周期比较长
内测和公测都属于验收测试,验收测试包括三类:封闭测试、内部测试、公开测试
封闭测试有很多的bug,不允许用户注册,只提供部分账 给玩家试玩,并把发现的bug告诉给官方。
风险曝光度=错误出现率*错误造成的损失
比如有一套产品100个,一套产品的成本是10元,有60%可以使用,剩下的风险率为50%,则风险曝光度=100*10*(1-60%)*50%
自底向上测试:从程序的底层模块开始测试
1. I/O操作可以提前测试,更好提交测试用例
2. 测试后比较容易观察输出
3. 需要开发驱动模块
4.直到最后一个模块提交,才能进行完整的系统测试。
优点:对底层组件行进较早的验证;工作最初可以并行集成;比自顶向下的效率高;减少了桩的工作量;支持故障隔离
缺点:驱动的开发工作量大;对高层的验证被推迟,设计上的错误不能被及时发现
自顶而下测试:从程序的初始模块开始测试
1.能够在早期发现顶层的错误
2.早期的程序框架可以进行演示
3.需要开发桩模块辅助测试,甚至需要多个桩辅助模块,加大了桩模块本来的错误影响
4.完成一个上层模块后,挑选哪个模块作为下一个测试模块,以及测试的顺序没有唯一的界定标准
优点:较早的验证了主要控制和判断点;按深度优先可以首先实现和验证一个完整的软件功能;只需要一个驱动;支持故障隔离
缺点:桩的开发量大;底层验证被推迟;底层组件测试不充分
非增量测试:把每个模块测试完了再连接
增量测试:测一个模块就连接一个模块
白盒测试的方法主要有接口测试、路径测试。单元测试和集成测试中会用到白盒测试的方法,所以单元测试和集成测试涉及到路径测试
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!