• 13
  • 14
分享
  • 测试工程师得力助手:使用Fiddler定位APP问题——软件测试圈
  • 曼倩诙谐 2021-07-14 10:22:54 字数 1370 阅读 2397 收藏 14

  我们发现了一个bug后,怎样去确定这个bug是应该前台来解决还是后台来解决?

  当然我们测试网站的时候,可以通过浏览器的F12来查看传值,那么如果测试的是APP,我们又该怎么来抓取这个数据呢?这里就需要用到一些抓包工具,来协助我们定位问题。

  这里我们使用的工具就是Fiddler。

  下面我们通过几个案例来具体说明一下如何通过Fiddler来定位是前台的问题还是后台的问题。

  案例1

  我们在使用手机APP的时候,修改一个联系人信息,修改之后发现在数据库里的信息电话和性别没有修改成功,这个时候我们用Fiddler来抓取数据包看看。

  首先先将Fiddler设置成只接收远程客户端的数据,如下图,来避免获取到一些无用的数据。

2-1.png

  设置成功后,我们在手机上操作APP,编辑一个联系人信息,我们可以看到Fiddler里获取了好多请求,找到我们需要的请求,点击一下查看该请求的详细信息,如下图右下角。

  这个就是我们在前台保存联系人时往后台传输的数据:

2-2.png

  在这里看的不是很清楚,我们将其拷贝到文本文件里进行查看,如下图:

2-3.png

  这里的id就是我们要修改的id,contact就是我们要修改的联系人的名字(这里的内容可能做了处理),tel就是联系人的电话等等这些信息。

  通过这些内容我们发现:

  1、前台已经将修改的电话信息传给后台了,但是数据库里的信息并没有修改,那么我们就可以认为是后台没有将前台传过来的数据保存,可以让后台开发人员修改这个问题。

  2、我们发现前台传过来的数据中并没有性别的信息,这个就有可能是前台将数据漏传了,需要找前台开发人员修改。

  案例2

  我们在获取联系人信息的时候,发现并不是所有的联系人都显示了,而只是显示了一部分,下面我们也抓取一下获取联系人信息的数据包,获取的数据如下,将页面切换到json,我们可以看得更清楚一些,如下图:

2-4.png

  这里分两种情况:

  1、抓取的数据包里的数据是完整的。这种情况就是前台在对后台返回的数据进行渲染的时候出错,先联系前台人员修改。

  2、抓取的数据包里的数据就是不完整的。这种情况就是后台查询数据有问题,联系后台人员解决。

  案例3

  我们上传一个头像,但是上传完之后前台没有显示出来。

  我们先来抓取一下上传头像的数据包,如下图:

2-5.png

  我们可以看到,图片名字和图片的地址都传给后台了,这说明前台传值是没有问题的,接下来再抓取一下查询客户信息的数据包,如下图:

2-6.png

  根据返回数据的数据包,我们再进行如下分析:

  1、通过截图中返回的数据,我们很容易就能看出来,这个URL地址是错的,拼接了两遍http,这种就说明是后台拼接错误,这种的找后台处理。

  2、如果返回的图片URL没有明显的错误,那么将这个URL整个拷贝出来,复制到浏览器去看一下图片能否正常查看。

  如果浏览器里能正常查看,说明后台返回的图片地址没有问题,是前台显示图片时报错,联系前台修改问题;如果浏览器里图片也是无法查看的,那么就是后台返回的图片地址有问题,联系后台处理。

  3、如果后台返回的数据里,根本没有URL的信息,如下图:

2-7.png

  这种就是后台直接没有返回图片的地址信息,联系后台修改。

  抓包工具有很多,大家可以参考一下,也可以自学一下其他工具的使用~



作者:CICI   

来源:51Testing软件测试网原创

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 1.测试分类:(1)黑盒测试:不需要写代码,给输入值,看程序是否输出期望的值大部分都在使用黑盒测试,就是根据你写的代码进行测试(2)白盒测试:需要写代码,关注程序的具体的执行流程2.Junit的使用:Junit是白盒测试(1)@Test的使用1.定义一个类先在类中定义方法package cn.junit; /* * 计算器类 * */ public class Calcuator { /* * 加法 */    public int add(int a,int&nb...
            1 1 1893
            分享
          • 性能测试工具可以帮助我们构造一些数据和脚本以便于自动执行,除此之外,还有一些监测小工具方便我们了解系统运行情况,包括:系统负载、系统I/O读写、mysql占用情况等。一、系统I/O读写(在web上)(尤其适合搭配jmeter使用)./nmon_x86_64_ubuntu1104 -fT -s 5 -c 100000000000000000000000000000ltest:这次监控记录的标题与生产的文件名称l-s 30:每30秒进行一次数据采集l-c 180:一共采集180次输入命令后,将自动在当前目录生成一个hostname_timeSeries.nmon的文件,如:lhosname为tes...
            1 1 10644
            分享
          • 在当前这个时代,直播功能还是相对比较普遍的,无论是douyin上面的直播,还是唱歌软件上面的pk或者是一些培训软件上讲师直播等。在不久之前测试的一个项目中,包含了很多课程相关的丰富功能,这里简单做个总结,重点介绍下直播功能的测试要点。课程模式分为如下三种:直播课,录播课,双师课。直播课很好理解,是先约定开课时间,然后到达时间之后,讲师上线,进行直播讲课,学员可以实时提问,课程结束之后有回放。录播课是先将课程视频制作好,然后上传到服务器,添加课程,添加章节,上传海报等,学员购买后即可观看学习,视频可以回放可以暂停可以快进。双师课跟前面两种稍微有点区别,双师课有课程学习也有实操,除了跟着线上老师进...
            1 1 22924
            分享
          • 1. 新增接口并发测试后,会导致接口中的编号重复       我们在功能测试期间往往很难发现此类缺陷,即并发测试过程中,出现编号重复的情况,有些编号如果是唯一性的,代码层面没有做好控制的话,并发测试期间就会导致编号重复,在生产环境中出现该问题将造成严重的后果。例如沐沐在性能测试过程中就遇到了并发期间订单号重复的情况。所以尽量要在功能测试期间,识别出此类业务场景,通过并发测试的方式,验证是否会出现编号重复的情况。2. 新增接口并发测试后,各项性能指标正常,但是列表无法加载出数据      在对新增场景并发测...
            2 0 3834
            分享
          •   伴随着互联网发展的时代洪流,一些曾在大城市打拼的年轻人,他们告别了“朝九晚五”的职场坐班状态,选择来到一个节奏更慢、生活成本更低的城市。他们或是远程办公,或有自由职业,也可能正在自主创业。  2015年,在数字游民还没有进入绝大多数公众视野的时候,Levels受邀在德国柏林的DNX峰会上做了一场题为“The Future of Digital Nomads”的演讲。  这场演讲的全程录像可以在油管上找到。值得注意的,这条油管视频的标题是:“There Will Be 1 Billion Remote Workers by 2035 with Pieter Levels”  “到2035年,...
            0 0 720
            分享
      • 51testing软件测试圈微信