软件测试全解析:技术、流程与工具的深度洞察
1. 软件类型与测试技术选择
在软件测试领域,面对多种不同类型的软件,如面向对象软件、基于组件的软件、基于Web的软件、并发程序、基于协议的软件、实时系统、安全关键系统、面向服务的软件、开源软件以及嵌入式软件,需要采用合适的测试技术。
1.1 技术组合策略
1.1.1 功能与结构测试结合
基于模型和基于代码的测试技术常被对比为功能测试和结构测试。这两种测试选择方法并非相互替代,而是相互补充。它们依据不同的信息源,能发现不同类型的问题。在实际应用中,可以根据预算考虑将它们结合使用。
1.1.2 确定性与随机测试
测试用例的选择方式有两种:一种是根据多种技术进行确定性选择;另一种是从输入分布中随机抽取,常用于可靠性测试。已有多项分析和实证比较研究,以确定哪种方法在何种条件下更有效。
2. 测试相关度量
2.1 被测程序的评估
2.1.1 辅助测试规划与设计的程序度量
基于软件规模(如源代码行数或功能规模)或程序结构的度量可用于指导测试。结构度量还包括确定模块相互调用频率的测量。
2.1.2 故障类型、分类与统计
测试文献中对故障的分类和分类法十分丰富。了解被测软件可能存在的故障类型以及这些故障过去发生的相对频率,对于提高测试有效性、进行质量预测和流程改进都非常重要。
2.1.3 故障密度
通过计算发现的故障数量与程序规模的比率,可以评估被测程序。故障密度是衡量软件质量的一个重要指标。
超级会员免费看
订阅专栏 解锁全文
1157

被折叠的 条评论
为什么被折叠?



