1. 验收测试的目的主要是验证软件功能的正确性和需求的符合性。软件研发阶段的单元测试、集成测试、系统测试的目的是发现软件错误,将软件缺陷排除在交付客户之前,而验收测试是与客户共同参与的,旨在确认软件符合需求规格的验证活动。这是组织和编写验收测试用例的出发点。
2. 验收测试用例所覆盖的范围应该只是软件功能的子集,而不是软件的所有功能。在V模型中验收测试和需求分析阶段是对应的,因此,验收测试用例应该与软件需求规格说明书之间具有可追溯性。一个软件产品可能使用在多个项目中,因而可能具有复杂多样的功能,验收测试不可能也没有必要把研发阶段所有的测试用例都拿出来重新执行一遍。
3. 验收测试用例应该是粗粒度的,结构简单、条理清晰,而不应当过多地描述软件内部实现的细节。验收测试预期结果的描述,要从用户可以直观感知的方面体现,而不是针对内部数据结构的展示。因此,需要用黑盒测试的方法,尽量屏蔽软件的内部结构。
4. 验收测试用例的组织应当面向客户,从客户使用和业务场景的角度出发,而不是从开发者实现的角度出发。使用客户习惯的业务语言来描述业务逻辑,根据业务场景来组织测试用例和流程,适当迎合客户的思维方式和使用习惯,便于客户的理解和认同。
5. 设计验收测试用例应当充分把握客户的关注点。在保证系统完整性的基础上,把客户关心的主要功能点和性能点作为测试的重点,其它的功能点可以一笔带过,避免画蛇添足。
验收测试的目的决定了验收测试用例的设计不同于其它测试,因而具有不同的特点,验收测试用例应当在研发阶段测试用例的基础上重新组织和编写,而不能拿来直接使用。验收测试用例范围只是软件功能的子集,并与客户需求相对应,具有粗粒度、面向客户的特点,设计过程中要把握客户的关注点并适当展示软件的独有特性,这样才能达到较好的测试效果,从而引导项目走向成功。另外,在验收测试中不可避免地会发现软件的缺陷或与需求存在偏差的地方,项目团队应当与客户保持良好的沟通,根据问题的轻重缓急共同确定修复和改进的计划,使系统尽早验收通过、上线运行。
文章来源于领测软件测试网 https://www.ltesting.net/