制定一份完美的测试计划,让您的产品质量更上一层楼!

大家好,我是彭于晏。今天学习测试计划如何书写。 虽然很多人日常工作中都知道测试计划是什么,但是写好测试计划,其实并不容易。今天就来一起学习下测试计划如何书写。

什么是测试计划?

测试计划是一份为软件产品所准备的详细文档, 其中包含测试策略,测试目标,测试日程,测试评估,测试可交付成果以及测试执行过程中的测试资源。 测试计划可以帮助我们识别验证应用程序质量所需要的所有投入。 测试计划作为一个蓝图,将软件测试活动作为一个被定义的过程来进行,它被测试经理详细地监控和控制。

就像ISTQB 定义的那样:软件测试计划是一份描述了测试范围,测试方法,测试资源和包含各项计划测试活动的日程。

为什么测试计划很重要?

准备测试计划有很多好处:

1. 帮助非测试团队成员比如:开发人员,业务管理人员,客户等理解测试的详细情况。

2. 测试计划帮助我们思考,它就像一份规则指南一样,需要被严格 遵守。

3. 像测试评估,测试范围,测试策略等重要方面会列到测试室计划里,它可以被管理团队评审或者其他项目重复利用。

如何编写一份测试计划?

你已经知道了测试室管理流程里最重要的一份工作就是死制定测试计划。请参考如下8大步骤完成测试计划:

1. 分析产品

2. 设计测试策略

3. 定义测试对象

4. 定义测试准入准出准则

5. 规划资源

6. 规划测试环境

7. 计划和评估各项测试活动

8. 确定测试可交付成果

步骤1:分析产品

如果不了解一个产品,如何测试它?答案是不可能测试它。所以在测试前必须了解一个产品。

比如要测试一个 银行网站,肯定要研究客户和最终用例来了解它们对应用程序的需求和期望。

  • 谁会用这个网站?

  • 用它来干什么?

  • 它如何工作?

  • 产品中用到了哪些软件和硬件?

 
  1. 现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。

  2. 如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受

  3. 可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛

  4. 分享他们的经验,还会分享很多直播讲座和技术沙龙

  5. 可以免费学习!划重点!开源的!!!

  6. qq群号:455787643【暗号:csdn999】

你可以用如下方法来分析一个网站:

浏览下改网站,查看相关产品文档是必须要做的事情。查看相关文档可以帮助理解改网站的所有需求以及如何使用它。如果不清楚相关条目,就可以和客户,开发人员或者设计师了解相关背景。

步骤2:准备测试策略

测试策略是软件测试过程中测试计划里非常重要的一个步骤,测试策略经常是测试经理准备的高级的测试文档。该文档包含了:

  • 测试目标以及如何达成测试目标。

  • 确定测试的成本和投入

回到刚才的项目里,如何为一个银行项目准备测试策略呢,请参考如下步骤:

步骤2.1:定义测试范围

开始任何测试活动之前,首先应该了解测试范围。

  • 系统要被测试的所有组件包括但不限于硬件,软件,中间件等等,都应该被定义到范围内。

  • 所有不在 测试范围内的内容都应该被定义到 不在测试范围内。

对所有项目干系人来说,定义测试范围都是一件非常重要的。一份精确的范围可以帮助我们:

通过精准测的测试信息给所有人信心。

让所有项目成员对哪些会做测试和那些不做测试都有一个精准的理解。

如何确定测试范围?

首先必须了解如下信息:

  • 精准的客户原始诉求

  • 产品预算

  • 产品详细说明书

  • 测试团队当前的技能水平

有了如上信息后,范围内和范围外就有了明确的定义。就拿银行系统来说:

  • 软件需求说明书只能怪,讲了银行项目只集中在测试所有功能和银行网站的外部接口。

  • 非功能测试包括,压力测试,性能测试以及当前的逻辑数据库都不在测试范围内。

有问题的场景

客户想要测试API,但是项目预算不允许测试,该怎么办?

这种情况下,需要让客户确信 接口测试是额外的工作,同时需要消耗十分重要的资源。 需要数据支撑事实。 必须明确API 测试如果要包含在测试范围内需要增加 XXX 预算。

如果客户同意了新的范围后,不在范围内和范围内的条目就变更为:

  • 范围内:功能测试和API 测试

  • 范围外: 数据库测试,硬件测试和任何外部接口

步骤2.2:确定测试类型

测试类型是给出预期测试结果的标准测试过程。

每一种测试类型都是为了发现某一种产品的缺陷而制定的。但是所有的测试类型都是为了达成一个目标:在发布产品给客户之前发现所有的缺陷。

常见的测试类型如下:

单元测试:软件测试的最小单元

接口测试:测试应用程序的接口

集成测试:组合所有软件模块然后作为一个测试组合来测试。

系统测试:在一个完整的集成好的系统里根据系统的合规说明和需求文档来执行的测试。

安装卸载测试:主要集中在客户安装和卸载以及成功安装和删除过程中 的测试。

敏捷测试:在系统中使用敏捷测试方法执行的测试

在测试软件产品的过程中有成千上百的软件类型。测试团队肯定没有足够的经历去处理各种类型的测试四。 作为测试经理,必须对测试类型设置一个优先级。

  • 哪些测试类型可以集中在测试web 应用程序测试中?

  • 哪些测试类型应该作为节省成本被忽略?

步骤2.3:描述风险和问题

风险是未来不确定会发生但是又一定概率发生同时会给系统带来潜在损失的事件。当风险发生后,它就叫问题。

常见的测试计划中的风险和消减措施有:

风险

消减措施

团队成员缺少网站测试的必备技能

规划相关培训课程来提升技能

项目日程太紧张,很难在规定时间内完成。

为每一项测试活动添加优先级。

测试经理管理技能比较差

计划管理能力的培训计划

团队成员缺少积极合作精神,工作积极性差

在团队工作中鼓励每一个团队成员

成本估算错误,成本超支

开始工作前,评估范围,尤其是项目计划以及持续追踪当前项目进度

步骤2.4:组织测试工作

在测试组织工作中,测试经理需要回答如下问题:

  • 谁会测试?

  • 测试什么时候开始?

谁来测试?

您可能不知道将要测试的测试人员的确切名称,但是可以定义测试人员的类型。

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

具备以下技能的人最适合进行软件测试:

  • 能够理解客户的观点

  • 强烈的品质要求

  • 注重细节

  • 良好的合作

在您的项目中,负责测试执行的成员是测试人员。根据项目预算,您可以选择团队成员或外包成员作为测试人员。

测试什么时候进行?

测试活动必须与相关的开发活动相匹配。

当你拥有如下图所示的所有所需项目时,你就可以开始测试

步骤3):定义测试目标

测试目标是测试执行的总体目标和成果。测试的目标是发现尽可能多的软件缺陷;在发布之前,确保所测试的软件没有错误。

要定义测试目标,您应该执行以下两个步骤

  • 列出所有可能需要测试的软件特性(功能、性能、GUI…)

  • 基于上述特征定义测试的目标或目标

让我们应用这些步骤来找到银行测试项目的测试目标

你可以选择“自上而下”的方法来找到网站可能需要测试的功能。在这种方法中,您将被测试的应用程序分解为组件和子组件。

在前面的主题中,您已经分析了需求规范并浏览了网站,因此您可以创建一个思维导图来查找以下网站功能

该图显示了银行网站可能具有的所有功能。

基于以上特性,您可以定义项目的Test Objective,如下所示

  • 检查网站功能(帐户,存款…)是否正常工作,在真实的商业环境中没有任何错误或错误

  • 检查网站的外部界面,如用户界面是否正常工作,并满足客户的需求

  • 验证网站的可用性。这些功能对用户是否方便?

步骤4):定义测试标准

测试标准是测试程序或测试判断所依据的标准或规则。有以下两种测试标准

暂停标准

指定测试的严重暂停标准。如果在测试期间满足暂停条件,则活动测试周期将暂停,直到问题得到解决。

测试计划示例:如果您的团队成员报告有40%的测试用例失败,那么您应该暂停测试,直到开发团队修复了所有失败的用例。

退出标准

它指定了表示测试阶段成功完成的标准。退出标准是测试的目标结果,是进入下一个开发阶段之前所必需的。示例:95%的关键测试用例必须通过。

定义退出标准的一些方法是通过指定目标运行率和通过率。

  • 运行率是测试规格中执行的测试用例数量/测试用例总数之间的比率。例如,测试规范总共有120个测试用例,但是测试人员只执行了100个用例,所以运行率是100/120 = 0.83 (83%)

  • 通过率是通过的测试用例数与执行的测试用例数之间的比率。例如,在执行的100个测试用例中,有80个测试用例通过,因此通过率为80/100 = 0.8 (80%)

这些数据可以在测试度量文档中检索。

  • 除非给出明确的理由,否则运行率必须为100%。

  • 通过率取决于项目范围,但达到高通过率是一个目标。

测试计划示例:您的团队已经完成了测试执行。他们向您报告测试结果,并希望您确认退出标准。

在上面的例子中,强制运行率是100%,但是测试团队只完成了90%的测试用例。这意味着运行速率不满足,所以不要确认退出条件

步骤5)资源规划

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

资源计划是测试计划的重要因素,因为它有助于确定用于项目的资源(员工、设备……)的数量。因此,测试经理可以为项目制定正确的计划和评估。

此部分表示项目的推荐资源。

人力资源

下表表示项目团队中的各种成员

序号成员的任务

1. 测试经理

管理整个项目

确定项目方向

获取合适的资源

2. 测试人员

确定并描述适当的测试技术/工具/自动化体系结构

验证和评估测试方法

执行测试、记录结果、报告缺陷。

根据项目预算,测试人员可以是内部成员,也可以是外部成员

对于技能要求不高的任务,我建议你选择外包成员来节省项目成本。

3.测试中的开发人员

实现测试用例、测试程序、测试套件等。

4.测试管理员

建立并确保测试环境和资产得到管理和维护

支持测试人员使用测试环境进行测试执行

5.SQA成员

负责质量保证工作

检查以确认测试过程是否满足规定的要求

系统资源

对于测试一个web应用程序,你应该像下面的表格那样规划资源:

序号资源描述
1服务器

安装测试中的web应用程序

这包括一个单独的web服务器、数据库服务器和应用程序服务器(如果适用的话)

2测试工具

测试工具是自动测试,模拟用户操作,生成测试结果

你可以在这个项目中使用大量的测试工具,比如Selenium、QTP等等

3网络您需要一个包括局域网和Internet在内的网络来模拟真实的业务和用户环境
4电脑用户经常用来连接web服务器的PC机

步骤6):规划测试环境

什么是测试环境

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

如何设置测试环境

回到银行项目,您如何为这个银行网站设置测试环境?

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

您应该向开发人员询问一些问题,以便清楚地了解被测试的web应用程序。以下是一些推荐问题。当然,如果需要,你也可以问其他问题。

本网站可同时处理的最大用户连接数是多少?

安装本网站有什么硬件/软件要求?

用户的计算机是否需要任何特定的设置来浏览网站?

常见的web 网站使用场景:用户----浏览器----网络----Web服务器---数据库服务器

步骤7):计划和评估

在测试评估这篇文章中,您已经使用了一些技术来评估完成项目的工作量。现在您应该将评估和时间表包括到测试计划中

在测试评估阶段,假设您将整个项目分解为小任务,并为每个任务添加如下所示的评估

任务成员估计工作量
创建测试规范测试设计人员170工时
执行测试执行测试员,测试管理员80工时
测试报告测试人员10个工时
测试交付20个工时
总计280工时

然后创建完成这些任务的计划。

制定进度计划是项目管理中常用的术语。通过在测试计划中创建一个可靠的进度表,测试经理可以将其用作监控项目进度、控制成本超支的工具。

要创建项目进度表,测试经理需要以下几种类型的输入:

  • 员工和项目截止日期:工作日、项目截止日期、资源可用性是影响进度的因素

  • 项目评估:基于评估,测试经理知道完成项目需要多长时间。这样他就可以制定合适的项目时间表

  • 项目风险:理解风险有助于测试经理在项目计划中增加足够的额外时间来处理风险

步骤8)测试交付成果

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

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

在测试阶段之前提供测试成果。

  • 测试计划文档。

  • 测试用例文档

  • 测试设计规范。

测试过程中提供测试成果

  • 测试脚本

  • 模拟器。

  • 测试数据

  • 测试跟踪矩阵

  • 错误日志和执行日志。

测试周期结束后提供测试可交付成果。

  • 测试结果/报告

  • 缺陷报告

  • 安装/测试程序指南

  • 发布说明

完整的一个测试计划就准备好了。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/732809.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

目标检测——监控下打架检测数据集

一、简述 首先,监控下打架检测是维护公共安全的重要手段。在公共场所、学校、监狱等地方,打架事件往往难以避免。通过安装打架检测监控系统,可以实时监控并准确识别打架事件,及时采取必要的应对措施,有效地减少打架事…

RNN预测正弦时间点

import torch.nn as nn import torch import numpy as np import matplotlib matplotlib.use(TkAgg) from matplotlib import pyplot as plt # net nn.RNN(100,10) #100个单词,每个单词10个维度 # print(net._parameters.keys()) #序列时间点预测num_time_steps 50…

java-ssm-jsp-基于ssm的宝文理学生社团管理系统

java-ssm-jsp-基于ssm的宝文理学生社团管理系统 获取源码——》公主号:计算机专业毕设大全

应对高并发的软件架构之道

在去年年终总结的时候,我提出了这样的困惑,究竟什么是真正的技术能力,是对于各种底层技术的钻研吗?钻研是好事,但实践下来,深入钻研并不在实际工作中有用,且钻研的越深,忘得越快&…

Leetcode : 1137. 高度检查器

学校打算为全体学生拍一张年度纪念照。根据要求,学生需要按照 非递减 的高度顺序排成一行。 排序后的高度情况用整数数组 expected 表示,其中 expected[i] 是预计排在这一行中第 i 位的学生的高度(下标从 0 开始)。 给你一个整数…

一篇搞懂什么是LRU缓存|一篇搞懂LRU缓存的实现|LRUCache详解和实现

LRUCache 文章目录 LRUCache前言项目代码仓库什么时候会用到缓存(Cache)缓存满了,怎么办?什么是LRUCacheLRUCache的实现LRUCache对应的OJ题实现LRUCache对应的STL风格实现 前言 这里分享我的一些博客专栏,都是干货满满的。 手撕数据结构专栏…

什么是测试用例?如何设计?

在学习或者实际的测试工作中经常都会提到“测试用例”这个词,没错,测试用例是测试工作的核心,不管要做的是什么样的测试,在真正动手执行测试之前,我们都需要先根据软件需求来设计测试用例,之后再依据设计好…

动态加权平衡损失:深度神经网络的类不平衡学习和置信度校准

系列文章目录 文章目录 系列文章目录前言一、研究目的二、研究方法创新点处理类不平衡的大多数方法交叉熵损失函数Brier Score 三、DWB Loss总结 前言 Dynamically Weighted Balanced Loss: ClassImbalanced Learning and Confidence Calibration of Deep Neural Networks 下载…

2024年3月10日 十二生肖 今日运势

小运播报:2024年3月10日,星期日,农历二月初一 (甲辰年丁卯月癸酉日),法定节假日。 红榜生肖:龙、牛、蛇 需要注意:鸡、狗、兔 喜神方位:东南方 财神方位:…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Image)

Image为图片组件,常用于在应用中显示图片。Image支持加载PixelMap、ResourceStr和DrawableDescriptor类型的数据源,支持png、jpg、jpeg、bmp、svg、webp和gif类型的图片格式。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容&am…

作业 字符数组-统计和加密

字串中数字个数 描述 输入一行字符&#xff0c;统计出其中数字字符的个数。 输入 一行字符串&#xff0c;总长度不超过255。 输出 输出为1行&#xff0c;输出字符串里面数字字符的个数。 样例 #include <iostream> #include<string.h> using namespace std; int m…

AI绘画提示词案例(宠物

目录 1. 雪地猫猫&#xff1a;1.1 提示词&#xff1a;1.2 效果&#xff1a; 2. 趴地猫猫&#xff1a;2.1 提示词&#xff1a;2.2 效果&#xff1a; 3. 长城萨摩耶&#xff1a;3.1 提示词&#xff1a;3.2 效果&#xff1a; 4. 沙发猫猫&#xff1a;4.1 提示词&#xff1a;4.2 效…

Mysql:如何自定义导出表结构

为了方便将mysql表结构信息快速录入到word或Excel表格中&#xff0c;最终实现如下效果&#xff1a; 对于word,则可将Excel表格复制粘贴即可。 废话不多少&#xff0c;开干。 准备准建&#xff1a;navicat 或sqlyog 第一步&#xff1a;编辑sql&#xff0c;如&#xff1a; SE…

HTML 01

1.html使用标签来表达 结束标签多一个/ <strong>文字内容</strong> <hr> 包裹内容就是双标签&#xff0c;换行等是单标签 浏览器中显示内容&#xff1a; 2.html的骨架是网页模板 <!DOCTYPE html> <html lang"en"> <head>&l…

Full GC的认识、预防和定位

(/≧▽≦)/~┴┴ 嗨~我叫小奥 ✨✨✨ &#x1f440;&#x1f440;&#x1f440; 个人博客&#xff1a;小奥的博客 &#x1f44d;&#x1f44d;&#x1f44d;&#xff1a;个人CSDN ⭐️⭐️⭐️&#xff1a;传送门 &#x1f379; 本人24应届生一枚&#xff0c;技术和水平有限&am…

【leetcode】429. N 叉树的层序遍历

题目描述 给定一个 N 叉树&#xff0c;返回其节点值的_层序遍历_。&#xff08;即从左到右&#xff0c;逐层遍历&#xff09;。 树的序列化输入是用层序遍历&#xff0c;每组子节点都由 null 值分隔&#xff08;参见示例&#xff09;。 示例 1&#xff1a; 输入&#xff1a;…

使用Python编写简单学生管理系统

学完python基础&#xff0c;把学过的知识运用起来做一个简单的学生管理系统 1、需求分析 需求&#xff1a;进入系统显示系统功能界面&#xff0c;功能如下&#xff1a; ① 添加学员信息 ② 删除学员信息 ③ 修改学员信息 ④ 查询学员信息(只查询某个学员) ⑤ 遍历所有学…

【蓝桥杯】蓝桥杯算法复习(一)

&#x1f600;大家好&#xff0c;我是白晨&#xff0c;一个不是很能熬夜&#x1f62b;&#xff0c;但是也想日更的人✈。如果喜欢这篇文章&#xff0c;点个赞&#x1f44d;&#xff0c;关注一下&#x1f440;白晨吧&#xff01;你的支持就是我最大的动力&#xff01;&#x1f4…

Vue源码系列讲解——过滤器篇【三】(解析过滤器)

目录 1. 前言 2. 在何处解析过滤器 3. parseFilters函数分析 4. 小结 1. 前言 在上篇文章中我们说了&#xff0c;无论用户是以什么方式使用过滤器&#xff0c;终归是将解析器写在模板中&#xff0c;既然是在模板中&#xff0c;那它肯定就会被解析编译&#xff0c;通过解析用…

【自动化】PyoutuGUI操作键鼠

自动化之PyoutuGUI操作键鼠 文章目录 自动化之PyoutuGUI操作键鼠  &#x1f449;引言&#x1f48e;一、初始化环境二、键盘鼠标事件三、消息框功能四、案例实战自动登录WPS 五、问题解决 &#x1f449;引言&#x1f48e; 学习的最大理由是想摆脱平庸&#xff0c;早一天就多一…