移动性能测试 移动弱网测试方案之一

rywu · February 19, 2014 · Last by yufuchen replied at April 18, 2019 · 4566 hits
本帖已被设为精华帖!

移动app在测试时,有时需要考虑弱网的情形下,app的表现,那么怎么营造这样子的环境呢?

一、首先需要控制网络,有两种方式其一使用网络损伤仪进行,其二采用软件方式。硬件采购费用太贵,因此使用win平台下的ShunraVESMBEditon或者Network Emulator for Windows Toolkit。两者都能达到控制丢包率,延迟等功能。考虑到ShunraVESMBEditon收费,接下来使用Network Emulator for Windows Toolkit软件。

二、手机app使用wifi连接到服务器,但是我们的控制软件控制的为电脑本身的网络。那么就需要将电脑自身有线网络转换为wifi供手机app使用。connectify软件提供了该功能,将有线网络share出来。

安装、使用Network Emulator for Windows Toolkit软件
1 安装
下载地址:http://blog.mrpol.nl/2010/01/14/network-emulator-toolkit/
拥有32位和64位两个版本
2使用
2.1 首先运行软件Network Emulator Client
在菜单栏找到Configuration →New link(新建链路)→设置loss(丢包率)、latency(延时率)→设置成功点击"确定"

Connectity安装
Connectify下载地址:http://www.connectify.me/
运行软件比较简单
在internet to share 选择 你的有线网卡

Share over 选择Wi-Fi
Sharing Mode 选择Wi-Fi Access Point,Encrypted(WPA 2)

然后点击 Start Hotspot,启动wifi后,就可以使用手机连接了。密码为connectify中password,该域可编辑。

三、测试方案

考虑现有的2G网络,一般上行带宽在8-15kb/s,下行20kb/s-50kb/s。
单一场景:
上行下行均采用如下参数设置

网络丢包率 5% 10% 20% 50% 80%
缺陷个数

网络延迟时间 30ms 50ms 100ms 200ms 500ms
缺陷个数

带宽限制
上行
网络带宽 5kb/s 8kb/s 15kb/s 50kb/s 100kb/s
缺陷个数

下行
网络带宽 10kb/s 15kb/s 50kb/s 100kb/s 150kb/s
缺陷个数

混合场景(表格,不好编辑,暂时这样吧)

网络带宽 10kb/s 15kb/s 50kb/s 100kb/s 150kb/s
缺陷个数
丢包率

5%

10%

20%

50%

80%

完毕
本人对网络这块不是很熟悉,如果有好的建议和意见,请指出。谢谢!!

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 36 条回复 时间 点赞

受教了,我一般是找个电梯或者地下室等信号不好的地方,实地的测试!哈哈

我之前测试的软件在弱网状态下会崩溃!

很不错啊,这个方法可以应用到电脑上么?比如我测试网页应用?

Cool!
弱网的我一直让运维大哥帮忙在路由那做设置(他的用那个软件不是文中说的,但好像很流弊的样子,有控制丢包率限制带宽这些功能~他说运维手里都会有些类似的工具~)。
Connectity之前用过,配置时总出错~后来改用wifi共享精灵来做的~

rywu #5 · February 20, 2014 作者

#3楼 @lihuazhang 这个控制pc的有线,可以尝试下。

rywu #6 · February 20, 2014 作者

#4楼 @mingway_hu linux平台下有个 nistnet。也可以控制丢包率,限制带宽。没有使用过,但是网络上有教程。

Network Emulator 这个可用 我们做PC上游戏的网络测试也是用的这个~

iOS设备中有设置网络的选项,可以控制丢包等情况

#4楼 @mingway_hu 可以尝试使用160wifi,我觉得分享wifi更好用

#10楼 @jakewendao 哦哦,有看过那个,wifi共享精灵、160wifi、Connectity功能都类似~

#9楼 @lihuazhang ios设备和Mac开发机用数据线连接过后(连接再拔掉数据线也可以,如果重启手机的话就会消失),设置中有“开发者”item(在社交工具item下面,airport等item的上面) ,点击进入后又Network LInk Conditioner选项,进入之后可以自定义in/out packet loss delay等等
如果想控制某个特定请求的话,一般用fiddler代理来做

你的弱网应该指的是weak signal area,这之前公司我有做过field trail,这个是需要做的,不过测试环境是找到这种区域,比如说地下停车场,你这种解决方法给了local进行弱网测试的解决方案,不错!

linux下有个类似的工具:tc
功能强大,而且简单易用

#15楼 @lihuazhang
tc非常强大,控制丢包、网络延迟只是其中很简单的功能
这里有篇文章介绍了其中一部分功能:
http://bhjsj04516.blog.51cto.com/714720/225210

----------本楼绝不是广告帖,说到弱网测试,向各位朋友推荐下WANem---------------

网络损伤模拟推荐使用塔塔开源的优秀开源镜像 WANem,灵活的路由添加模式,强大的带宽,随机丢包率,突发丢包等模拟机制,提供方便的WEB管理界面,能够模拟出互联网真实的损伤环境。开源地址:http://www.oschina.net/p/wanem 我个人和一个同事维护了一个该镜像的中文版本CCWANem。

CCWANem对基于KNOPPIX的WANem进行了汉化及优化,重新打包制成了独立的中文版镜像文件,换句话说:
不用再等官方的语言包了,这是一个独立的镜像版本,完整汉化。

WANem:

模拟常见带宽和自定义带宽
设置丢包/延时,随机丢包,突发丢包
配合各种参数

我们将其应用在了我们通信产品的弱网测试中,特别是互联网复杂环境下的模拟,WANem都能胜任。

CCWANem的SF地址以及Wiki上我写上了简单的使用例程

http://sourceforge.net/projects/ccwanem/

在linux 环境有没有好的弱网络模拟软件?

#18楼 @yunmu 14楼的筒子有提到linux下有个tc。。。你可以 @ 他问下~

弱弱的问一下 上行带宽 和下行带宽 在哪里设置的 ?

楼主,求 之二。

我下载了,发现不太会用。有详细的操作步骤吗?万分感谢!

1.tc,利用linux,控制网卡网速,利用路由器提供wifi服务,即可达到,可以控制延迟和丢包。
2.android手机利用iptable,定制防火墙规则。ios手机开发者模式上带有一个ios提供的简单弱网

我是用Fiddle把手机和PC连接,然后再Fiddle上配置上下行速率来配置弱网。不过这个只能改网速,不能改丢包率之类的

25Floor has been deleted

#3楼 @lihuazhang 那个软件本来就是设置电脑网卡参数的,只是通过wifi共享了手机连到那才对移动端测试起的作用

刚好用到,多谢了

WANem,不错,简单易用,很容易维护

很好,感谢

按照作者给出的思路,先安装了Network Emulator for Windows Toolkit。添加link后设置了网络延迟时间100ms及丢包率5%(上行/下行宽带参数一致)。然后安装了Connectify,将pc网络share出来,命名为M。后手机wifi连接M,发现网速还是很强,达不到我限制网速的要求。
求助:
1.我理解为Network Emulator for Windows Toolkit的作用是对pc端的wifi限速,然后通过Connectify将pc端wifi分享出来。如果我的理解是对的 ,怎么来确定我对pc端的wifi限制参数成功。

工具安装上面的思路设置后,没有任何效果。是否有详细的配置信息

rywu #33 · February 02, 2016 作者

#31楼 @eat_an_apple 可以使用其他电脑连接共享wifi,然后测试他的延迟等。尝试了下使用360wifi硬件替换connectify,应该更稳定些

—— 来自TesterHome官方 安卓客户端

求教 我在windows 64位系统上使用该软件 导入设置好的丢包率文件后 点击start按钮后,一直提示我failed to create virtual channel 这是为什么呢?

tester 弱网测试方法整理 中提及了此贴 10 Feb 09:38

几年之前,在测端游的时候,用这个软件模拟过弱网进行测试,但后来不知道为啥,软件突然就不好使了。。
不管怎么说,感谢分享!

Network Emulator for Windows Toolkit 建议不要在在windows10环境中使用,相同配置,在win10,start 即断网,无法进行弱网模拟,未找到原因和解决方法。相同的网络配置在win7中能够正常使用。

lyoul 回复

我最近也在使用这个工具,同样遇到你回复中提到的问题,正在找win7的机器试验。看到你的回复就像看到希望了一样,谢谢。

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up