目前在测试移动设备上进行弱网络专项测试的方案主要有两种:

  1. 通过Android设备连接到PC上进行弱网络测试,比如Fiddler,Charles,NET-Simulator等。基本思路是在PC上装一个Fiddler网络抓包工具,然后再将Android设备的网络代理到PC上,通过在PC上的Fiddler在设置延时来进行弱网络模拟。
  2. 在专有服务器上构建弱网络Wi-Fi,移动设备连接该Wi-Fi进行弱网络测试,相关的技术方案有Facebook的ATC和腾讯的Wetest-WiFi;

以上两种方法都能够实现移动设备的弱网专项测试,也是比较成熟的方案,但也存在以下几点缺点:

  • 需要额外的PC或者服务器,弱网环境构建成本高;
  • 需要安装、部署额外的工具,并且弱网络环境需要在PC上或者Web上进行配置,使用成本高;
  • 弱网络环境功能并不完善,比如Fiddler不支持丢包、抖动等弱网环境;

腾讯WeTest开放平台最近推出了一款针对移动应用的弱网测试工具QNET,解决了在Android设备上进行弱网络专项测试的痛点,QNET无需ROOT手机,无需连接数据线,以独立app的方式,为用户提供给快捷、可靠、功能完善的弱网络模拟服务。

另外QNET还有一个很好用的功能——TCP/UDP网络协议抓包,帮助开发和测试人员进行网络流量分析,而不需要ROOT手机,使用tcpdump进行抓包。

QNET下载传送门:(应用宝下载链接

QNET使用说明

QNET是一个界面简洁,使用上也比较简单。

登陆

QNET支持手Q账号或者腾讯员工的TAPD账号登陆,如果使用QQ账号首次登陆,需要注册WeTest平台账号,即可成功登陆。

选择测试APP

成功登陆后,点击【点击选择测试程序】按钮,选择待测试的弱网工具,然后点击下方的【开始测试】按钮,第一次启动的时候需要对悬浮窗权限进行授权,部分机型会弹出开启VPN服务的确认框,点击确认。

弱网模板

QNET支持系统预设模板和用户自定义模板,预设模板包含了常见的2G/3G/4G网络模板,还有弱网测试中比较常用的100%丢包模板等,预设模板不支持编辑,可以删除;

另外,QNET支持用户根据自己的测试需求自定义弱网参数模板,有比较好的灵活性。

悬浮窗

开始测试后,QNET会自动拉起待测试程序,然后默认会显示弱网模板控制悬浮窗,以及弱网模板信息悬浮窗。

  • 左边悬浮窗是控制悬浮窗,可以下拉即时切换弱网模板,双击Q按钮可以切回QNET应用,点击暂停按钮可以停止弱网状态恢复正常网络;
  • 右侧悬浮窗显示当前的模板名,实时延迟,实时网速,以及当前模板的具体参数。

注:QNET支持动态探测当前网络和远端服务器的延迟,然后动态适配用户设置的上下行延迟,保证真实网络延迟和用户设置的尽量一致。

弱网参数

QNET目前支持的弱网参数包括:

  • 上下行延时(Delay)
  • 上下行延时抖动(Jitter)
  • 上下行带宽(Bandwidth)
  • 上下行随机丢包(Random Packet Loss)
  • 上下行连续丢包(Continuous Packet Loss)
  • TCP/UDP协议控制(Protocol)

如下是一个控制延迟和延迟抖动的示意图:

连续丢包可以实现周期性断网的弱网场景,常用在测试游戏流畅性,验证游戏对网络波动的支持程度。

TCP/UDP协议控制(Protocol)支持针对协议的弱网控制,比如我们可以控制UDP协议100%丢包,来测试某些不支持UDP协议的运营商的弱网场景。

网络抓包

QNET还支持网络抓包,导出为Pcap文件,可以在PC上用Wireshark工具打开分析,目前支持TCP, UDP, DNS协议,如下图是一个抓包示例:

使用网络抓包功能需要开启开关:

QNET,一款给力的APP弱网络测试工具的更多相关文章

  1. 4款APP原型设计工具助你搞定移动应用设计!

    随着信息化社会的不断发展,不仅手机迭代更新的速度飞快,就连手机里的App 也层出不穷.作为一名UI/UX设计师或产品经理,如何才能设计一款出色的移动App?光有好的创意是不够的,你还需要一款正确的Ap ...

  2. APP弱网测试工具(QNET)

    QNET介绍官网链接:https://wetest.qq.com/product/qnet 目前在测试移动设备上进行弱网络专项测试的方案主要有两种: 通过Android设备连接到PC上进行弱网络测试, ...

  3. APP弱网测试方法

    常用工具 •利用抓包工具   -Fiddler/Charles•使用chrome浏览器的开发者工具•使用手机自带的限速功能(只适用IOS设备)•需要硬件设备(路由器或者网卡)   -NEWT/ATC/ ...

  4. APP弱网测试

    APP弱网测试   App弱网测试方法,常用工具有使用fiddler进行网络模拟,也可以使用Network Emulator Toolkit控制模拟网络,相对来说Network Emulator To ...

  5. 开发者必知的8款App快速开发工具

    开发者必知的8款App快速开发工具 “我有一个好创意,就差一个CTO……” “原生APP开发难度大,周期长,成本高,还没上线市场已经被占领了.” “APP版本迭代更新,都是企业的一道难关,没有一个一劳 ...

  6. 10款无需编程的App DIY开发工具

    10款无需编程的App DIY开发工具 你有一个很棒的创意但不会编程怎么办?外包.合伙开发还是从零学编程?这里提供另外一种方式--使用无需编程的App  DIY开发工具.DIY开发工具不仅节省了开发时 ...

  7. Clumsy 利用无线网卡结合Clumsy软件模拟弱网络测试

    利用无线网卡结合Clumsy软件模拟弱网络测试 by:授客 QQ:1033553122 实践环境 Clumsy 0.2 下载地址:http://jagt.github.io/clumsy/downlo ...

  8. 每一个开发人员都应该有一款自己的App

    [谋哥每天一干货]          这篇文章不是鸡汤,是谋哥自己的感悟了. 谋哥近期每日一干货,坚持每天写,才发现这个事情你要是能坚持一年超级难.365天无论刮风下雨.心情好或不好.生病或生气.每天 ...

  9. 开发一款即时通讯App,从这几步开始

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯云视频发表于云+社区专栏 关注公众号"腾讯云视频",一键获取 技术干货 | 优惠活动 | 视频方案 " ...

随机推荐

  1. php优秀框架codeigniter学习系列——CI_Input类学习

    这篇文章主要介绍CI核心框架工具类CI_Input. 根据CI文档自己的定义,该类用来: 提前处理全局变量,以保证安全; 提供一些帮助函数用来处理输入数据. 以下选取类中的重点方法进行说明. __co ...

  2. ABP框架(asp.net core 2.X+Vue)模板项目学习之路(一)

    前言: 第一次接触ABP的项目是在2018年6月份,但是当时没有深入具体的研究,而今天因为工作的需要,需要学习.了解这个框架,在时隔半年之后,今天重新下载了这个项目,虽然在园子里有很多前辈们写的这类的 ...

  3. Tiny6410 裸机开发--裸机点亮LED

    环境搭建 由于我不喜欢使用虚拟机,双系统无法同时烧程序.最近才折腾好Windows10下编译和下载程序,使用的是韦东山做的easy open jtag,资料十分齐全,之前使用jlink搭建环境碰到了一 ...

  4. Invoker-n颜色涂m个珠子的项链

    参考https://blog.csdn.net/anxdada/article/details/76862564. https://blog.csdn.net/baidu_35643793/artic ...

  5. 爱因斯坦求和约定 (Einstein summation convention)

  6. C#中扩展方法的使用

    MSDN中这样定义扩展方法:扩展方法使你能够向现有类型“添加”方法,而无需创建新的派生类型.重新编译或以其他方式修改原始类型. 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用. ...

  7. Unity备份新知识待写

    Unity开发VR之Vuforia 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  8. hashlib,hmac,subprocess,configparser,xlrd,xlwt,xml模块基本功能

    hashlib模块:加密 import hashlib# 基本使用cipher = hashlib.md5('需要加密的数据的二进制形式'.encode('utf-8'))print(cipher.h ...

  9. linux三剑客之grep

    linux基础三剑客之grep 1.grep命令 基本介绍 grep命令是文本本过滤工具,是基于一个模式匹配文件的每一行,grep分类:egrep个fgrep. grep英文名:Global  sea ...

  10. MySQL基本操作——1

    1.命令行启动或关闭MySQL服务:方式一:计算机--右击管理--服务方式二:net start MySQL服务器名称net stop MySQL服务器名称 2.登录和退出(必须在MySQL服务启动的 ...