前言
软件测试的核心是验证用户需求是否得到满足。用户需求是软件开发的基石,缺陷常源于需求规格说明书。测试人员需深入分析并理解用户需求,时刻关注其满足度,缺陷非单一环节造成。因此,做好需求分析、需求评审至关重要,确保软件质量符合用户期望。软件测试的目的或目标是为了寻找缺陷,验证用户的需求,是不是得到满足。所以软件测试从分析用户需求开始,并且根据用户需求进行测试。
1.1 用户需求
用户需求(User Requirements)是软件开发生命周期中的一个关键组成部分,它描述了目标用户群体对软件系统的期望、需求、限制和约束。用户需求是软件开发过程的基础,它们驱动了系统设计、编码、测试和维护等后续阶段。它应该尽可能完整地描述系统预期的外部行为和用户可视化行为。
1.2 缺陷源头
软件的缺陷源头是多方面的,需要从需求、设计、开发、测试等多个阶段和环节进行控制和改进。
根据相关调查,软件缺陷出现最多的地方是软件需求规格说明书(即软件需求定义),而不是程序代码。
NO | 缺陷源头 | 占比(%) |
---|---|---|
1 | 规格说明书 | 54 |
2 | 设计 | 25 |
3 | 代码 | 15 |
4 | 其他 | 6 |
规格说明书-需求表述、理解、编写引发的缺陷:
(1) 用户没描述清楚需求,用户不知道自己的需求是什么样的,用户说错需求。
(2) 调研需求的人员理解需求有误,没有了解透彻,与用户沟通不畅。
设计-系统设计不合理、架构选择不当引发的缺陷:
代码-逻辑错误、语法错误、性能问题等引发的缺陷:
其他-软件运行环境不稳定等引发的缺陷。
1.3 使用原则
(1)软件测试第一个任务是分析用户需求-需求分析;
(2)软件测试要做好需求分析;
(3)测试人员要时刻提醒自己考虑用户需求;
(4)制造缺陷的罪魁祸首不是程序员;
(5)做好需求评审-审查所做的内容是否符合用户的需求;
内容是否符合用户的需求;