字节测试工程师悄悄告诉我的软件测试、测试开发常用的测试策略与测试手段
目录
前言
测试策略的关注重点
测试策略主要内容
总体测试策略
初级版本测试策略
跟踪测试执行
版本质量评估
后续版本测试策略
发布质量评估
测试手段
前言
测试策略是指在特定环境约束之下,描述软件开发周期中关于测试原则、方法、方式的纲要,并阐述了它们之间如何配合,以高效地减少缺陷、提升质量。
测试策略中需要描述测试类型与测试目标以及测试方法,准入准出的条件,以及所需要的时间、资源与测试环境等等。
测试策略是一种因地制宜的策略模式,不同的公司,不同的团队,不同的项目对应的测试策略内容不同。
测试策略的关注重点
对于测试策略来说,重点关注的是以下内容:
- 测试的目标是什么
- 测试可能存在的风险是什么
- 测试的对象和范围是什么
- 如何安排各种测试活动
- 如何评价测试的效果
2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+https://www.bilibili.com/video/BV1AF411T7qJ/?spm_id_from=333.999.0.0
测试策略主要内容
总体测试策略
明确产品质量目标:需求覆盖度,测试用例执行度,安全测试,性能测试,代码规范,Bug 修复率,产品标准输出文档。
功能分类的测试策略:根据功能类型分配优先级,比如新功能的开发优先级为高,旧功能修改优先级为中,还有一些不用修改的旧功能优先级为低等等。
进行风险分析:提前识别项目中可能存在哪些会阻塞测试的风险,然后基于风险来调整测试策略,增加一些测试活动或者质量保证活动。基于风险来加强和降低测试投入。比如产品需求文档不清晰,测试设计时,需求文档更新不及时导致测试设计遗漏或不准确以及新版本修改的功能点修改的范围,没有明确的文档记录或者产品设计比较复杂,难以理解等等,根据存在的问题分配风险优先级。
总体测试安排:具体时间的分配安排,包括概念阶段、设计阶段、开发阶段、测试阶段、发布阶段。
初级版本测试策略
确定测试范围:对具体的功能以及功能的概述,包括这些功能对应的使用人群进行详细的说明。
明确测试目标:通过对象—测试方法—测试结果这样的方式来描述测试目标,强调这个版本测试的要求。
重点业务关注:列出重点需要关注的功能,并对重点内容进行详细的说明。
分配测试环境资源:测试资源分为人力和工具两部分,人力资源主要说明参与测试的人员,工具主要是指可能用到的其他软件,测试环境是指兼容的环境信息。
用例设计选择:管理用例的设计,根据测试用例选择策略,并总结完成情况。
冒烟测试策略:开发人员将版本转给测试人员时,测试人员先对这个版本进行一次测试,确认版本没有阻塞测试的问题,能够按照测试策略完成测试,如果存在影响测试的问题,及时找开发沟通解决。
文档管理:描述需求规格说明和用户手册以及部署实施的说明的完成情况和测试情况。
2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+https://www.bilibili.com/video/BV1AF411T7qJ/?spm_id_from=333.999.0.0
跟踪测试执行
跟踪测试用例执行情况:测试用例的用例总数执行数量,未通过数量,通过数量,通过率和未执行数量以及未执行原因。
缺陷跟踪:跟踪版本需要解决但还处于待修复状态 Bug 的解决情况。
版本质量评估
需求和实现的偏差:最终实现与需求描述的偏差,需要修复的问题和修复说明。
测试过程评估:测试方法回顾,总结比较有效的方式方法;测试投入回顾,投入资源的汇总;测试用例分析,测评测试用例的覆盖度并总结测试思路。
缺陷分析:在整个测试工作完成之后,总结功能特性缺陷密度是否正常,缺陷阶段分析是否正常。
后续版本测试策略
后面的版本会考虑到实际的产品研发情况和测试情况,而对测试策略进行调整,因此,后面版本的测试策略还需要增加回归测试策略和探索式测试策略的内容。
发布质量评估
确认总体测试策略中的质量目标是否完成,分析遗留缺陷,暂挂 Bug 的处理情况。
总结来说,测试策略主要内容都是围绕着测试策略的关注重点来展开介绍。
测试手段
不同的测试场景下采用不同的测试手段,根据测试场景选取正确的测试方法。常用的测试方法有黑盒测试、白盒测试、动态测试、静态测试、手工测试、自动化测试,这些都在之前的章节详细介绍过,这些测试方法就可以在测试策略里正确安排到适合的环境场景中。
2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+https://www.bilibili.com/video/BV1AF411T7qJ/?spm_id_from=333.999.0.0
相关文章:

字节测试工程师悄悄告诉我的软件测试、测试开发常用的测试策略与测试手段
目录 前言 测试策略的关注重点 测试策略主要内容 总体测试策略 初级版本测试策略 跟踪测试执行 版本质量评估 后续版本测试策略 发布质量评估 测试手段 前言 测试策略是指在特定环境约束之下,描述软件开发周期中关于测试原则、方法、方式的纲要ÿ…...
我常用的shell 进制转换工具
一、进制的一些基础知识 1. 二进制(binary) 二进制的取值是0和1; 前缀是 0b 2. 八进制(Octal) 八进制的取值是0-7;前缀是 O 3. 十进制(decimal) 十进制的取值是0-9;没有前缀 …...

手写vue(二)响应式实现
名词解释:vm:指Vue实例一、目标效果vue定义(1)新建vm时,可以通过一个data对象,或者data函数,其属性可以通过vm直接访问,而data对象可以通过vm._data获取(2)修…...
mysql数据库常问面试题
1、NOW()和CURRENT_DATE()有什么区别? NOW()命令用于显示当前年份,月份,日期,小时,分钟和秒。 CURRENT_DATE()仅显示当前年份,月份和日期。 2、CHAR和VARCHAR的区别? (1)…...

AI风暴 :文心一言 VS GPT-4
💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! 文心一言 VS GPT-4 文心一言:知识增强大语言模型百度全新一代知识增强大语言模型,文心大模型家族的新成员,能够与人对话互动&#…...

VR全景城市,用720全景树立城市形象,打造3D可视化智慧城市
随着城市化进程的加速,城市之间的竞争也日益激烈。城市管理者们需要寻求新的方式来提升城市的品牌形象和吸引力。在这个过程中,VR全景营销为城市提供了一种全新的营销手段,可以帮助提升城市的价值和吸引力。一、城市宣传新方式VR全景营销是一…...

javaweb窗口服务人员分析评价系统ssh
A)后台管理员模块:通过该功能模块,管理员可以修改自己的密码,并对管理员进行添加和删除操作。 B)注册用户模块:通过该功能模块,管理员可以查看注册用户的基本信息,对存在问题的用户进…...

树莓派Pico W无线开发板UDP协议MicroPython网络编程实践
树莓派Pico W无线开发板(简称Pico W)是树莓派基金会于2022年6月底推出的搭载无线通信芯片的树莓派Pico开发板。本文在介绍树莓派Pico W无线开发板接口信号和TCP/IP和UDP通信协议基础上,给出Pico W无线开发板的UDP协议MicroPython网络编程实例…...

跨域解决方案
跨域解决方案 1.跨域基本介绍 文档:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CORS 跨域问题是什么? 一句话:跨域指的是浏览器不能执行其他网站的脚本,它是由浏览器的同源策略造成的,是浏览器对 javascr…...
springboot的统一处理
在处理网络请求时,有一部分功能是需要抽出来统一处理的,与业务隔开。 登录校验 可以利用spring mvc的拦截器Interceptor,实现HandlerInterceptor接口即可。实现该接口后,会在把请求发给Controller之前进行拦截处理。 拦截器的实…...

C/C++每日一练(20230319)
目录 1. 反转链表 II 🌟🌟 2. 解码方法 🌟🌟 3. 擅长编码的小k 🌟🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 …...

GitHub 上有些什么好玩的项目?
前言 各个领域模块的都整理了一下,包含游戏、一些沙雕的工具、实用正经的工具以及一些相关的电商项目,希望他们可以给你学习的路上增加几分的乐趣,我们直接进入正题~ 游戏 1.吃豆人 一款经典的游戏开发案例,包括地图绘制、玩家控…...
蓝桥杯刷题第十二天
问题描述给定一个正整数 n ,请问 n 的十进制表示中末尾总共有几个 0 ?输入格式输入一行包含一个正整数 n。输出格式输出一个整数,表示答案。评测用例规模与约定对于所有评测用例,1 < n < 1000000000。运行限制最大运行时间&…...

开发也可以很快乐,让VSCode和CodeGPT带给你幸福感
CodeGPT 是一款 Visual Studio Code 扩展,可以通过官方的 OpenAI API 使用 GPT-3 (预训练生成式转换器) 模型,在多种编程语言中生成、解释、重构和文档化代码片段。CodeGPT 可用于各种任务,例如代码自动完成、生成和格式化。它还可以集成到代…...

【Linux】基本指令介绍
前言从今天开始,我们一起来学习Linux的相关知识,今天先来介绍怎么登录Linux,并且介绍一些Linux的基本指令。使用 XShell 远程登录 Linux很多同学的 Linux 启动进入图形化的桌面. 这个东西大家以后就可以忘记了. 以后的工作中 没有机会 使用图…...
JQuery介绍
文章目录一. JQuery介绍二. JQuery使用三. JQuery选择器四. JQuery选择集过滤五.JQuery选择集转移六. JQuery获取和操作标签内容七. JQuery获取和设置元素属性八. JQuery事件九.JQuery事件代理- 事件冒泡- 事件绑定的问题- 事件代理一. JQuery介绍 定义: jquery是JS的一个函数…...

Selenium基础篇之八大元素定位方式
文章目录前言一、如何进行元素定位?1.右击元素-检查2.F12-选择工具点击元素3.借助selenium IDE二、八大元素定位方式1.ID1.1 方法1.2 举例1.3 代码1.4 截图2.NAME2.1 方法2.2 举例2.3 代码2.4 截图3.CLASS_NAME3.1 方法3.2 举例3.3 代码3.4 截图4.TAG_NAME4.1 方法4…...

C语言的灵魂---指针(基础)
C语言灵魂指针1.什么是指针?2.指针的大小3.指针的分类3.1比较常规的指针类型3.2指针的解引用操作3.3野指针野指针的成因:4.指针运算4.1指针加减整数4.2指针-指针1.什么是指针? 这个问题我们通常解释为两种情况: 1.指针本质&#…...
带你一文透彻学习【PyTorch深度学习实践】分篇——线性模型 梯度下降
分享给大家一段我国著名作家、散文家史铁生先生的一段话: 把路想象的越是坎坷就越是害怕,把山想象的越是险峻就越会胆怯,把别人想象的越是优秀就越是不敢去接近。惯于这样想象的人,是天生谦卑的人。 --------史铁生《关于恐惧》 🎯作者主页:追光者♂🔥 �…...
Javascript如何截取含有表情的字符串
Javascript如何截取含有表情的字符串 一、说说背景 社区社交应用中,难免会有输入用户昵称的操作,如果用户老老实实的输入中文汉字或者英文字母,那当然没啥问题,我们能够轻松的处理字符串的截取,产品说按多少字符截取…...
【Linux】shell脚本忽略错误继续执行
在 shell 脚本中,可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行,可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令,并忽略错误 rm somefile…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...

基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...