目前的项目大多数都是前后端分离的,当我们发现bug后不知道指派给哪位开发,指派错了不仅影响解决bug 的效率,还容易被开发怼。最主要的是人家会认为你不专业,不专,不专呀。废话少说,上干货(踩过的坑)!

测试中发现问题不要着急提bug,首先确定我们测试的这个系统是不是开发提测最新的一个版本,比如开发自己发现了这个bug,然后又提测一版,但我们还用的上一个版本。这时候把bug提上去,开发会把bug直接打过来(附带一句:这个bug已经解了,用新包。。。)。

然后排除测试环境的干扰(如:网络环境,配置项)在测试的时候我们往往开启网络代理对数据进行拦截,导致某些数据加载失败,所以确保网络环境是正常的。再比如我们在测试环境后台添加的数据,在正式环境测试,会出现数据匹配不上的问题,所以要确定环境一致。有些app要开启手机系统权限如:悬浮窗、开启消息通知、获取相机权限等,如果这些权限不开启,会出现收不到消息和系统权限,所以我们要确保这些权限是开启的。

最后,如果以上两个步骤都没问题,我们再根据测试用例、需求文档、接口文档、UE等确定功能模块,开开心心的提bug了。这时候就要显示你的神通,该用的工具全部用上如:fiddler,浏览器的开发者模式,wireshark,linux命令,SQL语句等。总结如下:

1、通过抓包或者开发者模式过滤信息

a、传入参数错误(缺参、错参等),导致的问题往往是前端bug;

b、传入的参数与接口文档一致,数据返回正确,界面显示错误(字段取错),往往是前端的bug;

c、传入参数正确,数据返回错误,往往是后端的bug。

d、根据响应状态码:404客户端请求路径错误,500服务器内部错误

2、根据前后端的bug特点来定位问题

a、前端bug特点:界面相关(文本问题可能是html产生的bug)、布局相关(样式问题可能是css产生的bug,图片尺寸分辨率等)、兼容性相关

b、后端bug特点:业务逻辑相关(排序、分页)、数据相关、性能相关、安全性相关。

3、查询系统日志

如果查不到错误日志前端的问题概率大,反之后台的问题。

4、通过sql语句查询数据,是否有数据入库。

有些项目接口与接口之间存在相互调用,不同的接口是不同的开发人员,我们可以通过查询数据的方式来区分哪个接口问题。比如:在A模块添加一条数据,但是在B模块没有展示,这时我们 通过查询数据库的数据来确认,是A模块没有插入数据,还是B模块没有查询到数据来缩小问题的范围。

5、根据测试经验

软件测试人员应不断精进自己的技能,负责的项目多了,自然对功能的实现过程有了解,也就明白如何分类BUG了。再就是与开发人员多沟通,熟悉业务,每个模块是哪个开发负责的。

总之,学无止境,我们不要怕踩坑,踩过的坑再踩才很可怕。

干货!!!测试如何确定是前端bug还是后端bug的更多相关文章

  1. (转)测试如何区别是前端的问题还是后台的bug

    常常说到的一个IT项目,包括前端开发,后台开发,软件测试,架构,项目经理,产品需求.那么对于一位优秀的软件测试工程师来说,需要区分前端和后台的工作就显得尤为重要. - 什么是前端和后台 简而言之,前端 ...

  2. 如何区分前端BUG和后台BUG?

    测试工程师不只是负责发现问题,除了发现问题这种基本功外,定位问题,提出解决方案,提出预防方案也是要掌握的技能.这里先说定位问题的要求,定位问题要向深入,前提当然是对功能.产品的流程.开发方案.开发人员 ...

  3. 巧用浏览器F12调试器定位系统前后端bug

    做测试的小伙伴可能用过httpwatch,firebug,fiddler,charles等抓包(数据包)工具,但实际上除了这些还有一个简单实用并的抓包工具,那就是浏览器的F12调试器. httpwat ...

  4. 如何判断前后端bug

    测试工程师不只是负责发现问题,除了发现问题这种基本功外,定位问题,提出解决方案,提出预防方案也是要掌握的技能.这里先说定位问题的要求,定位问题要向深入,前提当然是对功能.产品的流程.开发方案.开发人员 ...

  5. 测试通过!为何线上还有很多BUG?实践中的质量控制

    质量控制 大多数测试人员认为测试工作是发现bug,虽然这是测试的主要任务,但其实测试最重要的任务是质量控制,而发现bug和验证bug只是质量控制的一个重要环节而已. 我想很多测试人员都经历过这样的场景 ...

  6. 测试通过!为何线上还有很多BUG?

    质量控制 大多数测试人员认为测试工作是发现bug,虽然这是测试的主要任务,但其实测试最重要的任务是质量控制,而发现bug和验证bug只是质量控制的一个重要环节而已. 我想很多测试人员都经历过这样的场景 ...

  7. bug生命周期&bug跟踪处理

    一.BUG BUG:软件的缺陷 1.BUG的定义:----与软件测试的目的对应 软件的BUG,狭义概念是指软件程序的漏洞或缺陷,广义概念除此之外还包括测试工程师或用户所发现和提出的软件可改进的细节.或 ...

  8. JavaScript前端和Java后端的AES加密和解密

    在实际开发项目中,有些数据在前后端的传输过程中需要进行加密,那就需要保证前端和后端的加解密需要统一.这里给大家简单演示AES在JavaScript前端和Java后端是如何实现加密和解密的. 直接上代码 ...

  9. 前端基于react,后端基于.net core2.0的开发之路(1) 介绍

    文章提纲目录 1.前端基于react,后端基于.net core2.0的开发之路(1) 介绍 2.前端基于react,后端基于.net core2.0的开发之路(2) 开发环境的配置,注意事项,后端数 ...

随机推荐

  1. POJ2774 Long Long Message 【SAM】

    POJ2774 Long Long Message 找两个串的最长公共字串 对其中一个串\(s\)建\(SAM\),然后我们如何找到最长公共字串,办法就是枚举\(t\)串所有的前缀,然后找各个前缀的最 ...

  2. Alternating Strings Gym - 100712D 简单dp && Alternating Strings II Gym - 100712L 数据结构优化dp

    比赛链接:https://vjudge.net/contest/405905#problem/D 题意: 给你一个长度为n的由0或1构成的串s,你需要切割这个串,要求切割之后的每一个子串长度要小于等于 ...

  3. 【uva 12219】Common Subexpression Elimination(图论--树+自定义比较器+映射+递归)

    题意:如题,用表达式树来表示一个表达式,且消除公共的部分,即用编号表示.编号 K 定义为表达式第 K 个出现的字符串. 解法:先构造表达式树,给每棵子树用(string,left_son,right_ ...

  4. 【noi 2.6_9267】核电站(DP)

    题意:n个数中不能同时选连续m个或以上,问方案数. 解法:f[i][j]表示从前i个中选,到第i个已经连续选了j个.j!=0时,  =f[i-1][j-1] ; j=0时, =f[i-1][0~m-1 ...

  5. 【luogu AT3957】[AGC023F] 01 on Tree

    01 on Tree 题目链接:luogu AT3957 题目大意 有一棵根为 \(1\) 的树,每个节点有个值 \(0\) 或 \(1\). 然后每次你可以把一个没有父亲的点删除,然后把值放进一个数 ...

  6. constexpr 的来龙去脉

    constexpr 是什么? 关键字 constexpr (constant expression) 是在 C++11 中引入的,并且在 C++14 中进行了优化. constexpr 和 const ...

  7. TCP协议与UDP协议的区别以及与TCP/IP协议的联系

    先介绍下什么是TCP,什么是UDP. 1. 什么是TCP? TCP(Transmission Control Protocol,传输控制协议)是面向连接的.可靠的字节流服务,也就是说,在收发数据前,必 ...

  8. HDU 3949 XOR (线性基第k小)题解

    题意: 给出\(n\)个数,求出子集异或第\(k\)小的值,不存在输出-1. 思路: 先用线性基存所有的子集,然后对线性基每一位进行消元,保证只有\(d[i]\)的\(i\)位存在1,那么这样变成了一 ...

  9. Java 对象的哈希值是每次 hashCode() 方法调用重计算么?

    对于没有覆盖hashCode()方法的对象 如果没有覆盖 hashCode() 方法,那么哈希值为底层 JDK C++ 源码实现,实例每次调用hashcode()方法,只有第一次计算哈希值,之后哈希值 ...

  10. Promise.allSettled & Promise.all & Promise.race & Promise.any All In One

    Promise.allSettled & Promise.all & Promise.race & Promise.any All In One new Promise(), ...