史上最全测试流程详解----超详细_你泡不上的大林的博客-程序员宝宝

技术标签: 测试类型  测试流程图  测试工程师  测试流程  业务流程测试  

前言-----

对于测试流程基本很多做过测试的大牛,小哥哥,小姐姐都能说出个十之八九,但是对于细节,可能还需要一些整理文件,这不,我整理了一些测试的全部流程,希望能给大家带来帮助,有不妥的地方,请大家指正。

测试准备阶段

 一.测试需求文档

1. 产品需求文档、产品原型图、接口说明文档以及设计说明文档等应齐全

---重点:需求文档分析
 了解熟悉业务,分析需求测试点

(1)确认功能(业务功能,辅助功能,数据约束,易用性需求,编辑约束,参数需求,权限需求,性能约束)

(2)场景分析(考虑场景调用者和系统内部各个场景之间联系)

(3)挖掘隐性需求(常用业务流程以及各分支)

二.测试计划

1.编写目的
此文档根据项目需求文档,制定测试策略、评估测试风险,确定所需的资源,并对测试的工作量进行估计,进行人员和进度安排,并且列出测试项目的可交付元素。
2.参考文档
详细设计文档,设计原型
3.测试概要
(1)测试目标
通过测试,达到以下目标:
测试已实现的产品是否达到设计的要求,包括:各个功能点是否以实现,业务流程是否正确。
产品规定的操作和系统运行稳定。
Bug数和缺陷率控制在可接收的范围之内,遗留BUG一般不超过所有BUG的10%
(2)测试范围
列出测试最终需要交付的功能模块列表
(3)测试人力资源
(4)测试环境:服务器环境,终端环境,网络环境
(5)bug管理工具
4.测试规范
开始测试标准:代码编译通过,软件可以争取安装运行,实现功能与产品设计出人,冒烟测试通过
中断测试标准:安装无法正确完成,程序代码编译不通过,系统服务异常,发现阻塞功能的bug
5.bug规范
致命,严重,一般,建议
6.测试策略
冒烟测试:依据开发提测时间变动
第一轮功能测试:执行测试用例,包括边界值测试,兼容性测试,易用性测试,用户界面测试,安全性测试
第二轮功能测试:bug复测及功能验证
回归测试:全面回归测试
性能测试:需确认具体性能测试方案和工具
发布测试
测试报告总结
7.测试风险
测试本身(测试时间/测试技术/开发进度延误/难以修复缺陷/其它原因)
8.测试输出文档
测试计划
测试用例
测试bug单
测试报告


三.测试用例

测试需求分析和业务流程分析

1.设计方法:
等价类划分法(将测试的范围划分成几个互不相交的子集)
边界值分析法(选出的测试用例,应选取正好等于、刚刚大于、刚刚小于边界的值)
错误推测法(在测试程序时,人们可以根据经验或直觉推测程序中可能存在的各种错误)
判定表法(适合于逻辑判断复杂的场景,通过穷举条件获得结果,对结果再进行优化合并,会得到一个判断清晰的策略)
正交实验法(在各因素互相独立的情况下,设计出一种特殊的表格,找出能以少数替代全面的测试用例)
还有其它场景法和状态迁移法等

2.测试用例八要素:用例编号,测试项目,测试标题,重要级别,预置条件,测试输入,操作步骤,预期输出
(1) 用例编号(规则:由字符和数字组成的字符串,具有唯一性,易识别性)
(2) 测试项目(对应测试用例编号中的测试子项名 系统测试
(3) 测试标题(体现测试出发点关注点以及测试用例期盼的测试结果)
(4) 重要级别、优先级别(重要级别一般分为高中低 )
(5) 预置条件:测试用例在执行时需要满足一些前提条件,环境的设置
(6) 测试输入(测试执行中需要加工的外部信息,避免用描述性语言,要具体,根据测试用例具体情况,有手工输入,文件,数据库记录)
(7) 操作步骤:执行当前用例需要经过的操作步骤,需要明确的给出每一个步骤的描述
(8) 预期输出:需要判断测试对象是否正常工作

测试阶段

一.测试执行

1.测试环境搭建
测试环境:硬件环境,软件环境
硬件环境:测试必须的服务器,客户端,网络连接设备,以及打印机/扫描仪等辅助硬件设备构成的环境
软件环境:被测软件运行的操作系统,数据库以及其它应用软件构成的环境
搭建测试环境的准备工作:
安装工具:虚拟机
虚拟机优点:运行在主机上

二.执行测试用例
根据测试用例优先级来执行测试用例

-----测试关注点

1. 根据UI效果图进行UI测试

(1)、观察APP的用户界面(如菜单、对话框、窗口和其它可规控件)是否符合UI稿

(2)、不同的连接页面之间导航链接是否有效,是否跳转是否正确

(3)、旋转手机,确保程序不退出,页面排版无异常

(5)、输入框说明文字的内容与产品需求一致

(6)、某页无数据时、断网时、有网但接口异常时的状态页是否和UI一致

2. 功能测试时主要依据编写的功能测试用例进行软件功能的测试

3. 涉及的测试主要包括基本功能测试,逻辑测试,安装、卸载、运行测试,中断测试,异常处理(包括网络突然断开或者网速过慢、机器内存不足等异常情况的处理)测试

(1)、App安装完成后是否能正常启动,且打开速度控制在预期时间内

(2)、切换后台再切换前台的操作对当前状态如登陆、当前页、数据刷新的影响

(3)、强制杀掉APP进程再启动对当前状态如登陆、当前页、数据刷新的影响

(4)、登陆验证/免密登陆时的手势密码和指纹是否正常符合产品需求

(5)、对于有数据交换的页面,每个页面都必需要进行前后台切换、锁屏解锁的测试,这种页面最容易出现崩溃

(6)、同一用户在多个终端先后登陆时,APP是否有正常符合产品需求的处理

(7)、App使用过程中有电话进来的中断测试,与文件下载、音乐播放、等应用的交叉情况测试

(8)、很多应用会支持缓存数据,测试在断网启动或从有网到无网时是否可以浏览缓存数据

9)、软件在不同操作系统及版本(Android、iOS、)下安装是否正常

10)、软件安装后的是否能够正常运行,安装后的文件夹及文件是否写到了指定的目录里,安装后没有生成多余的目录结构和文件

11)、软件安装过程是否可以取消

12)、软件安装过程中意外情况的处理是否符合需求(如死机,重启,断电)

13)、安装空间不足时是否有相应提示

14)、对于需要通过网络验证之类的安装,在断网情况下尝试一下

15)、重复安装应该有提示iOS没有提示

16)、升级安装时,版本更新链接有效,比如后台设置的版本白名单

17)、使用各种方式卸载程序,如直接删除安装文件夹卸载是否有提示信息、长按图标卸载、手机设置里卸载、第三方应用卸载iOS卸载没有提示,Android安装时会闪退(偶现)

18)、测试卸载后文件是否全部删除所有的安装文件夹

19)、卸载过程中出现的意外情况的测试(如死机、断电、重启)

20)、卸载是否支持取消功能,单击取消后软件卸载的情况

4. 兼容性及适配测试

  1. 硬件的适配:不同手机厂商、硬件性能,不同屏幕大小的适配;

如:

厂商:华为型号:mate30Pro,Android版本:Android10,屏幕:6.0英寸,分辨率:2400x1176像素

厂商:苹果,型号:苹果XSmax,手机版本:iOS11,屏幕:6.0英寸,分辨率:2688x1224像素

(2) iOS版本的兼容:IOS 6版本以上;Andriod 5版本以上等

(3) 不同分辨率屏幕的适配:移动设备的分辨率多种多样,如果app没有做比较合适的处理就可能会显示不好,甚至影响功能的操作。

(4) 兼容性测试必须在一定数量的真机上进行,由于真机类型过多,尤其Android在做兼容性测试时,可以选取典型的几种运用较多的真机,进行兼容性测试

5)与本机已经安装的App是否兼容

6)在各种系统、系统版本的不同手机上测试登陆,卸载,注册登陆修改密码等功能

7)UI层的兼容,界面的显示根据不同尺寸手机是否自适应

8)在各种系统、系统版本的不同手机上进行全方面的功能测试,如使用每一个iOS版本的iPhone上测试“我的银行卡”模块的提现功能

9)基于开发环境和生产环境的不同,检验在各种网络连接下(WiFi、2G/3G/4G/5G等),App的数据和运用是否正确

5. 安全性测试
1.软件权限 

1扣费风险:包括短信、拨打电话、连接网络等

2限制/允许使用手机拍照或录音

3限制/允许使用手机读取用户数据,手机信息、联系人信息等

4限制/允许使用手机写入用户数据 

5没有用户的允许, 应用程序不能预先设定自动启动

6对App的输入有效性校验、认证、授权、数据加密等方面进行检测 

7没有用户的允许, 应用程序不能预先设定自动启动

8手机能控制该APP能否使用Wi-Fi和移动数据

2.数据安全性 

1如果数据库中重要的数据正要被重写,应及时告知用户 

2在数据删除之前,应用程序应当通知用户或者应用程序提供一个“取消”命令的操作。 

3对密码长度和复杂度的安全要求

4当将密码或其他的敏感数据输人到应用程序时, 其不会被储存在设备中, 同时密码也不会被解码

5当应用程序处理明细或其它的敏感数据时,不以明文形式将数据写到其他单独的文件或者临时文件中

6. 接口测试

1)测试api网关接口是否请求正常

(2)Get,post发送和返回是否请求正常

(3)查看请求参数和返回参数结果是否正常

(测试接口工具:APIpost jmeter)

7. 性能测试

(1) 客户端性能测试重点关注:安装卸载时间、启动时间、页面加载时间、主要功能占用的CPU、内存、流量、耗电量等,以及与同类产品相比较是否有优势;

2) 运行过程中主要功能占用的CPU、内存、流量等可以借助开源工具emmagee(适用于Android)获取到;

(4) 至于服务器端的性能,主要利用接口对服务器施加压力,重点关注响应时间、吞吐量、并发数、事物通过率等,可以loadrunner、jmeter进行测试,也可以用fiddler Charles抓包来查看域名等是否正常。

8. 核心链路

-------核心链路测试

三.测试执行流程

冒烟测试-迭代测试(先功能后性能,回归测试)-发布测试
注:对应测试产出对应测试报告和bug清单,可以把bug提到缺陷管理库里
 

四.测试报告


测试结论(是否达到发布标准,是否可发布)
测试时间,测试人员(测试起止时间)
测试环境,测试设备(用到哪些测试收集,客户端环境,浏览器)
需求大纲(当前这个版本,包含哪些需求点)

测试用例报告(报告用例情况)
Bug数据分析(从多个维度分析:bug等级分布,遗留bug分析,bug类型分布。模块bug分布,bug激活次数分析)

已知风险、未知风险
测试总结(从测试角度,对版本存在的问题,提出建议)

线上阶段

        

 一.线上测试注意事项

1.如果没有白名单,这个时候是不能随便操作做数据的,测试人员能做的也就是点点,保证按钮、界面正常。如果是业务人员做好数据,测试人员要验证数据的准确性和界面显示无误。
2.如果有白名单,也不能随便操作数据,但是可以在容许的情况下,回归一遍线上测试,保证线上测试无误。

 二.后期维护

1.日常关注客诉和相关反馈,如果有线上bug,可以通过日志,后台奔溃记录来定位问题,之后商讨出修复策略

2.整理该项目测试总结

(1)整理该项目遗留,可推广等问题

(2)项目流程优化及功能优化等文档整理

(3)整理该项目相关文档并总结报告

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/jinglin1100/article/details/121610397

智能推荐

linux设置网卡速率_linux网口速率设置_Mr. Sun_的博客-程序员宝宝

ethtool# ethtool ethX //查询ethX网口基本设置# ethtool –h //显示ethtool的命令帮助(help)# ethtool –i ethX //查询ethX网口的相关信息# ethtool –d ethX //查询ethX网口注册性信息# ethtool –r ethX //重置ethX网口到自适应模式# ethtool –S ethX //查询ethX网口收发包统计# ethtool –s ethX [speed 10|1

鉴释×RT-Thread丨2020 RT-Thread开发者大会精彩回顾_2020rt-thread开发者大会传达了那些信息_鉴释的博客-程序员宝宝

12月21日,由鉴释与RT-Thread共同举办的2020RT-Thread开发者大会(RDC)在“中国硅谷”深圳如期举行,大会现场菁英荟萃,不仅有学术大咖们坐镇主题演讲,更有业内人士在不同专场分享宝贵经验,此外还有鉴释Lab的捉“虫”擂台赛,让工程师们在代码世界中战个痛快!12月21日,专注于深度静态代码分析领域的鉴释于大会现场与业界领先的物联网操作系统RT-Thread签署了战略合作备忘录,共同为RT-Thread及其物联网操作系统的终端用户提供基于深度静态代码扫描的源代码分析服务、软件开发生命周.

解决DWZ文件上传表单提交_Mydwr的博客-程序员宝宝

因为Ajax不支持enctype=”multipart/form-data” 所以用隐藏iframe来处理无刷新表单提交。比如:在a.html中,用b.html” style=”width:750px; border: 0px;”>而b.html中,用非AJAX的表单提交。如下:……至此,问题解决。

求大神解答:Jacobi迭代法matlab程序代码,我是个新手,试了一下输入了A矩阵,但这个函数一直运行不出来,是什么问题呢?_matlab运行不了jacobi_m0_46520981的博客-程序员宝宝

求大神解答:Jacobi迭代法matlab程序代码,我是个新手,试了一下输入了A矩阵,但这个函数一直运行不出来,是什么问题呢?function [k,d]=gjacobi(A)[n,n]=size(A);P0=eye(n);Ek=A;TZ=1;P0=eye(n);k=0;while TZ1k=k+1;Ak=abs(Ek-diag(diag(Ek)));[i,j]=find(Akmax...

如何使用Spring+SpringMVC+Mybatis开发实现个性化小说推荐系统 协同过滤推荐算法实现 基于用户、项目的协同过滤推荐 基于聚类、关联规则、内容推荐算法 WebNovelCFRS_linge511873822的博客-程序员宝宝

如何使用Spring+SpringMVC+Mybatis开发实现个性化小说推荐系统 协同过滤推荐算法实现 基于用户、项目的协同过滤推荐 基于聚类、关联规则、内容推荐算法 WebNovelCFRS一、项目简介1、开发工具和实现技术MyEclipse10/Eclipse/IDEA,jdk1.8,mysql5.5/mysql8,navicat数据库管理工具,tomcat7,SSM(spring+springmvc+mybatis)开发框架,jsp页面,javascript脚本,jquery脚本,bootst

【Vue基础】Vue基础自测45题_vue试卷_山清水秀林的博客-程序员宝宝

①Vue是一套构建用户界面的渐进式框架;与其他重量级框架不同的是,Vue 采用**自底向上增量开发**的设计。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。②核心理念组件化开发、数据驱动视图( 双向数据绑定 )MVC是前后端未分离时的分层开发概念,MVVM是前后端分离后的前端开发的概念;细说就是( 以下为个人理解,或有谬误,欢迎指正 ):MVC和MVVM中的Model层都用于数据操作,但是二者有本质区别,MVC中的Model是真正的服务端数据库,

随便推点

Windows 2016 出現 0xc0000135 ServerManager.exe 无法启用_server manager已停止工作_搬砖的工人的博客-程序员宝宝

问题:将 Windows Server 2016.NET Framework移除、IIS卸载后,Server Manager.exe、事件查看器等都无法正常开启。解决方案:在运行中,输入CMD,打开命令控制面板,输入DISM指令安装.NET Framework,命令如下:dism /online /enable-feature /featurename:NetFx4如...

用pandoc 2.5将tex转为docx_marrymiffy2016的博客-程序员宝宝

pandoc下载(免费)官网:http://www.pandoc.org/installing.html 如下:适用于 64位 windows 10 的安装msi文件:双击pandoc-2.5-windows-x86_64.msi按提示一步安装win+R 打开cmd cmd打开后默认地址在账户所在目录 即一般是c盘user账户下:如果.tex文件在D盘里的某文件...

Hibernate3.3.2+Spring2.5.5+Struts2.1.6+Extjs3.0.0 Annotations注解框架整合及其代码分享_yaerfeng的博客-程序员宝宝

原创整理不易,转载请注明出处:Hibernate3.3.2+Spring2.5.5+Struts2.1.6+Extjs3.0.0 Annotations注解框架整合及其代码分享代码下载地址:http://www.zuidaima.com/share/1780237805931520.htm 一、准备1. Hibernate: hibernate-distribution-3.3....

数据库学习笔记_Landing Guy的博客-程序员宝宝

数据库的基本概念1. 数据库的英文单词:DataBase简称DB2. 什么是数据库 * 用于存储和管理的数据仓库3. 数据库的特点: 1. 持久化存储数据的。其实数据库就是一个文件系统。 2. 方便存储和管理 3. 使用了统一的方式操作数据库---SQL4.常见的数据库软件 1. Microsoft SQL Server 2. MySql 3. Oracle 4. DB2SQL1. 什么是SQL?Structured Query Language:结构化查询语言其实就是

【论文阅读】An End-to-end Model for Entity-level Relation Extraction using Multi-instance Learning_今天NLP了吗的博客-程序员宝宝

EACL 2021https://github.com/lavis-nlp/jerex提出基于参考解析的多任务学习方法,实现端到端联合关系抽取。模型分为四部分:Entity Mention Localization用span的方法抽取文档中的实体,相比于BIO的方法,它更能检测重叠实体。对实体span做max-pooling提及分类器采用下面的式子。把span表示e(s)e(s)e(s)以及span大小的embeddingwk+1sw^s_{k+1}wk+1s​拼接起来,送入两层的前.

推荐文章

热门文章

相关标签