活动: 制定测试计划确定测试需求
确定测试需求是测试计划活动的开始。测试需求确定测试对象以及测试工作的范围和作用。测试需求还用来确定整个测试工作(如安排时间表、测试设计等)并作为测试覆盖的基础。 被确定的测试需求项必须是可核实的。 即,它们必须有一个可观察、可评测的结果。无法核实的需求不是测试需求。 执行如下步骤确定测试需求: 复审所有材料。由于测试需求可从多种来源确定,因此作为第一步,对将要开发的应用程序/系统的所有可用材料进行复审是十分重要的。最常用的测试需求来源包括现有的需求列表、用例、用例模型、用例实现、补充规约、设计需求、商业理由、最终用户访谈以及对现有系统的复审。 指明测试需求。除确定测试需求的来源之外,还必须有某种形式的确定方法来确定将成为测试目标的需求。 这将导致测试需求层次的产生。该层次可能基于现有的层次结构,也可能是新近生成的。层次结构是测试需求的逻辑分组。常用分组方法包括按照用例、商业理由、测试类型(功能、性能等)或者以上各项的组合对项目进行分组。 本步骤产生的结果是一份确定将成为测试目标的需求的报告(层次结构)。 请参见指南:测试计划以获取更多的关于确定测试需求的信息。 评估风险
要获得对风险的认识,请执行如下操作: 确定并验证测试风险因子测试工作需要平衡资源约束和风险。最重要的测试需求能够反映最高的风险。 可从以下几个方面观察风险:
复审每一项测试需求并确定风险因子(比如高、中或低)。有时从两个或更多方面对风险进行评估可能会得到不同的风险因子。在这种情况下,请使用最高的风险因子值。同时还应给出关于对某一给定测试需求为何选择特定风险因子的说明。 确定并验证测试的实施概要因子大多数应用程序都有某些功能是经常使用的,而另外一些则是较少使用的。因此要对应用程序进行合理的测试,必须确保不仅测试具有最高风险的测试需求,而且还应测试经常使用的功能(因为这些功能通常是最终用户最频繁使用的)。 确定每一个测试需求的实施概要因子,并说明为什么确定特定因子值的原因。这可通过复审商业理由或者同最终用户及其经理访谈来完成。另一种方法是观察最终用户与系统的交互行为或者使用监视/记录软件来记录最终用户与系统的交互行为(供分析用)。 确定并验证测试优先级因子在确定和验证每一个测试需求的测试风险和实施概要之后,就应该确定和验证测试优先级因子。测试优先级因子确定测试需求的相对重要性以及测试其的顺序或时序。 测试优先级因子通过利用风险因子、实施概要、合同义务、其他约束或者它们的组合来确定。 在确定测试优先级时,考虑所有的因素十分重要,这样可以确保测试适当而有重点。 请参见指南:测试计划以获取关于评估风险和确定测试优先级的详细信息。 制定测试策略
测试策略的目的是向每一个人传达如何进行测试以及采用何种评测标准来确定测试的完成和成功程度。策略不必十分详尽,但它应该向读者指明如何进行测试。 制定测试策略包括: 确定和描述测试方法测试方法是对如何实施测试的说明(陈述)。它应该说明或指出测试对象、测试时采取的主要操作以及如何核实结果等。说明应该为读者提供足够的信息以便他们能够理解测试的对象(尽管尚不了解测试深度),如以下说明陈述:
确定测试标准测试标准是关于测试的客观说明,它指明那些用于确定/识别测试完成时间的值和被测试应用程序质量。测试标准可能包括一系列说明或对其他文档(比如方法指南或测试标准等)的引用。测试标准应确定:
测试标准示例: 对于每一高优先级用例:
在上例中,“对于每一高优先级用例”说明测试对象。“所有计划好的测试用例和测试过程已被执行”说明评测的方法。评估标准包含在最后两个陈述“所有确定的缺陷已被解决”和“所有计划好的测试用例和测试过程已被重新执行并且没有发现新的缺陷”之中。 确定测试的特殊事项应列出所有关于测试或者依赖关系的特殊事项,如下所示:
请参照指南:测试计划以获取关于制定测试策略的其他信息。 确定资源
一旦确定测试对象和测试方法,就需要确定执行测试人员及测试活动所需支持。确定资源需求包括确定所需的资源,资源包括如下:
确定人力资源需求对于大多数测试工作而言,您需要符合下列条件的人力资源:
确定非人力资源需求测试环境(包括硬件和软件) 推荐使用两个不同的物理环境(尽管这不是必需的):
软件也有必要进行测试。需要测试的软件最少应包括所测试的应用程序、客户机操作系统、网络以及服务器端操作系统。 此外,可能还需要精确地模拟/复制生产环境的软件,这类软件包括:
工具应该声明何种软件工具(供测试用)将被使用、被谁使用,以及使用各种工具所能够获得哪些信息或好处。 数据软件测试在很大程度上取决于输入数据(创建或支持某一测试条件)和输出数据(同预期结果作比较)的使用。应确定解决以下与测试数据有关的问题的策略:
创建时间表
创建时间表包括: 估计测试工作估计测试工作时,应考虑如下假设:
测试估计还应考虑到在测试生命周期的各个阶段使用不同方式对工作进行划分,这是因为某些类型的(工作)量在生命周期内是变化的。例如,性能测试工作,由于其包含在复杂环境中建立测试系统并执行测试的工作,因此该测试执行活动就占了工作估计的很大比重。
制定测试进度测试项目时间表可以通过工作估计和资源分配来建立。在迭代开发环境中,每一迭代都需要一个独立的测试项目时间表。在每一迭代中都将重复所有的测试活动。
制定测试计划
要生成测试计划,请执行如下步骤: 复审/改进现有材料在生成测试计划之前,应该复审所有现有项目信息以确保测试计划包含最新和最准确的信息。如果需要,应修改测试相关信息(测试需求、测试策略、资源等)以反映所有变更。 确定测试可交付工件测试可交付工件部分的目的在于落实和规定创建、维护以及如何向其他人提供测试工件的方法。这些工件包括: 生成测试计划制定测试计划活动的最后步骤是生成测试计划。它通过集中收集到的所有测试信息来完成,并生成一份报告。 测试计划应至少分发到以下对象:
|
Rational Unified Process |