zoukankan      html  css  js  c++  java
  • 移动端BUG排查思路

    2020年 是我做测试的第7年,也是做移动端测试第7年。现分享分享下移动端BUG排查思路

    一、辅助工具:fidlder、charles

    移动端测试的吃饭工具,用于抓去http请求后,然后进行各类分析及操作

    二、熟悉并了解常见http码

    比如:抓包看到请求 404 ,那就是资源不存在。那就3种可能

    (1)静态图片404,说明该静态图片写死在前端请求里,即出现404的原因,图片静态资源没有放到指定路径、开发没提静态资源的代码等

    (2)api接口404,即后端服务可能未部署

    (3)发现这个404请求不应该是版本请求的,即前端版本代码合错、打包分支切错了

    再比如,常见的500、502、504

    (1)500,服务器内部错误,这时根据具体报错请求查后端日志,常见于 代码有BUG、存在脏数据等

    (2)502,服务挂了。常见于服务部署中(即服务不可用)、有人(开发或运维)改动转发代理之类造成。

    (4)504 ,服务超时。一般找运维解决就好了

    三、千奇百怪的问题

    此处千奇百怪的问题,主要以我个人项目经历种遇到一些有意思/比较曲折的BUG排查

    (1)生产服务发布后,前端静态样式仍然没有变化

    此处排查思路:

    排查前端页面缓存

    排查是否为机型问题

    排查代码合并

    检查部署分支

    检查js hash是否生成新的hash

    检查CDN缓存

    检查nginx配置------- 在最后一步终于发现问题,nginx配置里header有个参数配置错了


    (2)同一个环境下,我手里移动端设备发出部分指定请求每次必然都要响应30s及以上

    排查思路:

    检查移动端设备的网络问题---大家都是同一个网络

    检查移动端设备问题----
           Android 和 IOS:把账号从IOS换到Android仍能出现

          相同设备:相同设备下、相同环境、相同网络条件,我的测试设备可复现,他的复现

    从上一步排查结果可确认:唯一不同就是登录的用户差异,随后检查根据接口返回值检查 用户数据差异性,从而确认问题情况

    排查结果:某种指定类型的用户状态,在调用接口A时会单独去查库,因为测试环境没有建索引,所以查询慢。把数据库索引加上后响应正常

    (3)偶发的BUG

    首页要树立一个观点,从来不存在偶发的BUG,只是没有找到复现方法而已

    说下移动偶发BUG排查思路

    (1)操作差异:连贯性操作、有中断流程的操作,可能会导致一个现象:BUG偶发出现

    比如:用户注册、填写资料并提交的场景

       a.用户注册后,直接根据页面流程填写资料

       b.用户注册后,先退出登录,再重新登录后再去填写资料

    虽然a、b 2个操作都能达到用户注册后填写资料的流程,但是从接口层面去分析,用户注册/登录后常规情况下会调用用户状态/用户数据的接口,但是如果其中一个流程没有调用呢?

    此类问题可以通过理解业务调用逻辑/接口调用顺序等来设计测试点,从而排查问题

    (2)返回操作、点击操作、切换tab栏操作等操作的先后顺序不一致

    (3)测试环境有变化:比如部署的服务分支、部署前端版本等发生变动了

    (4)新版本安装与覆盖安装:相同版本、机型、网络条件、相同用户,偶发出现,如果是APP考虑,新版本安装与覆盖安装、内存不足等问题

    BUG排查思路大体如上,结合抓包工具看具体请求报错,在根据业务场景调用一层层往下查服务端报错日志

    学好python自动化,工作效率顶呱呱
  • 相关阅读:
    入门练习
    课堂作业补充
    例题作业(9.1-9.7)
    stream — 创建stream(一)
    Lambda表达式的四大内置核心函数式接口
    lambda表达式基础语法及其使用
    java 按照固定大小分割 list 集合的几种方式
    分布式锁相关解决方案
    zabbix3.0 使用详解
    eclipse Memory Analyzer (mat) 安装及使用
  • 原文地址:https://www.cnblogs.com/fenglovellx/p/13657264.html
Copyright © 2011-2022 走看看