软件测试精准定位BUG小技巧

news2024/11/18 13:39:28

目录

一、前置知识

二、定位技巧


一、前置知识

1. 熟透系统业务、团队成员情况

2. 熟悉使用F12或抓包工具

3. 了解HTTP/HTTPS协议,能够区分请求URL、请求头、请求体、入参、响应数据、响应码

4. 具备操作常规Linux命令,能否登入服务器查看Log日志,例如Tomcat等应用,不排除一些公司有对应的查看日志平台,例如K8S、Xlog,总之会查看对应服务打印的日志就行,这里日志等级输出具体可以百度

5. 了解系统的架构,数据走向

6. 思维敏捷,懂得检索百度

二、定位技巧

1.首先当系统出现bug时,一定要将bug现象进行录制保留,保留现象时为了证明这个bug出现过,如果bug是必现还好说,如果该bug无法必现,那么保存的截图都是你直接证据,要养成良好的保存现场的习惯

2.提BUG这块,还是要体现出测试的专业性,标题简洁、问题环境标识清楚、问题详细描述清楚、系统错误表象贴图、接口传参返参贴图、必要时贴服务器日志,总结来说不该少的bug标签一个不要少

一. 小型产品,前后端一人统筹

一些小型程序,例如前后端都用node、php语言开发的,整个系统前后端是同一个开发的时候,那么小编可以自信的给你说,系统出现问题时,bug大胆的提,往猝死的提,责任人错不了!

二. 常规系统,多人开发协同
前置:测试之前该测试人员对系统、业务、环境部署、开发人员等较为熟悉

在测试之前打开对应浏览器的F12直接开个新页签,或者使用抓包工具等,系统呈现出问题时,查看对应的请求、日志信息等我们才能去全面的定位是前端还是后端人员的问题,具体给大家介绍以下几个常用方法:

1. 分析问题场景进行预判

先查看页面表象,根据问题表像判断问题可能出现的原因,进行缩小范围,并且准备好录制工具,录制问题

系统页面无法正常访问的提示5开头的找后端,4开头的先检查请求地址或者对应的权限,进入系统页面正常打开,提示异常代码错误的直接找后端

进入系统页面展示异常图片视频相关提示Flash等相关信息进行安装Flash如若还不行找前端,界面UI展示兼容性错误找前端

如若系统访问正常,进入操作页面,功能性报错信息,就进入下面环节,抓包查看对应请求体,看日志等

2. 关注请求体的状态码

4**开头的状态码一般都是客户端(前端)的问题;例如常见的404确认下是否是请求的地址有错,403确认是否有权限访问,具体可百度

5**开头的状态码一般都是服务端(后端)问题,例如常见的500,则表示是服务器内部错误,503网络过载导致服务端延时,502服务器崩溃等,具体可百度

3.关注请求的入参与响应数据

通过访问报错的页面,加载错误请求时我们通过F12进行分析请求包,查看对应的入参以及响应数据

例如:请求入参错误,那么该bug属于前端的错误;入参标准可以根据前端页面的输入的内容或者选择的内容,进行核验,入参格式以及是否必填等可以对应接口文档去进行分析或跟开发确认

例如:请求未响应或者响应数据错误,那么该bug就属于后端的错误;一般是数据库查看报错,例如删了某个表查询报错误空指针等

如果请求的入参或者响应数据都没问题,可以跟开发反馈是不是浏览器解析的问题,可以换个浏览器测试

4. 查看日志

针对服务端类型的报错,我们可以进行登录日志平台或者服务器对应Log目录下查看打印出的日志

常用查看日志命令tail ,/error进行快速检索关键词接口名等相关内容

拿到对应的日志,将日志文件贴进bug单,指派给后端,提高专业性,测试人员也要养成看日志的习惯,看着看着就懂了

5. 经验法则

在系统前端页面当碰见服务器配置相关报错的信息例如Nginx***或者代码以及SQL相关的提示报错信息直接找后端处理,例如JAVA**** 、.PHP、SQL等异常报错前端字符校验、格式校验、等,浏览器界面UI兼容性以及插件,或者APP、小程序类调用手机相关功能拍照、语音无法正常调用直接找前端

记住以上的一些方法以及技巧减少将BUG责任人提错的概率,在提单方面整洁完整一些,长久以来,体现出你的专业性,相信开发会对你竖起大拇指

做一个既能发现问题还能协助开发解决的问题的测试人员,那也是你从初级跨入中级测试的一个标准

自动化测试【思维导图】

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

通信原理 | 波段的划分

波段(wave band) 在无线电技术中,波段(wave band)这个名词具有两种含义。 电磁波频谱的划分,例如长波、短波、超短波等波段。 发射机、接收机等设备的工作频率范围的划分。若把工作频率范围分成几个部分,这些部分也称为波段,例如三波段收音机等。 波段划分 波段通常是…

Python实现A股股市情感分析,含数据集可直接运行

Python实现A股股市情感分析,含数据集可直接运行 Stock Market Sentiment Analysis: 股市情感分析 完整代码下载地址:Python实现A股股市情感分析 情绪与股市 情绪与股市关系的研究由来已久,情绪是市场的一个重要影响因素已成为共识。 15年…

【设计模式】状态模式

状态模式 状态机 在操作系统的调度中会存在三种状态:运行、就绪、阻塞。 这是比较典型的状态机的例子。 做产品的时候,我们总能遇到一些比较复杂的逻辑问题,而普通的流程图,或时序图对于对象和状态的解读缺乏直观的描述。 这…

2.16 SPI协议的4种模式

文章目录1、简介2、SPI通讯模式2.1 模式02.2 模式12.3 模式22.4 模式32.5 总述1、简介 四线控制 SDO - 主设备数据输出,从设备输入 对应MOSI SDI - 主设备数据输入,从设备输出 对应MISO SCLK - 时钟信号,由主设备产生 CS - 从设备使能信号&a…

java接口的静态方法

目前java中已经支持定义静态方法 但需要注意一个点 我们先把代码写出来 我们创建一个包 下面创建一个接口 subInterface 接口参考代码如下 public interface subInterface {static void show2() {System.out.println("来自接口的静态方法");} }这里 我们就将 sho…

【C递归和迭代】兔子繁殖问题、青蛙跳台阶问题和汉诺塔问题

【C递归】前言一、兔子繁殖问题(一)题目描述(二)解题1.递归做法(1)成兔(i)分析(ii)代码(iii)代码分析(2)幼兔&…

C语言实现简易版扫雷

扫雷对于很多人是一种回忆,那么我们如何用C语言程序去实现它呢?这个是在浏览器找到的一个扫雷游戏我用程序实现它利用到字符数组,将一个类似棋盘的东西打印出来,让人们输入坐标,然后进行扫雷。为了程序的简易我一共设计…

论文阅读-社交媒体上的谣言检测:数据集、方法和机会

论文链接:https://aclanthology.org/D19-5008.pdf 目录 摘要 引言 1.1谣言检测 1.2 问题陈述 1.3 用户立场 2 数据集和评估指标 2.1 数据集 2.2 评价指标 3 特点和方法 3.1使用内容信息的方法 3.2 利用用户信息的方法 3.3 基于传播路径和网络的方法 3.4…

volatile 禁止指令重排序

计算机在执行程序时,为了提高性能,编译器和处理器常常会对指令重排,一般分为以下三种: 源代码 -> 编译器优化的重排 -> 指令并行的重排 -> 内存系统的重排 -> 最终执行指令单线程环境里面确保最终执行结果和代码顺序的…

AWS人工智能主题学习月:深度学习入门笔记

目录 一、深度学习入门课程的学习重点📕 二、简单介绍一下深度学习和神经网络💡 1.深度学习 2.神经网络 3.深度学习储备知识拓展 三、深度学习生产生活实际案例🚗 四、深度学习的框架介绍🌳 总结 深度学习是机器学习中的一…

Arch/Manjaro安装搜狗输入法

装好系统以后,没有输入法,只能打英文的感觉很难受,现在我们来看看如何给Arch系列的系统安装搜狗输入法。 加入Skype Linux群来这里一起解决问题吧!腾讯不支持Linux,让我们一起抛弃微信~ Join conversationhttps://join…

⌈ 2022杀青 ⌋ 一个普通人的年终总结,这一年我获得了更多的新鲜体验 | 普通而平凡的一年 | 向前走,走到光里 | 2023你好

💛年度总结💛 时间转瞬便是年末,在此写下告别 成长是一场踏实的幻灭 有哭有笑有酸有甜,失去与获得也同在 即使生活再忙,也不要忘记那些美好治愈我们的瞬间 起起伏伏的日子,这依然是很长很好的一年&…

python 爬虫 使用selenium 控制浏览器 进行搜索操作

首先需要安装selenium: 第一种:可以自己下载selenium tar.gz包,下载到python目录下:解压到当前文件夹 在cmd命令行:进入到解压包中,进行安装。安装完成之后,如果是eclipse中,请 clean project之…

APSIM练习3:氮循环

在本练习中,您将观察休耕情况下的氮肥循环;尿素转化为铵,铵转化为硝酸盐,以及土壤硝酸盐通过反硝化作用流失。此模拟将介绍编辑一个简单的管理器规则以及绘制模拟结果的更多高级功能。 开始基于 Continuous Wheat.apsim 的新模拟。…

【20221230】栈和队列的小结

一、栈(stack) 栈是先进后出的(FILO)的数据结构,它只有一个出口。 二、队列 队列是一种先进先出(FIFO)的数据结构,它有两个出口。 栈和队列是STL(C标准库)里面…

【攻防世界】Web easyupload

知识点讲解 本题的主要考点为利用fastcgi的.user.ini特性进行任意命令执行 关于.user.ini文件是怎么利用的,可以点此查看非常详细,我这里截取一段 .user.ini实际上就是一个可以由用户“自定义”的php.ini,我们能够自定义的设置是模式为“PHP…

创作者身份认证申请规则及审核标准

当前创作者身份主要包括优质创作者、新星创作者、其他(特殊情况)。 有一些身份认证,比如:企业员工认证、学生认证等,不属于创作者身份认证范畴,申请的时候需要找到对应的认证进行申请(https://…

python【多态特性】

多态:同样的行为(函数),传入不同的对象,得到不同的状态 特点:通过继承的方式体验抽象动作相同而具体实现细节不同细节的特性 如,定义函数(方法),通过类型注…

NetInside帮助IT提高应用性能分析能力(一)

前言 某大学信息中心老师反应,用户反馈科研创新服务器平台有访问慢的情况,需要通过流量分析系统来了解系统的运行情况,此报告专门针对系统的性能数据做了分析。 信息中心已部署NetInside流量分析系统,使用流量分析系统提供实时和…

进销存管理系统哪个比较好?

在如今互联网的刺激之下,企业之间的竞争逐渐加剧,很多企业之所以会逐渐被市场淘汰,主要原因都来源于管理上的混乱,而进销存软件的出现可以帮助企业解决管理难题。 选择一款合适的省心的进销存软件,有效提升企业的核心…