做测试一定要知道的——软件测试流程和测试规范标准文档

news/2024/4/20 23:44:17/文章来源:https://blog.csdn.net/MXB_1220/article/details/129308863

目录

1、目的

2、工作范围

3、工作职责

4、测试的流程  

5、测试准备阶段

6、测试方法制定阶段

7、测试执行阶段

8、bug管理

9、标准文档

总结感谢每一个认真阅读我文章的人!!!

重点:配套学习资料和视频教学


1、目的


通过制定公司测试流程规范,确保测试工作的规范性和有效性,以保证软件产品的质量满足用户的需求。测试作为质量控制的一种有效手段,运行测试用例找出软件中潜在的各种缺陷,通过协助开发人员修正缺陷来提高软件质量,回避软件发布后由于潜在的软件缺陷和错误造成的隐患和降低质量成本。通过测试管理为产品与过程改进提供可靠的数据分析,起到缺陷预防的作用。 

2、工作范围


测试人员在软件开发过程中的任务: 
1)参与评审需求,评审通过后,编写测试计划;
2)根据根据用户需求相关的产品需求说明文档、原型设计文档、交互视觉设计文档、开发设计文档,编写软件测试用例;
3)在开发人员完成单元测试后,进行集成测试,尽早发现bug;
4)根据软件测试用例,执行功能测试,寻找尽可能多的bug; 
5)对bug进行追踪与分析,保证bug及时得到修复;
6)对软件质量进行衡量,并进行测试总结,提交软件测试报告书

3、工作职责

1)每天对自己的工时进行记录

2)参与需求文档的评审、UI设计文档的评审

3)查看公司网盘中的需求文档、UI设计文档、开发设计文档

4)编写测试有关文档如:测试计划、测试用例、测试报告

5)组织评审测试计划、测试用例

6)根据测试用例执行测试

7)提交BUG、管理bug、bug验收

8)线上测试

                                

4、测试的流程  

4.1:需求文档编写

需求文档由产品经理制定,细化每一个功能的细节,每一个按钮的位置,对于稍大或复杂一点的需求都进行建模。

4.2:需求文档评审
所有参与项目人员进行,产品经理、开发人员、测试人员、UI设计、运营。开发人员考虑功能实现的方案与可行性、当然开发负责也是要参与的。

测试人员主要根据需求文档的理解提出疑问,或补充遗漏的条件和场景,以便才能根据需求写用例。

UI人员主要根据需求文档的理解,确定是否要写交互视觉设计文档

4.3:开发人员排期

开发人员对需求的功能点进行排期。然后将计划转交给测试人员

4.4:测试人员排期

测试人员根据开发计划,对测试拟定具体测试时间,也就是开发功能完成后的时间,执行测试所需要的时间。然后,把项目的开发与测试计划发送给各部门负责人及参与项目的所有人员。

4.5:编写测试用例

仔细阅读需求文档,归纳出需求文档的功能点、测试点。思考编写测试用例的方法,列出有效等价列、无效等价列,分析场景、边界值。开始进行测试用例的编写

4.6:测试用例的评审

在用例进行评审之前,先将用例发送给产品经理与开发人员,以便他们事先了解测试用例。

然后进行用例评审,开发人员与产品经理对测试用例中遗漏的测试点、场景进行补充。

如果测试用例不通过,测试人员增加遗漏的功能点和场景后,组织第二次用例评审,直到用例评审通过为止

4.7:执行测试

测试人员按测试用例进行第一轮测试,发现的问题通过缺陷管理工具进行反馈,开发人员对问题进行修复。然后进行第二轮测试,第二轮会对第一轮中发现的问题的模块进行重点测试。

4.8:测试通过

经过两到三轮或四轮的测试后,直到没发现新的问题,或暂时无法解决,或不紧急的问题。通过上级确认,可以通过。编写测试报告与验收方案。

                              

 

5、测试准备阶段


5.1测试计划
根据评审通过的需求文档和项目计划制定测试计划。测试计划旨在说明各测试阶段任务、人员分配、时间安排、测试要点、工作规范等。测试计划在策略和方法方面说明如何计划、组织和管理测试项目。测试计划完成后应该在项目组内进行评审。

5.2测试用例
测试用例是为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结果的一个特定的集合。解决要测什么、怎么测和如何衡量的问题。

依据用户需求分析说明书、概要设计文档和开发详细设计说明书来设计测试用例,发现需求与设计中的问题后,与需求者及时沟通确认。
5.3:测试用例设计方法

  1. 等价类划分法
  2. 边界值法
  3. 错误推断法
  4. 因果图法
  5. 场景法

5.4:测试用例操作步骤 
1)在设计编写测试用例时,首先要从测试用例库中选择相应功能的测试用例,在原有测试用例的基础上依据系统需求文档对测试用例的进行修改、更新,评审通过后将使用该测试用例测试被测系统。 
2)在测试的执行过程中和进行回归测试后,对已设计的测试用例进行维护更新。


5.5:配置测试的环境

  1. APP测试

操作系统:Windows(7、8、10)、macOS 10.9以上、Android 4.0以上、iOS 9.0以上

Windows配置虚拟机,在各个虚拟机上装配不同的国外用户常用的杀毒软件

  1. Web网页测试
    浏览器:Chrome、Firefox、Opera、Safari、Edge、IE

6、测试方法制定阶段

6.1兼容性测试 --测试人员
兼容性测试是指测试软件是否可以成功移植到指定的硬件或者软件环境中,如在win10环境下可以运行,在win7环境下是否也可以正常运行。

6.2用户界面测试-UI测试  --测试人员
用户界面测试是指测试用户界面的风格是否满足客户要求,文字是否正确,页面是否美观,文字,图片组合是否完美,操作是否友好等等。UI 测试的目标是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏览功能。确保用户界面符合公司或行业的标准。包括用户友好性、人性化、易操作性测试。

6.3:随机测试

随机测试没有书面测试用例、记录期望结果、检查列表、脚本或指令的测试。主要是根据测试者的经验对软件进行功能和性能抽查。随机测试是根据测试说明书执行用例测试的重要补充手段,是保证测试覆盖完整性的有效方式和过程。

随机测试主要是对被测软件的一些重要功能进行复测,也包括测试那些当前的测试样例 没有覆盖到的部分。另外,对于软件更新和新增加的功能要重点测试。重点对一些bug所在的模块进行测试。可以结合回归测试一起进行

6.4:功能测试

  软件测试人员以用户的角度,通过各种输入和观察软件的各种输出结果来发现软件存在的缺陷,而不关心程序具体如何实现的一种软件测试方法。

如:登录功能测试,主要输入正确的账号和密码或错误的账号密码验证是否能登录成功

7、测试执行阶段

7.1测试准入的条件

  1. 不接受无详细需求文档和开发说明的项目;
    2)需要测试的项目至少提前2个工作日提交测试进行需求分析 ;
    3)开发人员经过自测通过,至少保证程序可以正常运行;对应的功能在正常流程下是可以正常使用。 

7.2版本测试功能迭代测试

功能测试

  1. 在测试用例库中导入和版本有关的全部测试用例
  2. 按软件的功能顺序分布依次测试
  3. 注册模块:验证注册的邮箱或号码是否有效、验证码是否有效、验证码是能正常获取、密码是否按需求限制、使用条款是否勾选、注册成功后是否能正常登录
  4. 登录模块:账号密码不正确是否能登录、密码能否显示、是否能记住密码
  5. 忘记密码模块:验证码能否正常收发、密码是否按需求限制、修改过后新密码能否正常登录
  6. 首页模块:各个列表的服务器信息是否能正常显示、收藏功能是否正常、线路在各种网络环境下是否可以连接、服务器连接之后是否起到作用、服务器连接断开是否正常、线路收索功能是否能正常搜索、协议切换是否正常、协议作用是否发挥出来
  7. 购买模块:套餐是否可以正常购买、付费用户是否可以购买别的套餐、退款用户能否直接购买、支付页面是否可以正常的跳转
  8. 用户信息模块:手机号码&邮箱号码是否可以正常绑定或更换、是否可以绑定或更换成无效的手机号码&邮箱、密码更换是否按需求限制弹出
  9. 其他模块:页面显示是否清晰、链接跳转是否正常、消息弹窗是否能正常
  10. 版本迭代新增模块:按需求文档以及更新的测试用例测试进行重点测试

兼容性测试:Windows(7、8、10)、macOS 10.9以上、Android 4.0以上、iOS 9.0以上等设备进行安装,进行随机测试

Win操作系统下安装是否被杀毒软件警告测试:

在另一台设备或者虚拟机上安装国外的杀毒软件如:

美国:Symantec(赛门铁克)、McAfee(麦克菲)、Fortinet(飞塔)、Windows Live OneCare(微软)
日本:PC-cillin(趋势)
韩国:Ahnlab(安博士)、Virus Chaser(驱逐舰)
英国:Sophos(牛津)、Prevx1
芬兰:F-Secure
德国:Antivir(小红伞)
西班牙:Panda(熊猫)
印度:Rudra

然后进行安装使用测试,观察是否会被查杀

7.3:web网站测试:测试首页与各个页面的链接是否可以正常跳转、

链接跳转位置是否正确、页面是否正常、在各种浏览器(如:Chrome、Firefox、Opera、Safari、Edge、IE)上显示是否正常、在不同分辨率下显示是否正常

                  

8、bug管理

BUG状态

●未打开 

1)新创建的bug; 

2)已解决但未验证的bug;

●打开 

正在讨论的bug

●已确认 

通过讨论已确认的bug

●修复中

开发打开bug,正在修复

●挂起 
开发打开等待修复
●待测试
等待测试人员进行验收测试
●已解决 
测试人员验收测试结束后,没有问题 
●重新打开 
测试人员验收测试后,发现并未修复重新打开给开发 
●已完成

测试人员验收后没有问题,开发人员将状态改成已完成

BUG优先级

●高
阻止与此密切相关功能的进一步测试,需要立即修复。

如:验证码收不到
●中 
必须修改,不一定马上修改,必须修改,发版前必须修正。

如:密码位数没有限制
●低 
对系统的影响较小,如果时间允许应该修改。

如:文字错误

BUG严重等级

●严重(一类)

不能执行正常工作功能或重要功能,因软件原因导致系统死机等,须马上修正致命错误。

通常有如下情况:

1)系统停机(含软件、硬件)或非法退出,且无法通过重启恢复;

2)系统死循环;

3)与数据库连接错误;

4)数据库发生死锁或程序原因导致数据库断连;

5)数据通讯错误或接口不通;

6)重要功能无法正常使用、功能不符合用户需求。

●一般(二类)

影响系统功能或操作,应用模块错误使业务中止无法进行后续操作,主要功能存在严重缺陷,影响到产品的使用,但不会影响到系统稳定性。

具体基本上可分为:

1)业务流程错误或不完整;

2)业务数据来源不正确、业务数据紊乱或丢失;

3)业务数据保存不完整或无法保存到数据库;

4)部分功能使用存在问题,不影响业务继续开展,但造成使用障碍;

5)初始化未满足客户要求或初始化错误;

6)功能点能实现,但结果错误;

7)缺少数据有效性检查或检查不合理;

8)删除操作不给提示;

9)日志记录信息不正确或应记录而未记录;

10)数据库的表、业务规则、缺省值未加完整性等约束条件;

11)在产品声明支持的不同平台下,出现部分一般交易无法使用或错误;

12)系统某些查询、打印等实时性要求不高的辅助功能无法正常使用。

●轻微(三类)

使操作者不合理或者不方便或操作遇到麻烦,但它不影响执行工作功能或重要功能,次要功能,对产品使用影响不大。例如:程序在一些显示上不美观,不符合用户习惯,或是一些文字的错误。 

具体基本上可分为:

1)缺少产品使用、帮助文档、系统安装或配置方面需要信息;

2)联机帮助、脱机手册与实际系统不匹配;

3)系统版本说明不正确;

4)提示说明未采用行业规范语言;

5)显示格式不规范;

6)界面不整齐;

7)软件界面、菜单位置、工具条位置、相应提示不美观,但不影响使用;

8)辅助说明描述不清楚;

9)提示窗口描述清楚;

10)输入输出不规范;

11)可输入区域和只读区域没有明显的区分标志。

BUG书写规范

测试人员BUG提交 

1)主题

●用一个简短的句子描述问题,不要写成一大段

●描述问题时要详细、简练、抓住要点,直接切入正题,不要罗嗦

●不要夸大或缩小问题的严重程度

2)步骤 

●用数字编号,一步步的描述重现问题的所有操作步骤

●尽量用动词作为开头,描述每个步骤。如:打开、点击、设置、选择、插入、双击等

●提供bug产生的每个步骤的截图 

9、标准文档

《测试计划》

《测试用例》

《测试报告》

总结
感谢每一个认真阅读我文章的人!!!

如果下面这些资料用得到的话可以直接拿走:

1、自学开发或者测试必备的完整项目源码与环境

2、测试工作中所有模板(测试计划、测试用例、测试报告等)

3、软件测试经典面试题

4、Python/Java自动化测试实战.pdf

5、Jmeter/postman接口测试全套视频获取

6、Python学习路线图

                                

重点:配套学习资料和视频教学

那么在这里我也精心准备了上述大纲的详细资料包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。如下,需要的点击下方名片加我VX免费领取。

                      

 

 

 

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

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

相关文章

当你开始学习 Python 时,这是一个简单的学习计划及当你初学 Python 时,这里有几个建议

当你开始学习 Python 时,这是一个简单的学习计划: 1.入门 安装Python环境并熟悉基本的Python语法 熟悉Python的基本数据类型,例如数字、字符串和列表 学习控制流程,例如条件语句和循环语句 掌握函数和模块的基本知识 2.进阶 …

最近我的视频播放浅学总结

因为想做一个类似苹果的同播共享功能,这一段时间对音视频做了一些浅浅的学习,现简单总结记录。 我的需求是找到一个尽可能简单的方案来两人播放一段视频,并且能够进度和操作同步,所以基本不能有延迟,同时能够显示WebV…

转转上门履约的LBS实践

文章目录1 什么是LBS2 名词解释3 业务简介4 基于围栏的曝光下单和分配订单4.1 曝光下单4.1.1 初筛:最小覆盖区域矩形4.1.2 精筛:射线法精确匹配4.1.3 简单的检索流程4.1.4 检索索引介绍4.2 分配订单5 基于定位服务的路线规划、自主订单调度5.1 路线规划5…

ExSwin-Unet 论文研读

ExSwin-Unet摘要1 引言2 方法2.1 基于窗口的注意力块2.2 外部注意力块2.3 不平衡的 Unet 架构2.4 自适应加权调整2.5 双重损失函数3 实验结果3.1 数据集3.2 实现细节3.3 与 SOTA 方法的比较3.4 消融研究4 讨论和限制5 结论数据集来源: https://feta.grand-challenge…

任务类风险漏洞挖掘思路

任务类风险定义: 大部分游戏都离不开任务,游戏往往也会借助任务,来引导玩家上手,了解游戏背景,增加游戏玩法,提升游戏趣味性。任务就像线索,将游戏的各个章节,各种玩法,…

【JavaWeb】数据链路层协议——以太网 + 应用层协议——DNS

以太网 以太网不是一个具体的网络,而是一个技术标准,主要应用于数据链路层和物理层。 以太网数据帧结构 以太网的数据帧结构由三部分构成: 帧头 载荷 帧尾 其中的MAC地址是六位,这样就比IPV4所表示的地址大很多,…

北京移动CM311-5s-ZG_GK6323V100C_2+8_免拆一键卡刷固件包

北京移动CM311-5s-ZG_GK6323V100C_28_免拆一键卡刷固件包 特点: 1、适用于对应型号的电视盒子刷机; 2、开放原厂固件屏蔽的市场安装和u盘安装apk; 3、修改dns,三网通用; 4、大量精简内置的没用的软件,…

个人网站如何集成QQ快捷登录功能?

目录 一、网站集成QQ快捷登录的好处 二、网站接入QQ快捷登录具体步骤 (1)登录到QQ互联官网 (2)进行个人开发者认证 (3)创建网站应用 (4)填写网站资料 三、如何在本地开发环境…

Linux- 系统随你玩之--好用到炸裂的系统级监控、诊断工具

文章目录1、前言2、lsof介绍2.1、问题来了: 所有用户都可以采用该命令吗?3、 服务器安装lsof3.1、安装3.2、检查安装是否正常。4、lsof 命令4.1、常用功能选项4.2、输出内容4.2.1 、FD和 TYPE列5、 lsof 命令实操常见用法6 、常用组合命令7、 结语1、前言…

Android开发如何自定义View实现圆弧进度效果

在Android开发中,通过自定义View实现自己想要的效果是作为android开发程序员的一项必备技能,自定义View对于android开发来说也是比较难的一项技术。 涉及到的知识Canvas(画布),Paint(画笔),自定…

测试人员如何在测试环境数据库批量生成测试数据?方案分享

测试人员为了测试某个特定场景,往往需要在测试环境数据库中插入特定的测试数据来满足需求;性能测试时,常需要在测试环境生成大量可用测试数据来支持性能测试;建设持续集成持续交付体系时,我们往往也需要在测试环境生成…

Linux基础命令-nice调整进程的优先级

文章目录 Nice 命令介绍 语法格式 常用参数 参考实例 1 调整bash的优先级为-10 2 调整脚本的优先级为6 3 调整指令的优先级 4 默认使用nice命令调整优先级 命令总结 Nice 命令介绍 nice命令的主要功能是用于调整进程的优先级,合理分配系统资源。Linux系…

代码随想录算法训练营day47 |动态规划 198打家劫舍 213打家劫舍II 337打家劫舍III

day47198.打家劫舍1.确定dp数组(dp table)以及下标的含义2.确定递推公式3.dp数组如何初始化4.确定遍历顺序5.举例推导dp数组213.打家劫舍II情况一:考虑不包含首尾元素情况二:考虑包含首元素,不包含尾元素情况三&#x…

taobao.item.img.delete( 删除商品图片 )

¥开放平台免费API必须用户授权 删除商品图片 公共参数 请求地址: HTTP地址:http://gw.api.taobao.com/router/rest 公共请求参数: 公共响应参数: 请求参数 响应参数 点击获取key和secret 请求示例 TaobaoClient client new DefaultTaobaoClient(url…

论坛性能测试难点有哪些?

1 测试工具方面 用户和业务模型分析搭建合适的脚本开发(不根据用户和业务的模型来开发脚本,认为要回归成功即可)合适的需求分析转化为场景设计(不知道如何根据需求进行场景设计)大容量系统的数据生成和使用大型系统的…

MyBatis-Plus框架解析?

简单介绍:MyBatis-Plus(简称 MP)(由苞米豆公司开源)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。MP会内置集成部分SQL方法,可以直接…

错误:PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。“+文件路径“的解决方案

最近在使用python进行筛选图片的时候,想到用python里面的os库进行图片的删除。 具体筛选方法就是,删除掉图片长度或宽度小于100像素的图片,示例代码如下所示: for file in os.listdir(img_path):if file .split( . )[ - 1 ] j…

【OJ比赛日历】快周末了,不来一场比赛吗? #03.04-03.10 #12场

CompHub 实时聚合多平台的数据类(Kaggle、天池…)和OJ类(Leetcode、牛客…)比赛。本账号同时会推送最新的比赛消息,欢迎关注!更多比赛信息见 CompHub主页 或 点击文末阅读原文以下信息仅供参考,以比赛官网为准目录2023-03-04&…

一文说清Kubernetes的本质

文章目录Kubernetes解决了什么问题?Kubernetes的全局架构Kubernetes的设计思想Kubernetes的核心功能Kubernetes如何启动一个容器化任务?Kubernetes解决了什么问题? 编排?调度?容器云?还是集群管理&#xf…

Python 虚拟环境的使用

PyCharm 创建的虚拟环境与使用 workon 命令创建的虚拟环境在本质上没有区别,它们都是 Python 的虚拟环境。 使用 PyCharm 创建工程时,使用可以使用曾经工程的虚拟环境,或者新建一个虚拟环境来安装 Python 的库,又或者使用 workon…