继上篇介绍了 Qnet 的各个界面的详细功能后,本文则重点围绕“如何开战 APP 弱网测试?”,详细介绍下整个测试流程及步骤。
01. Qnet 工具测试步骤
第 1 步:选择待测应用
QQ 登录后,在【工作台页】点击[点击选择应用],选择测试 APP:例如柠檬班 app。
第 2 步:选择弱网测试模板
将需要测试的网络场景模板添加到工作台,点击选择网络场景,可支持模板编辑。比如当前测试选择[极差网络]。
第 3 步:启动
第一次开启时会弹出请求【悬浮窗权限】,勾选允许悬浮窗功能;再次点击启动,第一次运行时会弹出请求【VPN 权限】,点击【确定】则 QNET 启动成功
第 4 步:操作待测 APP,关注软件情况
启动后,QNET 会自动拉起待测 APP,页面会显示控制悬浮窗,信息悬浮窗。
-
控制悬浮窗:
-
【QNet 图标】按钮双击后会回到 QNET 应用中(部分厂商手机可能不支持);
-
【暂停/继续】按钮点击后会切换到正常网络,继续后会回到当前弱网模板继续执行;
-
【扩展/收缩】按钮点击后会展示所有的模板,方便用户切换模板进行测试;
-
信息悬浮窗:
展示当前弱网类型、网络延时 ping 值、当前弱网生效状态和参数内容;
第 5 步:停止
测试完毕,双击[控制悬浮窗]Qnet 图标,回到 Qnet【工作台】页面,点击停止。
设置页勾选[测试报告],停止后可手动获取/storage/emulated/0/qnet_save/report 中报告数据查看。
02. Adb 实现弱网自动化
前提:确保本地电脑已安装好 adb 运行环境(自行百度)。
功能介绍:ADB 指令执行功能可以自动化的启用弱网,帮助用户可以接入进行自动化测试弱网。功能包括 adb 命令行发送指令启动弱网、停止弱网、更新弱网模板等功能。
参数传递方式:
--[类型] [key] [value]
--ei:表示参数值为 int
--es:表示参数值为 string
1. 启动弱网
首先执行命令启动 QNET 进程:
adb shell am start {--[类型] [key] [value]} com.tencent.qnet/.Component.AdbStartActivity
使用示例:针对柠檬班 app 进行 UDP 上行 50ms 延时抓包
adb shell am start --ei "dump_pcap" 1 --es "package_name" "com.lemon.lemonban" --ei "out_delay" 50 --ei "protocol" 2 com.tencent.qnet/.Component.AdbStartActivity
补充:
获取 app 包名: adb shell dumpsys activity | find "mResumedActivity"
2. 结束弱网并退出进程
adb shell am broadcast -a "qnet.boradcast.drive" --include-stopped-packages {--[类型] [key] [value]} com.tencent.qnet
使用示例:结束弱网
adb shell am broadcast -a "qnet.boradcast.drive" --include-stopped-packages --es
"command" "stop_service" com.tencent.qnet
3. 详细参数列表
注意:
QNET 进程不能被清理,否则弱网会被关闭;
更新弱网参数是全量更新,参数中没有设置的参数会被直接设置为默认值。
参考文档:Qnet 官网文档
最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。