• 0
  • 0
分享
  • 第一次做弱网测试--fiddler模拟网络延迟——软件测试圈
  • 饭团🍙 2022-04-08 11:16:28 字数 1895 阅读 1192 收藏 0

因为公司项目业务需要,前不久测试老大需要我这边对我们的性能测试apk做一下弱网测试,虽然以前弱网测试都有所了解。但是还没有实操过,作为一个三年工作经验的软件测试工程师确实是有点菜了,这里我就讲一下我根据网上教程自己去在公司内部做的一个弱网测试

首先先确定弱网测试做什么?

这里我就先说一下我对性能测试apk关注的弱网测试点,整理了一份测试方案,测试方案就不方便放上来了,但是主要内容其实就是看各类请求耗时最多,从而让开发去对页面的访问进行访问速度的优化

做弱网测试的话单纯网络上提供的工具就有,fiddler,charles,httpwatch,Wireshark,这几个弱网工具功能是各有千秋,挑选适合自己的工具就可以了,因为公司使用的win10电脑,我就用了fiddler工具,简单好用还免费

正常下载安装fiddler的教程的网上有很多,这里提供一个CSDN的我喜欢的博主的链接去下载安装教程fiddler的安装与使用

因为我是针对app做的弱网测试,fiddler还需要另外去设置

首先你的fiddler所在的电脑和手机必须处在同一个局域网内

查看你自己的本机ip地址,win电脑可以直接cmd命令ipconfig得到

配置连接信息的话可以直接进入Tools-Options-Connections

图片 1.png

设置手机里的代理

1.进入到手机设置-WLAN设置-选择该wifi,点击右边的箭头进去

2.点击代理选择手动

3.配置好主机名(也就是你的ip地址),与端口8888(就是之前让你设置的)

图片 2.png

因为我需要测的app是我们的安卓开发的一个小工具app上报一些异常数据的,里面的请求都只是http请求,所以不需要另外去安装下载证书,如果你们测试的app里是有https协议的就需要自己去下载证书了

下载证书的方法也很简单我这里就顺便说一下,直接在你手机浏览器里输http://10.224.xx.xx:8888 ,这个中间的host地址就是前面查到的本机地址,然后会出现一个html的页面,单纯点击其中发蓝颜色的字体进行下载就可以了

图片 3.jpg

1.手机上设置代理后,这时候fiddler上抓到的是pc和app所有的请求,如果pc上打开网址,会很多,这时候就需要开启过滤功能了。

2.打开fiddler>Tools>Fiddler Options>HTTPS>…from remote clients only,勾选这个选项就可以了

…from all processes :抓所有的请求

…from browsers only :只抓浏览器的请求

…from non-browsers only :只抓非浏览器的请求

…from remote clients only:只抓远程客户端请求

(千万注意:如果手机设置代理后,测完之后记得恢复原样,要不然手机无法正常上网。)

图片 4.png

下面就开始步入正题了,弱网测试正式开始,之前都只是将环境布置好

接下来我们先抓取正确的接口数据,我们的app上报数据接口是post,很轻易的就能抓取到,这时可以直接查看到此接口的一个statistics分页去统计请求和响应的一些信息

图片 5.png

图片 6.png

这时候我们就可以进行一个弱网测试了,不过弱网测试之前你得知道2G,3G的一个上下行带宽与一个DNS延迟,这里我就直接为大家提供这份数据,因为后续修改fiddler其中的一个延迟参数需要用到。

图片 7.png

1.设置模拟调制器的速度:

图片 8.png

2.手动设置上行,下行速率,模拟网路速度的原理,每上传/下载1kb要delay(延迟)多久,手动进入Customize Rules里查找代码如下

图片 9.png

//Delay sends by 300ms per KB uploaded. //每延迟300ms发送1kb的数据,也就是每1s发送3kb的数数据(每上传1kb数据,延时0.3s)
oSession["request-trickle-delay"] = 300
//Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = 150//每延迟150ms下行1kb的数据 }

这里我们使用计算公式不难得出上行延迟与下行延迟,2G的取近似整值3000ms与1000ms,3G的就取20ms与2.5ms

请注意,当你存档之后,原本已经勾选的SimulateModem Speeds 会被取消勾选,要记得再到Rules → Performances → Simulate Modem Speeds 勾选喔!


作者:王大宝
链接:https://zhuanlan.zhihu.com/p/187044723

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 一、Selenium简介Selenium是一个用于Web应用程序自动化测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9、10、11),Mozilla Firefox,Safari,Google Chrome,Opera等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序是否能够很好的工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成.Net、Java、Perl等不同语言的测试脚本。二、使用Selenium的准备工作因为Selenium是直接运行在浏览器里的,...
            13 13 1881
            分享
          •   在国内的测试行业里面,很多情况下就是“为了做自动化测试而去做自动化测试”这就是典型的本末倒置。无论你在测试的过程中采取什么样的方案和手段,核心都是为了业务去服务的,脱离业务,手段再厉害也没有用。  不得不说,很多情况下,我们的老板们对于自动化并没有一个合理的预期。很多老板想的是:搞了自动化测试就可以不用手工测试了嘛,然后再招几个价钱低的测试就行了。这是大错特错的。  关于领导认知层面的问题:  1、不清楚自动化测试目标是什么,对于达到目标所要进行的投入也没有计划;  2、盲目幻想,认为自动化测试能够省钱,想着搞起来自动化,省掉多少多少人力成本;  3、自动化测试如果做的成功的话,是可以节省...
            0 0 666
            分享
          • 面试题解读,轻轻松松过面试,我以一个过来人的身份,写下这篇面试常见问题。1. 最常见的就是,为什么想进本公司,你了解本公司的业务吗?再回答这个问题的时候是灵活的,首先,我有一技之长(表明自己的专业技能,展示自己的优点)来到贵公司,我在施展我的才能的同时又会事半功倍的完成公司交付的事情,再者,(说面试公司的优点)贵公司,在某一行业都是佼佼者,我希望进入这样强的公司,才能更快的让自己变强。2. 怎么考虑加班?我相信所有的人,肯定都是抗拒的,什么996,995,都是扯淡,我们谁不希望965呀,但是接受现实吧,同学们,告诉面试官:我如果有幸可以成为贵公司的一份子,那么就和公司荣辱与共,公司的任务,完不...
            0 0 1306
            分享
          • 1)测试计划与测试方案的区别:计划:属于组织管理层面的文档,从组织管理的角度对测试活动进行规划;方案:属于技术层面的文档,从技术的角度对测试活动进行规划。测试计划:对测试全过程的组织、资源、原则等进行规定和约束,并制定测试全过程各个阶段的任务分配以及时间进度安排,并提出对各项任务的评估,风险分析和管理需求。测试方案:描述需要测试的特性,测试的方法,测试环境的规划,测试工具的设计和选择,测试用例的设计方法,测试代码的设计方案。测试方案需要在测试计划的指导下进行,测试计划提出“做什么”,而测试方案明确“如何做”软件测试用例包括软件测试用例设计和写作。软件测试用例设计:是从设计层面考虑,比如从功能性...
            12 12 1877
            分享
          • 1.测试用例的定义:测试用例是执行测试的依据,把测试系统的操作步骤用文档的形式描述出来2.测试用例包含?用例编号 用例描述  【用例所属模块】  执行条件  预期结果 测试输入   实际结果 【测试人】  【测试版本】 【测试日期】 【备注】3.测试用例文档的方式Excel  word  方式     bug管理工具里可以直接写4.测试用例开始写的时间拿到对应的模块进行编写。5.测试用例的注意:根据需求文档或者是原型图年写的用例的覆盖度[80%-90%].书写用例有正反  &...
            0 0 1221
            分享
      • 51testing软件测试圈微信