当前位置: 首页 > news >正文

软件测试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、测试组长、测试工程师很清晰的明白,软件测试周期中每个时段该去怎么做。

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

相关文章:

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

目录 1. 概述 2. 软件测试流程 3. 软件测试周期人员活动图 4. 总结 1. 概述 1.1 目的 有效的保证软件质量; 有效的制定不同测试类型(软件系统测试、音频主观性测试、Field Trial、专项测试、自动化测试、性 能测试、用户体验测试)的软件…...

搭建交换机模拟环境及SSH连接,华为NSP软件入门使用教程

搭建交换机模拟环境及SSH连接,华为NSP软件入门使用教程 如果你是通过搜索搜到了这篇文章,那么一定是工作或者学习中需要用交换机,但是又没物理机测试学习,所以需要搭建本地的虚拟环境学习。 这篇文章是我进行交换机命令入门学习写…...

mineadmin 快速安装部署(docker环境)

前提条件:已安装docker 一、下载dnmp环境包 github地址:https://github.com/tomorrow-sky/dnmp gitee地址: https://gitee.com/chenjianchuan/dnmp 二、看一下dnmp包目录结构 三、打开docker-compose.yml 文件,将不需要…...

【力扣刷题练习】93. 复原 IP 地址

题目描述: 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 ‘.’ 分隔。 例如:“0.1.2.201” 和 “192.168.1.1” 是 有效 IP 地址,但是 “0.011…...

linux查看文件内容cat,less,vi,vim

学习记录 目录 catlessvi vim cat 输出 FILE 文件的全部内容 $ cat [OPTION] FILE示例 输出 file.txt 的全部内容 $ cat file.txt查看 file1.txt 与 file2.txt 连接后的内容 $ cat file1.txt file2.txt为什么名字叫 cat? 当然和猫咪没有关系。 cat 这里是 co…...

【恒源智享云】conda虚拟环境的操作指令

conda虚拟环境的操作指令 由于虚拟环境经常会用到,但是我总忘记,所以写个博客,留作自用。 在恒源智享云上,可以直接在终端界面输入指令,例如: 查看已经存在的虚拟环境列表 conda env list查看当前虚拟…...

Flask python 开发篇:项目布局

一、背景简介 Flask应用程序可以像单个文件一样简单。就像上一篇简单实现一个接口一样,所有的东西都在一个python文件内; 然而,当项目越来越大的时候,把所有代码放在单个文件中就有点不堪重负了。 Python 项目使用 包 来管理代码…...

docker 部署prometheus+grafana

首先进行部署docker 配置阿里云依赖: curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo # 配置centos 7的镜像源 yum install -y yum-utils device-mapper-persistent-data lvm2 # 安装一些后期或需要的的一下依…...

RNN实战

本主要是利用RNN做多分类任务,在熟悉RNN训练的过程中,我们可以理解 1)超参数 batch_size和pad_size对训练过程的影响。 2)文本处理过程中是如何将文本的文字表示转化为向量表示 3)RNN梯度消失和序列长度的关系 4&#…...

从GPT入门,到R语言基础与作图、回归模型分析、混合效应模型、多元统计分析及结构方程模型、Meta分析、随机森林模型及贝叶斯回归分析综合应用等专题及实战案例

目录 专题一 GPT及大语言模型简介及使用入门 专题二 GPT与R语言基础与作图(ggplot2) 专题三 GPT与R语言回归模型(lm&glm) 专题四 GPT与混合效应模型(lmm&glmm) 专题五 GPT与多元统计分析&…...

【Android】数据安全(一) —— Sqlite加密

目录 SQLCipherSQLiteCrypt其它 SQLCipher SQLCipher 是 SQLite 数据库的的开源扩展,使用了 256 位 AES 加密,支持跨平台、零配置、数据100%加密、加密开销低至 5 -15%、占用空间小、性能出色等优点,因此非常适合保护嵌入式应用程序数据库&a…...

云原生周刊:Helm Charts 深入探究 | 2024.3.11

开源项目推荐 Glasskube Glasskube 提供了一个用于 Kubernetes 的缺失的包管理器。它具有图形用户界面(GUI)和命令行界面(CLI)。Glasskube 包是具备依赖感知、GitOps 准备和可以通过中央公共包仓库自动更新的特性。 imgpkg imgpkg(发音为:"imag…...

【C++初阶】第六站 : 模板初阶

前言: 本章知识点:泛型编程、函数模板、类模板 专栏: C初阶 目录 泛型编程 函数模板 1.函数模板概念 2.函数模板格式 3.函数模板的原理 4.函数模板的实例化 5.模板参数的匹配原则 类模板 类模板的定义格式 类模板的实例化 泛型编程 如何实现一…...

训练保存模型checkpoint时报错SyntaxError: invalid syntax

在使用pytorch训练保存checkpoint时,出现如下报错: rootautodl-container-745411b452-c5cebfed:~/kvasir-seg-main# python train_transunet.py --loss_function"IoULoss" --training_augmentation0File "train_transunet.py", lin…...

虚拟机中安装Win98

文章目录 一、下载Win98二、制作可启动光盘三、VMware中安装Win98四、Qemu中安装Win981. Qemu的安装2. 安装Win98 Win98是微软于1998年发布的16位与32位混合的操作系统,也是一代经典的操作系统,期间出现了不少经典的软件与游戏,还是值得怀念的…...

《C++游戏编程入门》第4章 标准模板库: Hangman

《C游戏编程入门》第4章 标准模板库: Hangman 4.1 标准模板库4.2 vector04.heros_inventory2.cpp 4.3 使用迭代器04.heros_inventory3.cpp 4.4 使用算法04.high_scores.cpp 4.5 理解向量性能4.6 其他STL容器4.7 Hangman简介04.hangman.cpp 4.1 标准模板库 Standard Template L…...

Linux最小系统安装无法查看IP地址

1,出现原因 服务器重启完成之后,我们可以通过linux的指令 ip addr 来查询Linux系统的IP地址,具体信息如下: 从图中我们可以看到,并没有获取到linux系统的IP地址,这是为什么呢?这是由于启动服务器时未加载网…...

分享个好用的GPT网站

目录 一、背景 二、功能描述 1、写代码 2、联网查询 3、AI绘图 一、背景 我现在的开发工作都依靠ChatGPT,效率提升了好几倍。这样一来,我有更多时间来摸鱼,真是嘎嘎香~ ⭐⭐⭐点击直达 ⭐⭐⭐ 二、功能描述 1、写代码 import java.ut…...

hyperf 二十六 数据迁移 二

教程:Hyperf 参考文章hyperf 二十五 数据迁移 一-CSDN博客 根据之前写的数据迁移的文章,已经说明Hyperf\Database\Schema\Schema::create()实际运行Hyperf\Database\Schema\Grammars\MySqlGrammar::compileCreate()生成的sql字符串。 文档所谓"在…...

linux下如何hook第三方播放器的视频数据?

背景 作为显卡生产商,当用户使用我们的显卡硬解码播放视频时,如果出现比如花屏等问题,为了快速确定问题原因,我们需要一个工具来帮助判断出问题是出在原始视频端,亦或者是应用程序端,亦或者是显卡端。因此我们需要一种方法,来对目标播放器程序进行监控,并捕获到视频源的…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络&#xf…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

【2025年】解决Burpsuite抓不到https包的问题

环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一,概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本:2014.07; Kernel版本:Linux-3.10; 二,Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01),并让boo…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践

作者:吴岐诗,杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言:融合数据湖与数仓的创新之路 在数字金融时代,数据已成为金融机构的核心竞争力。杭银消费金…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...