【软件测试的基本概念】
软件质量保障的重要步骤是测试工作,这项工作的重点是通过规范化的流程来检查产品是否符合既定目标。测试活动并非孤立存在,而是分散在整个产品制作过程中的多个环节,包含对单个模块的检测、整体组合的验证、系统层面的评估、功能修正的复查以及最终交付前的确认。各个步骤各有侧重,分别对程序代码、集成模块、系统整体、运行效果和用户感受进行把控,确保它们都能达到既定的规范要求。
【测试的阶段性划分】
1. 单元测试以技术人员为引领,对某个特定的功能单元或相互关联的功能单元群实施检验,以确认程序指令的准确无误。
2. 组装测试在构思期间,测试团队和构建团队紧密配合,着重审查各个部分之间的衔接点与整体融合情况是否妥当。
3. 系统测试确保整个系统的各项功能、运行表现以及与其他设备的适配性,比如对图形用户界面的操作便捷性进行检测。
4. 回归测试要保证程序调整后功能正常,常通过自动操作来提升工作效率。
5. 验收测试最终用户或客户确认系统符合规定要求,表明整个开发阶段已经完成。
【测试目的的双重性】
长久以来人们觉得检测仅能找出代码中的问题(比如J. Myers的研究),不过更全面的看法是:借助检测可以找出制作过程中的不足之处。譬如说,常常出现的衔接难题或许说明构思环节交流不够充分,而反复验证不成功或许表明版本控制存在隐患。检测不只是确保品质的手段,还是改进软件制作流程的参考依据。
【测试方法的局限性】
虽然SW-CMM这类体系给出了测试环节的明确规范,不过具体执行时要机动变通。比如:
行业差异:金融软件需强调安全性测试,而游戏产品更关注用户体验测试。
企业规模新成立的公司或许会将集成装配和功能验证合并进行,以便减少开支,而规模较大的公司就必须实施严谨的等级划分。
通用的处理方式必须根据实际情境进行调整,若随意套用,则容易造成效能不佳或遗漏关键点。
【测试的实践建议】
1. 避免教条主义参照成熟度模型框架,应当增加详尽的技术要素说明,例如自动化工具的确定。
2. 重视过程改进:分析测试中暴露的问题,反向优化需求分析、设计等上游环节。
3. 平衡成本与质量依据风险评估来明确测试的先后次序,比如关键部分实施探索式检验,次要部分借助自动运行程序。
软件测试的根本在于确认和优化的相互作用,既确保产品发布水准,也促进开发机制的不断完善。
版权声明:本文为 “博览广文网” 原创文章,转载请附上原文出处链接及本声明;
工作时间:8:00-18:00
客服电话
0755-88186625
电子邮件
admin@lanyu.com
扫码二维码
获取最新动态