您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试技术 > 其他相关 > 正文

软件测试之什么是测试计划?

发表于:2024-04-18 作者:软件质量保障 来源:知乎

定义

测试计划的内容包含测试策略、测试目标、测试里程碑、测试资源评估、交付成果。测试计划是我们完成某个项目过程中所需要付出的努力,是软件测试活动的蓝图,由测试经理进行把控整个测试过程。

根据国际软件测试资质认证委员会(ISTQB)的定义:"测试计划是一个描述范围、方法、资源和测试活动时间表的文件"。

测试计划的意义

制定测试计划有以下好处:

  1. 帮助测试团队以外的项目成员,如开发人员、业务经理、客户了解测试过程的细节。
  2. 测试计划是测试指导性思维。可以把它作为一本指导书书,需要测试人员遵守。

如何写好测试计划

你已经知道,制定一个测试计划是测试管理过程中非常重要的任务。那么我们可以按照下面的八个步骤创建一个测试计划:

  1. 分析产品需求
  2. 测试策略
  3. 测试目标
  4. 测试标准
  5. 资源规划
  6. 测试环境
  7. 测试里程碑
  8. 交付物

1.分析产品需求

假如被测试的产品是xx银行网站。进行需求评审前,你应该研究产品的用户,了解他们对产品的需求。你要回答以下问题:

  1. 谁将使用该网站?
  2. 它的用途是什么?
  3. 它将如何工作?
  4. 它依赖的软件/硬件是什么?
  5. 它和竞品相比,其优势劣势分别是什么?

2.测试策略

测试策略是软件测试中测试计划中关键内容。测试策略的设计需要从以下两方面着手:

  1. 项目的测试目标和实现这些目标需要采取什么最优的方法
  2. 确定测试工作和成本

回到项目中,你为测试xx银行网站制定测试策略,应该遵循以下步骤:

2.1 确定测试范围

在开始任何测试活动之前,应该首先确定测试范围。你必须认真思考下面的问题:

  • 要测试的系统组件(硬件、软件、中间件等)被定义为 "范围内"。
  • 系统中不被测试的组件也需要明确,定义为 "范围外"。

定义测试项目的范围对所有项目参与者来说是非常重要的,可以让所有的项目成员清楚地了解哪些是测试内容,哪些不是。

思考:如何确定项目的测试范围?

2.2 确定测试方法

每个测试方法都是为了识别特定类型的产品缺陷而制定的。但是,所有的测试方法都是为了实现一个共同的目标:"在向客户发布产品之前,尽早尽可能发现所有的缺陷"。

常用的测试方法描述如下图所示:

有大量的测试方法用于测试软件产品。你的团队不可能有足够的精力来使用所有方法进行测试。作为测试经理,你必须设定测试的优先级。

问题:测试人员是哪些?

你可能不知道要参与项目的测试员的确切名字,但测试员的类型需要被确定。

要为指定的任务选择合适的测试成员,你必须考虑他的技能是否能胜任该任务,还要估计项目预算。为任务选择错误的成员可能会导致项目的失败或延误。

具备以下技能的人是进行软件测试的最理想人选。

  • 能够理解客户的观点
  • 对质量的强烈渴望
  • 对细节的关注
  • 良好的合作

在你的项目中,将负责测试执行的成员可以选择内包或外包。

3. 测试目标

测试目标是测试执行的总体要达成的目标。例如:测试目标是找到尽可能多的软件缺陷,确保被测试的软件在发布前是没有缺陷的。

为了定义测试目标,你应该做以下两点:

让我们根据以上两点来找到xx银行测试项目的测试目标。

你可以选择 "自上而下 "的方法来分析需要测试的网站功能。利用这种方法,你将被测试的应用程序分解为组件和子组件。你可以创建一个思维导图分析网站的功能,如下图所示:

基于以上特点,你可以定义xx项目的测试目标如下:

4.定义测试标准

测试标准包含暂停标准和准出标准。

暂停标准

指定一个测试的关键暂停标准。如果在测试中遇到暂停标准,活动的测试周期将被暂停,直到问题得到解决。

例如:如果你的团队成员报告说有40%的测试用例失败,你应该暂停测试,直到开发团队修复所有失败的用例。

准出标准

它表示成功完成一个测试阶段的标准。准出标准是测试的目标结果,在进入下一个项目阶段之前是必须达到的条件。例如:95%的关键测试用例必须通过可以作为一个准出标准。

定义准出标准的方法是可以指定一个用例执行率或者用例通过率:

5.资源规划

资源规划是对完成项目任务所需的各类资源的详细总结。资源可以是完成一个项目所需的人力、设备和材料。

资源规划是测试计划的重要内容,因为它有助于确定用于项目的资源(雇员、设备......)的数量。因此,测试经理可以为项目制定正确的测试时间表和估算。资源包含人力,系统资源。

6.测试环境

什么是测试环境

测试环境是一个软件和硬件的设置,测试团队将在其上执行测试用例。测试环境包括真实的业务和用户环境,以及物理环境,如服务器(软件的运行环境)。

如何配置测试环境

回到你的项目,你如何为这个xx银行网站配置测试环境?

为了完成这项任务,你需要测试团队和开发团队之间强有力的合作。

你应该问开发人员一些问题,以清楚地了解被测试的网络应用。例如:

下图描述了银行网站的测试环境 demo.xx.com

7.时间表和估算

为了创建项目时间表,测试经理需要考虑以下几点:

让我们用一个例子来练习。

假设老板想在一个月内完成xx项目,你已经估计了每个任务的工作量,并创建了如下时间表。

8.测试可交付成果

测试可交付成果是所有文件、工具和其他组件的列表,这些都是为支持测试工作而必须开发和维护的。

在软件开发生命周期的每个阶段都有不同的测试交付物。

测试交付品在测试阶段之前提供:

测试交付物在测试期间提供:

测试周期结束后提供测试成果:

  • 列出所有可能需要测试的软件功能(功能、性能、GUI...)。
  • 根据上述功能定义测试的目标或目的。
    • 检查xx网站的功能(账户、存款......)在实际业务环境中是否按预期工作,没有任何错误或漏洞。
    • 检查网站的外部界面(如用户界面)是否按预期工作,并满足客户需求。
    • 验证网站的可用性。这些功能对用户来说是否方便?
    • 执行率是执行的测试用例数量与测试规范的总测试用例之间的比率。例如,测试规范共有120个TC,但测试人员只执行了100个TC,所以执行率是100/120=0.83(83%)。
    • 通过率是指通过的测试用例/执行的测试用例数量之间的比率。例如,在上述100个测试用例中,有80个测试用例通过,所以通过率是80/100=0.8(80%)。
    • 这个网站同时能处理的最大用户连接是什么?
    • 安装这个网站的硬件/软件要求是什么?
    • 用户的电脑是否需要任何特别的设置来浏览网站?
    • 员工和项目期限。工作日,项目期限,资源可用性是影响进度的因素。
    • 项目评估。在估算的基础上,测试经理知道需要多长时间来完成项目。因此,他可以制定适当的项目时间表。
    • 项目风险:了解风险有助于测试经理在项目计划中增加足够的额外时间来处理风险。
    • 测试计划文件。
    • 测试用例文件
    • 测试设计规范。
    • 测试脚本
    • 模拟器。
    • 测试数据
    • 测试可追溯性矩阵
    • 错误日志和执行日志。
    • 测试结果/报告
    • 缺陷报告
    • 安装/测试程序指南
    • 发布说明