软件功能特征测试是国际化软件测试最先开始并且贯穿于整个软件开发过程的测试类型,目的是从软件的各个侧面进行质量保证,确保软件的特征功能符合软件的设计需求和功能规格说明。
在执行特征功能测试前,应该对国际化软件提供的软件特征功能以及这些功能的重要性进行风险分析,以便确定测试过程中的测试成本。
1、测试输入
国际化软件的特征功能测试的输入内容包括:
软件功能规格说明;
软件需求;
软件的性能目标;
软件的布署场景 (Deployment Scenario) 。
2、测试过程
软件特征功能测试的过程如下图所示:
软件测试计划是指导软件测试的主要文档,指出测试的内容、测试的起止日期、测试过程、测试方法、测试用例的优先级和测试的其他详细内容,在软件设计、编码和测试期间,经常需要更新测试计划,特别是更改软件的需求后,需要及时更新软件测试计划。
设计评审 (Design review) 确保软件的设计阶段包含了全部的布署场景和软件需求,遵循了软件的性能、安全性、国际化和可维护性的要求。
实现编码评审确保软件的代码正确和遵守规范,符合软件国际化的需要。
软件的白盒测试也称为“结构测试”,是对软件的代码进行审查,找出引起软件功能缺陷的编码错误。
软件的白盒测试也称为“功能测试”,是从用户使用的角度运行软件,执行全部的终端用户场景的测试用例,发现软件与设计需求和用户需求不一致的缺陷。
3、测试过程分析
创建测试计划
测试计划文档中主要的内容是用于测试软件的测试用例,涵盖了设计评审、代码评审、配置、布署测试和负载测试的各个方面,确保软件的全部特征功能和使用场景都进行了测试。
测试文档包括详细测试计划文档和详细测试用例文档。详细测试计划文档按照“高、中、低”的顺序列出了测试用例的优先级,对测试用例中的使用场景和需要测试的特征进行了简要描述。根据测试用例的重要性和对期望的目标和需求的全面影响,为每一个测试用例指定测试执行的优先级。
详细测试用例文档与详细测试计划文档相对应,描述了详细测试计划文档列出的需要执行的每个测试用例的执行步骤,以及测试所需要的数据,给出了测试的期望结果。
需要强调的是详细测试计划文档和详细测试用例文档不是一成不变的,相反,这两个文档的内容要在软件开发生命周期的全过程不断更新。例如,当软件的功能规格说明、软件的需求更改后,或者需要添加更多的测试输入时,需要及时更新文档。另外,当修改了测试用例的优先级,或者添加了使用场景或功能测试用例时,也需要及时更新这两个文档。
设计评审
从软件测试的视角看,设计评审非常重要,通过全面评审软件设计内容,可以在软件开发的早期发现一些潜在与性能和安全性有关的缺陷。如果这些缺陷在编面阶段才被发现,则修正缺陷耗费的时间将比设计阶段修改缺陷大得多。
详细而言,设计评审有助于确保下列问题:
软件设计符合功能规格说明和软件需求的全部内容;
确保软件设计符合全部性能目标;
软件设计考虑了应用程序在不同的布署场景时的全部安全性;
软件设计遵守了程序耦合和内聚、一致性、通讯、类设计、异常管理、资源管理、缓冲区等的代码编写格式要求,以便开发人员可以方便地扩展和定制软件。
软件设计遵守了国际化和本地化有关的指导准则。
此外,软件设计评审还要确保软件能够正确处理可能的安全攻击、性能优化和内存泄漏的问题。
实现编码评审
在实现编码评审阶段,从详细测试计划文档中执行测试用例,对软件的代码进行审阅,这是软件单元测试的重要步骤。通过代码评审,可以在软件开发的早期发现问题。
具体地,实现代码评审有助于确保下列问题:
软件代码遵守了软件需求文档的要求;
软件的类命名、变量、方法名等代码元素遵守了命名规范;
原文转自:http://www.uml.org.cn/Test/200807037.asp