软件测试之使用Fiddler实现弱网测试

 更新时间:2021年08月24日 10:20:16   作者:软件测试自动化测试  
我们在做运维测试中会使用到到很多软件测试工具,本篇文章给大家分析一下软件测试,教大家在软件测试时来使用Fiddler实现弱网测试

一、弱网简介

弱网看字面意思就是网络比较弱,我们通称为信号差,网速慢。

1、弱网的影响

在地铁、隧道、电梯和车库等场景下使用APP ,网络会出现延时、中断和超时等情况。

  • 如果我们处于网速慢的地段,我们请求某个功能,app会响应非常慢,页面加载不出来,对于我们测试人员来看,就是用户请求这个API,API加载速度比较慢。
  • 大家都喜欢刷抖音当我们在地铁上刷抖音,滑到下一个时候突然间就会页面卡住,这也是网络的原因导致的。
  • 很多bug都会在弱网的情况下展现出来,如由于响应慢而多次请求,最终导致app出现ANR问题。

2、弱网定义

现在很多时候2G或者在地铁、电梯等场景的3G网,均可定义为弱网

下面是常见网络制式的上行、下载速度表,可以参考。

二、Fiddler实现弱网的测试

无论是做web端还是app端的测试,我们都需要对弱网进行测试,对于弱网方法有很多种

如:Fiddler模拟弱网,控制电脑的网速等,今天介绍下Fiddler如何进行弱网测试。

1、Fiddler中启动弱网

打开Fiddler,Rules->Performance->勾选 Simulate Modem Speeds,勾选之后访问网站会发现网络慢了很多。

2、设置弱网的参数

菜单Rules—>Cutomize Rules

让我们来分析一下这几行代码:

        if (m_SimulateModem) {
            // Delay sends by 300ms per KB uploaded.
            oSession["request-trickle-delay"] = "300"; 
            // Delay receives by 150ms per KB downloaded.
            oSession["response-trickle-delay"] = "150"; 
        }

首先来判断m_SimulateModem是否为true(是否开启),也就是是否设置了弱网模式。

oSession[“request-trickle-delay”] = “300”;

Delay sends by 300ms per KB uploaded:上传1KB内容需要300ms,转化一下上传速度:1Kb/0.3s = 3.3KB/s,也就是说网络上行速度只有3.3KB。

oSession["response-trickle-delay"] = "150";

Delay receives by 150ms per KB downloaded:下载1KB内容需要150ms,转化后的下载速度:1KB/0.15s=6.6KB/s,也就是说网络下载速度只有6.6KB。

如果你想设置下载的速度为50KB/s,你则需要设置Delay 时间为 20ms。也可以限制上传的速度,调整oSession[“response-trickle-delay”]的值即可。

3、验证效果

同样的接口,开启弱网前后分别运行一次,查看统计数据。

4、恢复设置

完成测试之后,需要再次执行:打开Fiddler,Rules->Performance->勾选 Simulate Modem Speeds,关闭弱网模拟。

到此这篇关于浅析软件测试使用Fiddler实现弱网测试的文章就介绍到这了,更多相关软件测试Fiddler弱网测试内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 字符编码详解(基础)

    字符编码详解(基础)

    字符编码问题, 对于一个在伟大天朝的程序员来说, 几乎不可能遇不到, 从我刚开始接触Coding到现在, 乱码, 编码转换问题就好像一直没有停息过.

    2009-09-09
  • 详解inet_pton()和inet_ntop()函数

    详解inet_pton()和inet_ntop()函数

    这篇文章主要介绍了inet_pton()和inet_ntop()函数,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • PHP和Java的主要区别有哪些?哪个最适合Web开发语言?

    PHP和Java的主要区别有哪些?哪个最适合Web开发语言?

    Java和PHP都是编程语言,大家知道它们最大的区别就是一个是静态语言一个是动态语言吧。没错,Java是一种静态语言,PHP是一种动态语言。那它们还有哪些区别? 哪个最适合Web开发语言?下面,小编再给大家详细介绍下。
    2016-08-08
  • 关于爬虫和反爬虫的简略方案分享

    关于爬虫和反爬虫的简略方案分享

    这篇文章主要给大家介绍了一些关于爬虫和反爬虫的简略方案的相关资料,文中介绍的非常详细,对大家理解和学习爬虫与反爬虫具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-01-01
  • git基础之各版本控制系统介绍

    git基础之各版本控制系统介绍

    这篇文章主要为大家介绍了git基础之各版本控制系统以及版本的演变,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-04-04
  • XXencode 编码,XX编码介绍、XXencode编码转换原理与算法

    XXencode 编码,XX编码介绍、XXencode编码转换原理与算法

    这篇文章主要介绍了XXencode 编码,XX编码介绍、XXencode编码转换原理、算法,需要的朋友可以参考下
    2016-06-06
  • 编译和解释的区别是什么

    编译和解释的区别是什么

    最近发现有很多网友都提出一个问题:程序的编译与解释有什么区别?这篇文章就为大家介绍了编译和解释的区别,需要的朋友可以参考下
    2016-12-12
  • 比特币上的数独游戏合约的实现代码

    比特币上的数独游戏合约的实现代码

    这篇文章主要介绍了比特币上的数独游戏合约的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • Github代码常用指令(小结)

    Github代码常用指令(小结)

    这篇文章主要介绍了Github代码常用指令(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-08-08
  • 深入探究ChatGPT的工作原理

    深入探究ChatGPT的工作原理

    这篇文章主要探讨了ChatGPT的工作原理,ChatGPT是基于OpenAI开发的GPT-4架构的大型语言模型,文中图文介绍的非常详细,感兴趣的同学跟着小编一起来学习吧
    2023-06-06

最新评论