【测试知识】业务面试问答突击版1
高内聚低耦合
高内聚指的是将相关的功能或数据组织在一起,使得模块内部的各个元素紧密地联系在一起,完成特定的任务。
低耦合指的是模块之间的依赖关系尽可能地降低,模块之间的接口简单清晰,减少模块之间的相互影响。
文章目录
- 整个项目开发过程中有哪些需要测试参与的环节
- 如何预估测试工作量
- 测试过程中如何保障测试用例能够及时更新
- 测试计划应该与哪些利益相关人员沟通
- 如何与开发沟通一个开发不认为是缺陷的问题
- 如何与开发沟通一个不总是能复现的缺陷
- 如何衡量和保证测试覆盖率
- beta测试的作用
- 冒烟测试后发现交付的软件达不到开始测试的标准怎么办
- a/b测试如何保证覆盖率
- 如果出现排期紧张,上线之前大量测试可能无法按时测试怎么办
- 测试中需要收集哪些日志,什么作用
整个项目开发过程中有哪些需要测试参与的环节
需求评审、代码设计评审、代码评审、测试评审、测试执行、缺陷跟进、上线评估、上线后的测评、线上数据分析、线上问题跟踪、回归测试自动化、定期的缺陷分析和用例/流程改进
如何预估测试工作量
根据测试计划,预估测试用例设计及评审、测试计划制定及评审、测试执行及缺陷跟进、上线准备、上线后的跟踪和数据分析、回归测试自动化分别所需要的时间,同事考虑测试过程中可能存在的风险(比如首次提测无法达到测试开始标准、对其他团队的依赖导致的延迟、可能的需求变更导致的测试范围变化等)给出对应的可能结果和应对方案
测试过程中如何保障测试用例能够及时更新
1、借助测试用例管理工具,比如禅道、testrail对测试用例进行版本管理
2、需求、设计或者实现发生变更时即使更新用例
3、定期的测试用例评审保证测试用例有效性
测试计划应该与哪些利益相关人员沟通
测试计划及相关开销、排期估计,需要与包括开发团队、产品经理、市场运营团队、项目经理、测试团队等所有利益相关者沟通,以确保测试范围和测试排期与项目的整体预期保持一致
如何与开发沟通一个开发不认为是缺陷的问题
1、从用户体验的角度看目前的行为是否合理
2、竞品比较,行业内其他类似的产品是如何处理的
3、邀请产品经理介入,询问他的意见
如何与开发沟通一个不总是能复现的缺陷
1、通过不同的测试条件(设置、数据、账号等)的组合尝试找出可能触发问题的场景
2、保留问题发生时的完整日志,尝试从日志中发现可能的错误
3、在缺陷报告中提供完整的场景描述、截图录屏、日志以及发生概率,配合开发人员做后续测试和分析
如何衡量和保证测试覆盖率
1、根据业务流程图、数据处理时序图、类图等设计文档检查用例对主要分支的覆盖程度
2、邀请产品经理、项目经理、开发团队、测试团队审核测试用例
3、根据测试过程中发现的问题对出现问题较多的功能加强用例覆盖
beta测试的作用
beta测试通常是指测试和缺陷修复完成之后,组织人力资源对项目进行集中测试。
组织形式可以是会议,也可以是发送请求测试邮件和在系统中搜集反馈,参与人员可以包括所有项目相关人员,也通常邀请其他图阿奴地人员来交叉测试和验收。
主要目的是尽可能的在上线之前发现可能遗漏的问题或者提升用户体验的建议
冒烟测试后发现交付的软件达不到开始测试的标准怎么办
冒烟测试用于验证软件的关键功能工作正常,通常是执行详细的功能测试或者回归测试的前提条件
1、测试计划中应该明确标注测试开始的标准(如冒烟测试中无重大问题,没有阻碍测试的重大缺陷)
2、冒烟测试后发现无法达到测试开始的标准,应该果断拒绝继续测试并且将问题反馈给所有相关人员
3、要求开发团队给出明确的下个版本交付的时间并说明对测试工作和整体项目排期可能造成的影响
4、对测试资源和进度进行重新安排和沟通已确保整体项目进度
a/b测试如何保证覆盖率
a/b测试是一种用户体验研究方法,通常针对两到三个不同的用户体验方案给出不同的代码实现,按比例随机分配用户到其中的某个方案,根据上线后的用户数据(点击率、购买率、存活率、注册率等)来决定哪个方案更受用户青睐
测试计划应该覆盖不同入口条件下的不同方案的组合测试,从而保证任何路径下用户的体验是完整合乎期待的
如果出现排期紧张,上线之前大量测试可能无法按时测试怎么办
1、根据现有数据提前预警和告知所有相关人员,提示可能的风险
2、提出可能的应对方案,包含合并和精简测试,扩充人员、倒休
3、对每种方案带来的优劣点做充分沟通保证团队达成一致
4、确定方案后给出新的估计和可能存在的风险
测试中需要收集哪些日志,什么作用
- 服务端测试:需要收集服务器日志,以便出现问题时,开发人员可以从日志中获取堆栈信息定位问题
- 自动化测试:采集测试执行的日志,追踪执行的步骤和可能抛出的异常
- 性能测试:采集系统资源使用数据和时间戳
- 客户端测试:再发现问题时需要采集发送的完整请求和响应消息内容
相关文章:

【测试知识】业务面试问答突击版1
高内聚低耦合 高内聚指的是将相关的功能或数据组织在一起,使得模块内部的各个元素紧密地联系在一起,完成特定的任务。 低耦合指的是模块之间的依赖关系尽可能地降低,模块之间的接口简单清晰,减少模块之间的相互影响。 文章目录 整…...

使用el-row及el-col页面缩放时出现空行解决方案
问题: 当缩放到90%或者110%,选中下拉后,下方就会出现空行 如下图所示: 关于el-row 和 el-col : 参数说明类型可选值默认值span栅格占据的列数number—24offset栅格左侧的间隔格数number—0push栅格向右移动格数number…...

java中几种对象存储(文件存储)中间件的介绍
一、前言 在博主得到系统中使用的对象存储主要有OSS(阿里云的对象存储) COS(腾讯云的对象存储)OBS(华为云的对象存储)还有就是MinIO 这些玩意。其实这种东西大差不差,几乎实现方式都是一样&…...

网络工程师——2024自学
一、怎样从零开始学习网络工程师 当今社会,人人离不开网络。整个IT互联网行业,最好入门的,网络工程师算是一个了。 什么是网络工程师呢,简单来说,就是互联网从设计、建设到运行和维护,都需要网络工程师来…...

SwiftUI的Picker
SwiftUI的Picker 本章来记录一下SwiftUI中三种不同Picker的用法 ,分别为normalPicker , wheelPicker, segmentedPicker 。可以根据不同需求展示不同的Picker import SwiftUIstruct PickerBootCamp: View {State var selection: String &quo…...

物联网技术助力智慧城市转型升级:智能、高效、可持续
目录 一、物联网技术概述及其在智慧城市中的应用 二、物联网技术助力智慧城市转型升级的路径 1、提升城市基础设施智能化水平 2、推动公共服务智能化升级 3、促进城市治理现代化 三、物联网技术助力智慧城市转型升级的成效与展望 1、成效显著 2、展望未来 四、物联网技…...

YOLOv7_pose-Openvino和ONNXRuntime推理【CPU】
纯检测系列: YOLOv5-Openvino和ONNXRuntime推理【CPU】 YOLOv6-Openvino和ONNXRuntime推理【CPU】 YOLOv8-Openvino和ONNXRuntime推理【CPU】 YOLOv7-Openvino和ONNXRuntime推理【CPU】 YOLOv9-Openvino和ONNXRuntime推理【CPU】 跟踪系列: YOLOv5/6/7-O…...

通过ACPI检测沙箱-反虚拟机
ACPI & ACPI table ACPI 表示高级配置和电源管理接口(Advanced Configuration and Power Management Interface),对于Windows2000,ACPI定义了Windows2000、BIOS和系统硬件之间的新型工作接口。这些新接口包括允许Windows 200…...

计算点集的最小外接矩形——OpenCV的minAreaRect函数
计算点集的最小外接矩形——OpenCV的minAreaRect函数 函数原型 输入一系列二维点,返回其最小外接矩形。 RotatedRect minAreaRect( InputArray points );根据函数原型,输入的数据可以是vector<Point>类型,包含1个以上的点࿱…...

Stripe Web 购买集成
图片被吞了可以来这里看:https://juejin.cn/post/7346388511338381364 1. 准备事项 Stripe 账号域名以及配套的网站Stripe 账号付款信息公钥和私钥 2. 配置产品以及价格 可以通过 API 或者 Stripe 管理后台来进行配置 产品:就是商品,只需…...

加密货币在网络违法犯罪活动中的利用情况调查
一、调查背景 区块链基于分布式共识和经济激励等手段,在开放式、无许可的网络空间中,为价值的确立、存储、转移提供了新的解决方案。然而随着加密生态在过去若干年的快速发展,加密货币也越来越多地被用于各类风险活动,为网络赌博…...

【测试知识】业务面试问答突击版3---bug、测试用例设计
文章目录 一个完整的缺陷报告包含一个完整的测试用例包含一个完整的测试计划包含缺陷严重等级简述等价类划分法并举例简述边界值分析法逻辑覆盖针对具体场景的测试用例设计软件中存在多个分支时如何设计测试用例静态代码检查什么白盒测试是?常用方法是? …...

使用大型语言模型进行实体提取
原文地址:Using A Large Language Model For Entity Extraction LLM 能否比传统 NLP 方法更好地提取实体? 2022 年 7 月 12 日 Large Language Models for Generative Information Extraction: A Survey 实体简介 使用Co:here大型语言模型。 实体可以被视…...

基础:TCP是什么?
1. TCP 是什么? TCP(Transmission Control Protocol 传输控制协议) 是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793 [1]定义。 TCP旨在适应支持多网络应用的分层协议层次结构。连接到不同但互连的计算机…...

el-table中 el-popover 性能优化
场景:在 el-table 中使用 el-popover ,出现了 loading 加载卡顿的问题,接口返回的数据的时间大概是 140ms ,所以不是接口慢的原因;通过对表中结构的逐步排查,发现是表中的 某一行 所影响的;并且 其中含有 e…...

java数据结构与算法刷题-----LeetCode46. 全排列
java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 1. 暴力回溯2. 分区法回溯 1. 暴力回溯 解题思路:时…...

听说过Nginx反向代理,那正向代理是什么?
Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,它以其高性能、稳定性、丰富的功能集、简单的配置和低资源消耗而闻名。在 Nginx 中,正向代理和反向代理是两种常见的代理配置方式,它…...

实现elasticsearch和数据库的数据同步
1. 数据同步 elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的数据同步。 1.1. 思路分析 常见的数据同步方案有三种: 同步调用 异步通知…...

SwiftUI的Alert使用方式
SwiftUI的Alert使用方式 记录一下SwiftUI的Alert使用方式,比较简单直接上代码 import SwiftUIstruct AlertBootCamp: View {State var showAlert falsevar body: some View {Button {showAlert.toggle()} label: {Text("alert show")}/// 单按钮 // …...

FPGA高端项目:FPGA基于GS2971的SDI视频接收+GTX 8b/10b编解码SFP光口传输,提供2套工程源码和技术支持
目录 1、前言免责声明 2、相关方案推荐本博已有的 SDI 编解码方案本方案的SDI接收转HDMI输出应用本方案的SDI接收图像缩放应用本方案的SDI接收纯verilog图像缩放纯verilog多路视频拼接应用本方案的SDI接收HLS图像缩放Video Mixer多路视频拼接应用本方案的SDI接收OSD动态字符叠加…...

【源码编译】Apache SeaTunnel-Web 适配最新2.3.4版本教程
Apache SeaTunnel新版本已经发布,感兴趣的小伙伴可以看之前版本发布的文章 本文主要给大家介绍为使用2.3.4版本的新特性,需要对Apache SeaTunnel-Web依赖的版本进行升级,而SeaTunnel2.3.4版本部分API跟之前版本不兼容,所以需要对 …...

数据集下载
一、数据集下载——谷歌Open images 谷歌Open-image-v6是由谷歌出资标注的一个超大型数据集,数据大小达到600多G,类别达到600多种分类,对于普通研究者而言,根本没办法全部下载下来做测试,也没必要。只需要下载与自己任…...

3、设计模式之工厂模式2(Factory)
一、什么是工厂模式 工厂模式属于创建型设计模式,它用于解耦对象的创建和使用。通常情况下,我们创建对象时需要使用new操作符,但是使用new操作符创建对象会使代码具有耦合性。工厂模式通过提供一个公共的接口,使得我们可以在不暴露…...

npm、nodejs和vue之间关系和区别介绍
本文讲解npm、Node.js和Vue.js这三者之间的关系和区别,以及它们各自的特点。 首先,让我们来了解一下Node.js。 **Node.js** 是一个开源的服务器端运行环境,它允许开发者使用JavaScript来编写服务器端的代码。在传统的Web开发中&#…...

DM数据库安装(Windows)
先解压安装包 点击setup安装 下一步 勾选接受然后下一步 下一步 选择典型安装下一步 下一步 搜索DM数据库配置助手然后一直下一步 然后搜索DM管理工具 登录 登录成功 widows版本安装成功...

Python的asyncio 多线程
-- 多线程、进程、协程是什么就不讲了,(就是你理解的一边呼吸,一边看文章) 仅解决问题的话,下边两篇不用看, Python 中的 async await 概念-CSDN博客 再深一点的看这个 Python中的多线程、进程、协程、…...

【分类讨论】【解析几何】【 数学】【推荐】1330. 翻转子数组得到最大的数组值
作者推荐 视频算法专题 本文涉及知识点 分类讨论 解析几何 LeetCode1330. 翻转子数组得到最大的数组值 给你一个整数数组 nums 。「数组值」定义为所有满足 0 < i < nums.length-1 的 |nums[i]-nums[i1]| 的和。 你可以选择给定数组的任意子数组,并将该子…...

一文了解Spring的SPI机制
文章目录 一文了解Spring的SPI机制Java SPIServiceLoader Spring SPISpringboot利用Spring SPI开发starter 一文了解Spring的SPI机制 Java SPI SPI 全称 Service Provider Interface ,是 Java提供的一套用来被第三方实现或者扩展的接口,它可以用来启用…...

django根据时间(年月日)动态修改表名--方法一
方法一: 第一步:在models创建一个类,里边存放数据表中需要的字段,如下 class TemplateModel(models.Model):NowTime models.CharField(max_length5)name models.CharFiedld(max_length5)class Meta:abstract True # 基础类设…...

实现基本的登录功能
一、登录功能的前端处理过程 1、导入项目所需的图片和CSS等静态文件 参考代码存放client节点的/opt/code目录下 执行如下命令: [rootclient ~]# cp -r /opt/code/kongguan_web/src/assets/* /root/kongguan_web/src/assets/ 将参考代码中的css、icon、images等文…...