软件测试APP完整测试作业流程(附流程图),公司级软件测试流程化办公

目录

1. 概述

2. 软件测试流程

3. 软件测试周期人员活动图

4. 总结


1. 概述

1.1 目的

有效的保证软件质量;
有效的制定不同测试类型(软件系统测试、音频主观性测试、Field Trial、专项测试、自动化测试、性
能测试、用户体验测试)的软件测试计划;
按照计划进行测试,发现软件中存在的问题;
对软件中已经解决的问题进行有效的验证;
判定测试过程和问题验证的有效性。

1.2 适用范围

适用范围是参与手机产品软件测试的各测试工程师、测试模块组长、测试 PM。

1.3 执行原则

标准化作业,尊重事实;
测试工程师需要对手机各项功能持有疑问的态度来思考软件;
测试工程师需要主动与项目组的所有成员保持有效的沟通,以便更好地完成测试任务;
尽早发现问题,及时跟踪问题;


1.4 角色和职责

1.4.1 测试部门经理

1. 负责审核测试计划,监督计划的实施过程,确保计划的实施和按计划完成测试任务;
2. 制定、更新和维护软件测试流程;
3. 对发现的部门需要改进的问题提供解决方案;
4. 制定短期、长期的改进措施;进行评审和监督;
5. 监督新员工培训实施情况,对培训结果进行考核
6. 参与项目风险评估

1.4.2 测试 PM

1. 参与软件需求与 UI 评审
2. 编制 STP(软件测试计划),组建测试团队
3. 根据软件测试申请单的要求判定是否接受软件测试版本;达到软件测试标准安排系统测试;对
测试需求进行组内培训。
4.测试任务的分配,保证测试计划的按时完成,保障软件测试质量;测试过程进行跟踪;处理异常情况;定期发送测试报告(每一个软件升级版本)到测试部门经理、开发、各管理人员
5.跟进 BUG 的修改情况,组织 BUG 评审
6.组织项目风险评估

1.4.3 测试功能模块组长

1.保障所有项目所属模块的测试质量
2.参与软件需求评审
3.组织测试工程师编写测试用例以及测试用例的维护,并与测试 PM、开发一起进行用例评审
4.组内成员工作技能的培养与培训,组内成员的业绩考核
5.协助测试 PM 做好人员调配,跟进每个组员的任务进度
6.协助测试 PM 进行 BUG 评审

1.4.4 测试工程师

1. 按照测试计划进行测试的执行,测试用例在编写
2. 测试记录的整理,
3. Bug 的跟踪【包括:提交、验证、关闭 Bug】。
4. 参与 BUG 的评审
5. 定时完成学习计划并提交学习报告给组长


2. 软件测试流程

2.1 软件测试流程图

2.2 流程图解析

立项

对于立项,外研项目与内研项目的进入条件是分开说明的。对于外研项目,立项的条件需要满足如
下条件:
1. 方案商必须提供功能完整和稳定的软件版本,整合了提供的图铃、APK 等资源,以及有效的不
同的 IMEI 、蓝牙地址、 WIFI 地址
2. 方案商提供产品功能需求/设计说明书,并提供真实的硬件检验报告、系统测试报告、外场测试
报告
3. 方案商提供手机相关驱动,抓日志和版本升级的方法或工具
4. 测试样机到位
5. 项目进度表

对于内研项目,立项的条件只需要满足:
1. 测试部收到立项通知,软件产品功能需求/设计说明书都已提供到位
2. 测试样机到位
3. 项目进度表

当立项条件满足时,由测试部门经理指定测试 PM,由测试 PM 组织立项与后续的测试工作。

需求初审

测试 PM 组织各功能模块组长一起对需求进行审阅,完成三个任务:一是对文档进行评审,确认文
档是否符合质量标准以及需求的可行性,如对需求有疑问,或者对需求有建议要求以邮件的形式与需求输出人进行沟通,直到需求定稿;二是确定测试所需样机、SIM 卡、以及人力资源等;三是确定好软件测试策略,并输出《软件测试概要说明》给相关项目人员。《软件测试概要说明》主要包括如下方面:
1. 测试依据
a,软件需求文档
b,软件规格书
c,其他,如参考产品等
2. 测试资源
a,测试人员需求
b,测试样机需求
3. 测试策略
a,采取测试方法
b,采取哪些测试工具以及测试管理工具
c,对测试人员进行培训等

组建测试团队

测试 PM 根据在需求初审过程中各功能模块组长提供的测试人员名单,完成测试团队的组建。

需求分析

团队组建完毕后,测试 PM 组织组员进行需求分析,完成两项任务:一是进行组内需求培训,保证所有组员完全理解需求;二是分配测试用例编写或维护任务,确认测试用例完成日期。请注意:测试用例完成日期必须在软件版本发布测试之前。

测试设计

对于手机而言,测试设计主要包括测试用例的编写与评审。由于常规的测试点的用例都已经具备,这里主要针对新的需求与应用。


测试计划

当所有测试前的准备工作已经完成,测试 PM 就要根据开发时间表以及测试策略制定一个完整的软件测试计划(STP 文档),测试计划的依据主要是项目开发计划和测试需求分析结果。测试计划测试日程计划,主要是把测试分成哪些测试阶段(如单元测试、集成测试、系统测试阶段,外场测试、α、β测试阶段等),每个阶段的工作重点以及投入资源等。
计划赶不上变化,一份计划做的再好,当实际实施的时候就会发现往往很难按照原有计划开展。如在软件开发过程中资源匮乏、人员流动等都会对测试造成一定的影响。所以,这些就要求测试 PM 能够从宏观上来调控了。在变化面前能够做到应对自如、处乱不惊那是最好不过了。

测试执行

测试执行一般分为以下阶段:
确认测试→系统测试→验收测试→产品说明书 check,其中每个阶段还有回归测试验证问题。单元测试、集成测试目前暂无需求,后期项目可根据实际情况添加。
从测试的角度而言,测试执行过程是要考虑量和度的问题,就是指测试的范围与测试的程度的问
题。
从管理的角度而言,在有限的时间内,在人员有限甚至短缺的情况下,要考虑如何分工,如何合理地利用资源来开展测试。当然如下几个问题也需要考虑:
a, 当测试人员测试的执行不到位、敷衍了事时该如何解决?
b, 测试效率问题,怎样提高测试效率?
c, 根据版本的不同采取怎么样的测试策略,是全面测试、自由测试还是针对模块的测试

软件评估

这里评估指软件经过一轮又一轮测试后,确认软件无重大问题或者问题很少的情况下,对准备发布量产的软件进行评估,以确定是否能够投放市场。软件评估会议由软件测试 PM 组织,评估成员一般由软件开发 PM、软件测试 PM、营销人员、部门经理以及研发最高负责人等组成。

测试总结

项目已经发布量产,测试项目组可以通过各种方式对整个测试过程进行总结,可以是做的好的方
面的经验,也可以是不足之处以便后续项目避免。

测试维护

由于测试的不完全性,当软件正式 release 后,用户在使用过程中,难免遇到一些问题,有的甚至是严重性的问题,这就需要修改有关问题,修改后需要再次对软件进行测试、评估、发行。


3. 软件测试周期人员活动图

3.1 活动图

3.2 活动图描述

3.2.1 软件测试准备(S0~S5)

目的
1. 有效的做好测试准备工作,为测试的执行做好前期所需;
2. 按照需求制定好测试策略与测计划;
进入条件
1. 项目正式启动
2. 需求文档已经进行归档
输入
软件开发计划、软件开发时间表、软件产品功能需求/设计说明书等相关需求文档。
作业流程及其管理方法

输出

软件测试概要说明、软件测试计划(STP)、测试用例

3.2.2 测试执行阶段(S6)
3.2.2.1内研项目软件执行阶段流程图

流程图解析

根据整个软件测试执行过程,按时间分成三等分,分别为T1:测试初期、T2:测试中期、T3:测试后期

  1. T1:测试初期这个阶段,主要执行确认测试、基本功能的测试。确认测试的目标需要确保软件完全符合设计文档。基本功能的测试的重点是执行测试用例,尽可能多的去暴露基本功能的问题,测试的执行方式以执行测试用例为主。同时这个阶段,我们进行一次音频主观性测试,对各音频进行一次摸底测试,得出结论可由软、硬件开发工程师进行分析,确保音频不要因为硬件问题而导致出现不良效果。
  2. T2:测试中期采用自由测试为主,除了测试基本功能外,还需要重点测试性能、用户体验性测试、兼容性测试、音频主观性测试。其中性能测试可借助于自动化测试工具进行测试。另外这个时期需要外场测试的进入,测试目的是模拟动态环境下用户的使用过程下手机是否稳定。
  3. T3:测试后期阶段,这个阶段仍然需要执行多遍测试用例以确保基本功能的实现完全没有问题。
  4. 系统测试分为三个阶段,并不是单纯的时间三等分,而是每个时间段都需要达到测试目标。若没有达到测试目标,测试PM需要及时调节计划,并组织分析问题,避免因为测试不到位的原因导致项目延期。
3.2.2.2外研项目软件执行阶段流程图

流程图解析

  1. 1. 对于外研项目,我们只做验收测试,正常情况下我们只接受三个版本的验收测试。
  2. 2. 第一个版本期间需要执行文档确认测试确保手机功能完全符合设计文档,然后执行测试用例。由于验收版本的周期并不是很长,因此在第一个版本就需要进行外场测试和音频主观性测试,发现的问题需要责成方案商在第二个版本前修复。
  3. 3. 第二个版本,采用自由测试为主,让测试工程师自由发挥自己的思维去进行测试。同时这个阶段需要完成兼容性测试、自动化测试、性能测试。如果在第一个版本外场测试与音频主观性测试发现问题,也需要在这个版本进行回归验证。
  4. 4. 第三个版本,仍然需要执行测试用例,最终确保手机基本功能。
3.2.2.2软件测试执行阶段人员活动图

活动图描述

目的

  1. 有效的制定系统测试的软件测试计划;
  2. 按照计划进行测试,发现软件中的存在的问题(包括:界面、需求、功能、兼容性、性能等方面问题)。
  3. 对软件中已经解决的问题进行有效的验证;
  4. 判定测试过程和问题验证的有效性;

进入条件

  1. 完成系统测试计划和系统测试用例;
  2. 测试工程师领用了测试样机和相关的测试资源。
  3. 已确认软件测试申请、软件版本和Release Note。

输入

  1. 软件测试计划和软件测试用例。
  2. 软件版本;

作业流程及其管理方法

输出

每个新版本软件测试计划(Cycle)、测试报告(Cycle)、用户体验测试报告、音频主观性测试报告、兼容性测试报告、场测计划、场测报告

3.2.3测试扫尾工作(S7~S9)

目的

    1. 根据测试结果,组织软件评估,评断软件是否可发布量产标准
    2. 做好测试总结,积累好的经验,去除不好的东西

进入条件

  1. 完成了测试执行阶段,产品申请量产

作业流程及其管理方法

4. 总结

软件测试是程序的一种执行过程,目的是尽可能发现并改正被测试软件中的错误,提高软件的可靠性。它是软件生命周期中一项非常重要且非常复杂的工作,对软件可靠性保证具有极其重要的意义。测试流程制定的总目标是充分利用有限的人力和物力资源,高效率、高质量地完成软件测试任务。避免不足的测试使软件带着一些未揭露的隐藏错误投入运行,这将意味着更大的危险让用户承担。然而一个规范实用的流程,往往可以改善软件测试的效率。流程的制定为测试计划的制定、测试过程的执行提供了文档性的帮助。让每一个测试PM、测试组长、测试工程师很清晰的明白,软件测试周期中每个时段该去怎么做。

该流程的制定不是一成不变,在执行过程中若发现有不足之处,我们将更新此文档,直到完全适用于我们的作业流程。

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

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

相关文章

mysql 常用命令

1、显示锁的时间 show status like innodb_row_lock%;2、锁一行的方法 //开启 begin; //锁一行 select * from tbl_user where name 1aa1 for update;//解锁 commit;3、设置不自动提交 set autocommit 0; //自动提交 set autocommit 1;4、查看是否支持profile show vari…

go go.mod file not found in current directory or any parent directory

场景: 安装好 liteide 之后创建了第一个 “hello world” 的golang 项目,却报了如下错误。 原因分析: go 的环境配置问题。与 golang 的包管理有关。 解决方案: 如果你是 Windows 系统,快捷键 “WinR”&#xff0c…

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化

一、Jenkins搭建 参考《Docker 安装 Jenkins》 进入 jenkins 容器 CLI 界面 docker exec -itu root jenkins /bin/bash二、准备条件 1、替换镜像内源 为了安装wget,默认用yum会安装不上wget命令,参考文章《docker容器内如何更换yum源【只想换成国内…

EE5437-IOT(Lecture 07-Control Interface System)

Review: introduce the micro input device system(MIDS) • The calibration and testing has been covered • The introduction to filters with the example called Butterworth filter and the maths have been also demonstrated. …

vxe-table配合Export2Excel导出object类型数据{type,count}。表格数据呈现是利用插槽,导出只要count该怎么做

先贴一张数据来: 一、然后是vxe-grid的columns配置: 然后就正常用封装好的Export2Excel就行。 碰到一次在控制台报错: 没复现出来,大概就说是count咋样咋样。 以后碰到的话再说,各位要用的话也注意看看 二、或者 用js…

Unity笔记:C#基础(1)

杂项 虚函数 CSDN - C虚函数详解 cnblog - C#中的虚函数virtual 常量池与new 在C#中,string是不可变的,这意味着对string对象的操作通常会返回一个新的string对象,而不会修改原始的string对象。因此,几乎所有涉及更改string内…

redis最新版本在Windows系统上的安装

一、说明 这次安装操作主要是根据redis官网说明,一步步安装下来的,英语比较好的同学,可以直接看文章底部的超链接1,跳到官网按步操作即可。 目前redis的最新稳定版本为redis7.2。 二、Windows环境改造 Redis在Windows上不被官方…

学校里的软件测试专业技能到底怎样,为什么应届生都很难找工作?

大家好,今天和以为在学校教软件测试的老师聊了天,主要聊的主题是-为什么现在大专生就业这么困难。主要总结以下几点! 一是受当下大环境的影响(比如疫情、俄乌、单边主义等);二是今年的应届生实在太多&…

智慧城市的前景:数字孪生技术在智慧城市中的应用前景

目录 一、引言 二、数字孪生技术及其在智慧城市中的应用概述 三、数字孪生技术在智慧城市中的应用前景 1、城市规划与仿真模拟 2、智能交通与出行服务 3、智慧环保与可持续发展 4、智慧公共服务与社会治理 5、智慧能源与绿色建筑 四、数字孪生技术在智慧城市中的挑战与…

ACL的应用与ENSP配置

目录 ACL的定义 ACL的功能 访问控制列表的调用方向 访问控制列表类型 1、标准访问控制列表 2、扩展访问控制列表 访问控制列表的处理原则 ENSP调用命令 经典案例 tip:RFC 1918私有地址空间 ACL的定义 ACL,中文名称是“访问控制列表”&#xff…

PID控制器组(完整SCL代码)

PID控制器组不是什么新概念,是在PID控制器的基础上,利用面向对象的思想对对象进行封装 批量实例化。 1、增量式PID https://rxxw-control.blog.csdn.net/article/details/124363197https://rxxw-control.blog.csdn.net/article/details/1243631972、完全增量式PID https:/…

三井住友保险中国区信息技术部负责人陈婧,将出席“ISIG-RPA超级自动化产业发展峰会”

3月16日,第四届「ISIG中国产业智能大会」将在上海中庚聚龙酒店拉开序幕。本届大会由苏州市金融科技协会指导,企智未来科技(RPA中国、AIGC开放社区、LowCode低码时代)主办。大会旨在聚合每一位产业成员的力量,深入探索R…

蓝桥杯[OJ 2928]分糖果-CPP(贪心、字典序)

目录 一、题目描述: 二、整体思路 (一)字典序比较规则 (二)正确理解题意 (三)分类讨论 三、代码 一、题目描述: 二、整体思路 (一)字典序比较规则 首先要知道字典序是怎么比较大小的,简单来说按以下次序进行比较&am…

掌握Mongodb,看完这篇文章就够了

目录 1.概念 2.操作 2.1数据库操作 2.2集合操作 2.3数据操作 3.查询 4.常用技术 5.python与MongoDB 1.概念 MongoDB是一种非关系型数据库(NoSQL),它以灵活的文档存储格式(BSON)和强大的查询能…

Python网站的搭建和html基础

1.Python网站代码及讲解 一般我们搭建小型的网站就用flask库就行了。 (1)安装flask库 安装完python后,按住windows徽标键和r,弹出“运行”,在里面输入cmd。 回车打开,输入“pip install flask”。 (2&am…

Python爬虫实战第三例【三】【上】

零.实现目标 爬取视频网站视频 视频网站你们随意,在这里我选择飞某速(狗头保命)。 例如,作者上半年看过的“铃芽之旅”,突然想看了,但是在正版网站看要VIP,在盗版网站看又太卡了,…

POS 之 最终确定性

Gasper Casper 是一种能将特定区块更新为 最终确定 状态的机制,使网络的新加入者确信他们正在同步规范链。当区块链出现多个分叉时,分叉选择算法使用累计投票来确保节点可以轻松选择正确的分叉。 最终确定性 最终确定性是某些区块的属性,意味…

【Appium问题】每次启动appium都会安装一次uiautomator

问题 每次启动appium,都需要安装一次uiautomator2比较麻烦 解决 在配置文件capabilities 中增加参数skipServerInstallationTrue

如何实现无公网ip环境使用vscode远程ssh内网Linux系统写代码

文章目录 前言1、安装OpenSSH2、vscode配置ssh3. 局域网测试连接远程服务器4. 公网远程连接4.1 ubuntu安装cpolar内网穿透4.2 创建隧道映射4.3 测试公网远程连接 5. 配置固定TCP端口地址5.1 保留一个固定TCP端口地址5.2 配置固定TCP端口地址5.3 测试固定公网地址远程 前言 远程…

Java语法学习六之继承和多态(重要)

继承 为什么需要继承 Java中使用类对现实世界中实体来进行描述,类经过实例化之后的产物对象,则可以用来表示现实中的实体,但是现实世界错综复杂,事物之间可能会存在一些关联,那在设计程序是就需要考虑。 比如&#x…