安卓系统开发中,UI测试是至关重要的一环,它可以确保应用程序在不同设备上能够正常运行,并提供良好的用户体验。在进行安卓系统开发的UI测试时,有多种方法和工具可以帮助开发人员有效地测试应用程序的用户界面。本文将介绍安卓系统开发的UI测试流程及常用工具,帮助开发人员更好地进行UI测试。
UI测试的重要性
在安卓应用程序开发中,UI测试是确保应用程序质量的关键一环。一个好的用户界面可以提升用户体验,增加用户满意度,从而提升应用程序的市场竞争力。通过UI测试,开发人员可以及时发现和修复应用程序中的界面bug和问题,确保应用程序在不同设备上均能正常展示和操作。
UI测试还可以帮助开发人员验证应用程序的交互逻辑是否正确,各个界面之间的跳转是否流畅,从而提升整体的用户体验。通过UI测试,开发人员可以更加全面地测试应用程序的功能性,保证应用程序的质量。
安卓系统开发的UI测试流程
在进行安卓系统开发的UI测试时,通常遵循以下流程:
1. 确定测试用例
开发人员需要根据应用程序的功能和需求,制定出一套完整的UI测试用例。测试用例应覆盖应用程序的各个界面和功能,包括正常情况下的操作流程、异常情况下的处理等,确保测试全面有效。
2. 选择UI测试工具
在进行UI测试时,开发人员可以选择合适的UI测试工具,常用的UI测试工具包括:
- Appium:一个用于自动化移动应用程序的开源工具,支持Android和iOS平台。
- Espresso:Google推出的UI测试框架,适用于Android应用程序的单元测试和集成测试。
- UI Automator:Android官方提供的UI测试框架,支持跨应用程序的UI测试。
选择合适的UI测试工具可以提高测试效率和准确性,帮助开发人员更好地进行UI测试。
3. 编写测试脚本
根据测试用例,开发人员需要编写相应的UI测试脚本。测试脚本可以通过选择UI测试工具提供的API进行编写,实现对应用程序界面的模拟操作和验证。
4. 运行UI测试
在编写完测试脚本后,开发人员可以通过UI测试工具运行UI测试,模拟用户操作应用程序界面,验证应用程序的功能和界面是否正常。
5. 分析测试结果
一旦UI测试运行完毕,开发人员需要分析测试结果,查找并修复测试中发现的bug和问题。通过持续分析测试结果,开发人员可以不断优化应用程序的用户界面,提升用户体验。
UI测试的注意事项
在进行安卓系统开发的UI测试时,开发人员需要注意以下事项:
1. 跨设备适配性测试
由于安卓系统设备的多样性,开发人员需要确保应用程序在不同设备上的展示效果和操作方式都能正常。因此,跨设备的适配性测试是非常重要的,开发人员应充分测试应用程序在各种设备上的兼容性。
2. 用户体验测试
除了功能性测试,用户体验测试也是UI测试中的重要一环。开发人员需要模拟用户实际操作应用程序的场景,测试应用程序的交互逻辑是否流畅,界面是否易用,确保用户能够顺利使用应用程序。
3. 持续集成测试
为了确保应用程序的稳定性和质量,开发人员可以将UI测试集成到持续集成流程中。通过持续集成测试,可以定期对应用程序进行UI测试,及时发现和修复问题,保证应用程序的稳定性和质量。
结语
UI测试是安卓系统开发中不可或缺的一环,它可以帮助开发人员提升应用程序的用户体验,确保应用程序在不同设备上能够正常展示和操作。通过遵循UI测试流程,选择合适的UI测试工具,编写完善的测试用例,开发人员可以更好地进行UI测试,提高应用程序的质量和竞争力。
如何使用python做android的自动化测试
开始第一个简单的Android UI自动化测试1.使用adb命令连接真机或模拟器2.打开uiautomatorviewer工具3.使用uiautomatorviewer工具获取应用的元素进行定位4.简单介绍unittest框架的使用方法5.使用Python编写猫宁考勤应用注册模块的自动化测试1.使用adb命令连接真机或模拟器:手机USB连接电脑,进入开发者模式;cmd命令:adb devices ,查看手机是否连接这里写图片描述显示错误这是因为adb的端口被占用,我们需要查看是什么应用占用了这个端口(5037为adb默认端口)cmd命令 : netstat -aon|findstr “5037”这里写图片描述可以看到占用5037端口对应的程序的PID号为8388;cmd命令 : tasklist|findstr “8388”这里写图片描述可以看出8388对应的程序为,说明该程序正在使用5037端口;这时我们需要在任务管理器中结束进程,按快捷键“Ctrl+Shift+Esc”调出Windows任务管理器,找到“”,单击下方的结束进程即可!这里写图片描述我们再次运行cmd命令:adb devices这里写图片描述这一步成功后我们才能运行sdk自带的uiautomatorviewer;我们需要用uiautomatorviewer工具来获取元素,用于定位。
cmd命令:uiautomatorviewer,打开uiautomatorviewer界面这里写图片描述或者找到sdk目录:sdktools中找到文件双击运行这里写图片描述2.打开uiautomatorviewer工具这里写图片描述我们可以根据text,resource-id,class等元素进行定位3.使用uiautomatorviewer工具获取应用的元素进行定位这里我使用python自带的IDLE进行编写测试脚本,打开python文件找到IDLE(python GUI)双击打开,如图:这里写图片描述4.简单介绍unittest框架的使用方法#-*- coding:utf-8 -*-from uiautomator import device as dimport unittestclass Mytest():#初始化工作def setUp(self):print ————–初始化工作#退出清理工作def tearDown(self):print ————–退出清理工作#测试点击猫宁考勤casedef test_login(self):d(text=猫宁考勤)()print ————–测试1#测试2def test_z(self):print ————–测试2#这里你可以写你的第二个测试用例,#测试3def test_w(self):print ————–测试3#这里你可以写你的第三个测试用例。
。
。
。
。
。
。
。
。
。
。
。
。
if __name__ == __main__()结果如下:Testing started at 21:14 …————–初始化工作————–测试1————–退出清理工作————–初始化工作————–测试3————–退出清理工作————–初始化工作————–测试2————–退出清理工作Process finished with exit code 0从结果中我们可以看出unittest框架的运行方式为:setUp 测试1 tearDownsetUp 测试2 tearDownsetUp 测试3 tearDown5.使用Python编写猫宁考勤应用注册模块的自动化测试#-*- coding:utf-8 -*-from uiautomator import device as dimport timeimport unittestclass MyTestSuite():# 初始化工作def setUp(self):print ————–初始化工作# 退出清理工作def tearDown(self):print ————–退出清理工作#***************************方法**************************************# 判断控件是否存在 & textdef check_controls_exists(self, controls_text):if d(text=controls_text):return 1else:return 0# 判断按钮是否置灰 & text & clickabledef check_controls_click_text(self, controls_text):if d(text=controls_text)(clickable) is True:return 1else:return 0#assertIn(a, b) a in bdef check_ainb(self,resourceid,b):if d(resourceId=resourceid)(text) inb:return 1else:return 0#***********************************************************# 注册模块def test_Aregister(self)(2)#猫宁考勤开启全新时代(_controls_click_text(注册),1,u猫宁考勤开启全新时代)# 猫宁考勤开启全新时代–》点击注册按钮进入注册猫宁界面d(text=注册)()(3)#注册猫宁界面(_text(:id/regis_phone,请输入手机号码),1,u注册页面-》请输入手机号码)(_text(:id/regis_verifycode,请输入验证码),1,u注册页面-》请输入验证码)(_controls_click_text(获取验证码), 0,u注册页面-》获取验证码)(_controls_click_text(《中科爱讯服务协议》), 1,u注册页面-》《中科爱讯服务协议》)(_controls_click_text(注册), 0,u注册页面-》注册)(2)#《中科爱讯服务协议》d(text=《中科爱讯服务协议》)()(2)(_ainb(:id/title,服务协议), 1,u注册页面-》服务协议)(1)d(resourceId=:id/title_back)()(1)#手机号不输入是否能注册d(text=注册)()(3)# 手机号只输入1个数字是否能注册&只输入1个数字是否能获取验证码d(resourceId=:id/regis_phone)_text(1)(_controls_click_text(获取验证码), 0)(1)d(text=注册)()(1)d(resourceId=:id/regis_phone)_text()(1)#只输入5个数字是否能获取验证码d(resourceId=:id/regis_phone)_text()(_controls_click_text(获取验证码), 0)(1)d(resourceId=:id/regis_phone)_text()(1)#只输入手机号是否能注册d(resourceId=:id/regis_phone)_text(phone_number)(_controls_click_text(注册), 0)(1)d(text=注册)()(1)#输入正确的验证码&获取验证码是否高亮d(resourceId=:id/regis_verifycode)_text(5648)(1)(_controls_click_text(获取验证码), 1)(2)#密码只输入1个数字是否能注册&注册按钮是否高亮d(resourceId=:id/regis_pass)_text(1)d(resourceId=:id/regis_passAgain)_text(1)(1)(_controls_click_text(注册), 0,u密码只输入1个数字是否能注册)(1)d(resourceId=:id/regis_pass)_text()d(resourceId=:id/regis_passAgain)_text()(1)#输入不相同的密码是否能注册d(resourceId=:id/regis_pass)_text()d(resourceId=:id/regis_passAgain)_text()(1)(_controls_click_text(注册), 0,u输入不相同的密码是否能注册)(1)d(resourceId=:id/regis_pass)_text()d(resourceId=:id/regis_passAgain)_text()(1)#输入正确的密码是否能注册&我已同意是否打钩d(resourceId=:id/regis_pass)_text()d(resourceId=:id/regis_passAgain)_text()(1)(_controls_click_resourceId(:id/regis_agree), 1)(_controls_click_text(注册), 1)(2)d(text=注册)()(8)except Exception, e:print uError: 注册模块有问题n, edef test_app():test_unit = ()test_(MyTestSuite(test_Aregister))if __name__ == __main__:# 测试()
怎样使用Appium进行Android自动化测试
1、Robotium——安卓测试工具Robotium是安卓系统最常用的自动化测试工具,并且是一款免费的安卓UI测试工具。
它适合于各种不同的安卓版本及其下行版本。
软件开发者经常把它称作安卓。
Robotium创建的测试使用Java写的。
事实上,Robotium是一个个体测试数据库。
但是Robotium需要花费很长时间努力去创建测试,就像为了自动化程序创建的源代码。
它不适合互动的软件系统,不能锁住和解锁智能手机。
Robotium没有记录和播放功能,它不支持截屏。
2、MonkeyRunner——安卓App测试工具MonkeyRunner是最流行的有自动化功能的安卓软件测试工具。
MonkeyRunner比起Robotium要低端一些。
它并不处理源代码。
测试创建是用Python写的,其中可能使用记录工具,为了创建测试。
MonkeyRunner可以在连接状态的PC或者模拟器上运行测试。
它有一个应用程序接口可以控制智能手机或者模拟器。
但手机APP测试工具的最大缺陷是每个设备都要编写脚本。
另一个缺陷就是,每次测试程序发生改变时都要调整。
3、Ranorex——安卓App测试工具Ranorex是一个不错的自动化测试工具,不仅最新版本,Android 2.2.以上版本都是可以的。
Ranorex的好处在于它有详细的截屏报告。
他可以通过WiFi上网连接智能手机或者平板电脑。
通过这个 Android 工具,自动化的测试工程师可以详细描述数据驱动测试,但不包括 XML 数据格式。
Ranorex可以很轻松地创建测试,自动化测试工程师只需点击鼠标。
Ranorex允许附加的程序模块。
这个模块可以被用于开发更为复杂的测试场景中。
Ranorex是一个商业化的移动应用程序的工具;其许可价格是 1990欧元/年。
Ranorex搜索相当慢;它需要 30 秒的时间来执行操作。
其中一个必须为Ranorex文书的 APK 文件。
否则它不能通过这个工具进行自动化测试,它只能在APK 文件下工作。
4、Appium——安卓自动化测试工具Appium是为iOS和安卓系统创建的自动化测试框架,是一个免费工具。
它支持 2.3 及更高版本的 Android 系统。
Appium利用WebDriver界面运行测试。
它支持许多编程语言,如 Java、 C#、Ruby和其他的WebDriver数据库。
它可以在移动设备上控制 Safari 和Chrome。
但是,一些自动化的测试工程师抱怨它提供的报告不足。
它的缺点也减少了对于XPath在移动设备上的支持。
5、UI Automator——安卓自动化测试谷歌最近推出了这一工具。
它支持从4.1开始的安卓版本。
我们应该选择另一个更早期的安卓应用程序进行自动化测试。
UI Automator能够与各类安卓系统兼容,包括系统的应用程序。
这使得UI Automator可以锁定和解锁智能手机或平板电脑。
通过该工具创建的脚本可以在许多不同的安卓平台上执行。
它允许复制用户的操作复杂的序列。
UI Automator也可以利用外部按钮的装置调节,打开和关闭设备的按钮。
UI Automator可以与测试框架TestNG集成。
在这种情况下,用户界面自动可以生成内容丰富和详细的报告,类似于由Ranorex生成的报告。
此工具搜索速度还非常快。
在许多安卓平台上测试后,软件测试专家认为UI Automator是质量最好的移动应用程序。
它是安卓做好的应用程序之一,它由谷歌推出。
通常大约 80%的新软件的 bug 都会重现支持的平台。
其余 20%出现在其他平台上。
这意味着,在大多数情况下,事先测试软件产品比盲目使用更好。
目前, Android 4.1 版本安装了约 66%操作系统的设备。
这就是为什么许多自动化的测试工程师经常决定UI Automator是最合适的解决方案。
做Android手机软件测试需要掌握哪些工具?
请注意测试本身不是靠工具的而是靠设计,这是我的理念,所以我一向觉得,很多人认为做测试做的好就是靠掌握一门好的工具,这个观点是不正确的,所以我可以负责任的告诉你,做Android手机需要掌握的不是工具、而是理念、思维、以及框架,总的来说是本质,而工具只是辅助,那么现在我来介绍一些我了解的工具(仅仅是了解,很多没用过)开源 Android 软件测试工具包括:Android Test Kit, AndroidJUnit4, Appium, calabash-android, Monkey, MonkeyTalk, NativeDriver, Robolectric, RoboSpock, Robotium, UIAutomator, Selendroid。
Android Test KitAndroid Test Kit 是一组 Google 开源测试工具,用于 Android 平台,包含 Espresso API 可用于编写简洁可靠的 Android UI 测试。
AndroidJUnit4AndroidJUnit4 是一个让 JUnit 4 可以直接运行在 Android 设备上的开源命令行工具。
AppiumAppium 是一个开源、跨平台的自动化测试工具,用于测试原生和轻量移动应用,支持 iOS, Android 和 FirefoxOS 平台。
Appium 驱动苹果的 UIAutomation 库和 Android 的 UiAutomator 框架,使用 Selenium 的 WebDriver JSON 协议。
Appinm 的 iOS 支持是基于 Dan Cuellars 的 iOS Auto. Appium 同时绑定了 Selendroid 用于老的 Android 平台测试。
Calabash-androidcalabash-android 是一个基于 Cucumber 的 Android 的功能自动化测试框架。
Calabash 允许你写和执行,是开源的自动化移动应用测试工具,支持 Android 和 iOS 原生应用。
Calabash 的库允许原生和混合应用的交互测试,交互包括大量的终端用户活动。
Calabash 可以媲美 Selenium WebDriver。
但是, 需要注意的是 web 应用和桌面环境的交互跟触摸屏应用的交互是不同的。
Calabash 专为触摸屏设备的原生应用提供 APIs。
MonkeyMonkey 是 Google 开发的 UI/应用测试工具,也是命令行工具,主要针对压力测试。
你可以在任意的模拟器示例或者设备上运行。
Monkey 发送一个用户事件的 pseudo-random 流给系统,作为你开发应用的压力测试。
MonkeyTalkMonkeyTalk 是世界上最强大的移动应用测试工具。
MonkeyTalk 自动为 iOS 和 Android 应用进行真实的,功能性交互测试。
MonkeyTalk 提供简单的 smoke tests,复杂数据驱动的测试套件。
MonkeyTalk 支持原生,移动和混合应用,真实设备或者模拟器。
MonkeyTalk 使得场景捕获非常容易,可以记录高级别,可读的测试脚本。
同样的命令可以用在 iOS 和 Android 应用上。
你可以记录一个平台的一个测试,并且可以在另外一个平台回放。
MonkeyTalk 支持移动触摸和基于手势交互为主的移动体验。
点击,拖拽,移动,甚至是手指绘制也可以被记录和回放。
NativeDriverNativeDriver 是 WebDriver API 的实现,是原生应用 UI 驱动,而不是 web 应用。
RobolectricRobolectric 是一款Android单元测试框架,使用 Android SDK jar,所以你可以使用测试驱动开发 Android 应用。
测试只需几秒就可以在工作站的 JVM 运行。
Robolectric 处理视图缩放,资源加载和大量 Android 设备原生的 C 代码实现。
Robolectric 允许你做大部分真实设备上可以做的事情,可以在工作站中运行,也可以在常规的 JVM 持续集成环境运行,不需要通过模拟器。
RoboSpockRoboSpock 是一个开源的 Android 测试框架。
提供简单的编写 BDD 行为驱动开发规范的方法,使用Groovy 语音,支持 Google Guice 库。
RoboSpock 合并了 Robolectric 和 Spock 的功能。
RobotiumRobotium 是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长 按、滑动等)、查找和断言机制的API,能够对各种控件进行操作。
Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测 试。
另外,Robotium 4.0版本已经支持对WebView的操作。
Robotium 对Activity,Dialog,Toast,Menu 都是支持的。
UIAutomatoruiautomator 测试框架提高用户界面(UI)的测试效率,通过自动创建功能 UI 测试示例,可以在一个或者多个设备上运行你的应用。
SelendroidSelendroid 是一个 Android 原生应用的 UI 自动化测试框架。
测试使用 Selenium 2 客户端 API 编写。
Selendroid 可以在模拟器和实际设备上使用,也可以集成网格节点作为缩放和并行测试。
如何制作移动app测试方案及详细流程?
1.首先是测试 资源确认及准备(1)产品需求文档,产品原型图 ,接口说明文档及设计文档应该齐全(2)测试设备及测试工具 的准备:IOS和Android的不同年版本的真机,以及测试相关工具的准备2.测试用例的设计及评审(1)根据产品需求文档,产品原型图等文档,设计客户端的一般功能测试用例(2)测试用例评审,修改与完善,评审过后着手进入正式测试阶段3. UI测试(1)确保手头的原型图与效果图为当前最新版本,符合产品经理及用户需求(2)测试过程一切以效果图为准,若用户体验方面有建议,先以邮件的形式 与产品经理确认,确认通过后,可以正式的发出用户体验方面的问题4.功能测试(1)APP功能测试主要依据编写的功能 测试用例进行软件功能的遍历(2)涉及的测试主要包括基本功能测试,安装,卸载,运行测试 ,异常处理(包括网络 突然中断或者网速 过慢,机器内存不足等异常情况的处理 )5.中断测试(1)软件运行 过程中接电话,收短信,锁屏,闹铃,充电,收到通知提醒后在 使用软件,软件任可以 正常运行(2)运行软件时由前台切换到后台,再切换回前台 仍能继续运行6.兼容性及适配器测试(1)硬件的适配 :不同手机 厂商,硬件 性能,不同屏幕大小的适配(2)OS版本的兼容(3)不同屏幕分辨率的适配:移动端设备的屏幕分辨率多种多样 ,如果 app没有做合适的处理可能会显示不好,甚至影响功能的操作(4)兼容性测试必须放在 一定数量的真机上运行 ,由于真机类型较多,兼容性测试 的时候可以选取典型的几种运用较多的真机进行兼容性测试7.性能测试(1)客户端性能测试注重安装卸载时间,启动时间,页面加载时间,主要功能占用的床铺,内存,流量,耗电量 等,以及与同类产品相比较是否具有优势(2)至于服务器端的性能,主要利用接口对服务器进行加压,重点关注相应时间,吞吐量,并发数,事务通过率等8.稳定性测试(1)安卓app的稳定性常常使用 monkey进行测试,通过随机事件流模拟个人操作,对检查程序的内存溢出,空指针有很大的作用9.检测分析及测试报告输出以上各种形式的APP测试结束后,应该形成完整的分析及报告文档,输出给相关人员TestBird
如何打开安卓系统的开发者模式进行USB调试
安卓系统有原生的Android,有国内修改UI的:小米的MIUI、魅族的Flyme、华为的Emotion UI、乐蛙、云、IUNI OS、Sense、LG Optimus、CyanogenMod、Blur、等等。
在这些系统里面都有一个模式,叫开发者模式。
这个模式是开放给开发人员用于调试手机的。
比如USB调试。
事实上,手机系统不会自动打开这个模式,因为不是每个人都是开发者。
非开发者不会调试反而会弄坏手机。
某部分人因功能需要而打开调试。
那这个开发者模式该怎样打开呢?安卓系统的版本不一样,打开的方法也是不一样的,我分别说一说。
安卓系统版本低于4.0的,包括4.0、3.2、2.3、2.2等等, 低版本的,在程序里,分别找到按下去: 1.系统设置 2.应用程序 3.开发 4.你可以打开“开发者模式”比如:USB调试安卓系统版本是4.12至到4.2的 这个版本比较直接,或许当时系统开发者认为这个是大众要的。
分别找到按下去: 1.系统设置 2.开发人员选项 3.你可以打开“开发者模式”比如:USB调试安卓系统版本是4.2.2以上的,包括4.4、5.0 这些版本就不一样了,系统开发者认为这个模式公开,大众都乱调试,结果把这个模式隐藏了。
分别找到按下去: 1.系统设置 2.关于手机 3.版本号,在最底下一行,连续猛点七八下,激活开发者模式 4.返回“系统设置”这层,你可以看到“开发者模式” 这时,你可以打开“开发者模式”比如:USB调试 是不是有点捉迷藏一样, 告诉你个小秘密:连续猛点“Android版本”会出现在一个糖果的。
开发者模式打开了,有人想说,我要关闭“开发者模式”,那该怎样呢? 方法1:事实“开发者模式”本身就有个开关,你把它关了,变灰色,“开发者模式”功能就不能用了,你不用它就是了。
方法2:设置—–应用程序—–设罝—–清除数据 方法3:恢复出厂 方法4:刷机 推荐方法1,其它的个人数据没备份,有风险。
如何使用fiddler进行android手机测试
一、什么是FiddlerFiddler是一个http协议调试代理工具,它能够记录并检查所有你的设备和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据,并且可以胡乱修改。
Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式。
二、怎么连接Fiddler和android设备把Fiddler设置为android设备的代理,这样android设备发送和接收的所有的请求都要经过Fiddler以手机为例,在网络的设置页手动配置代理,主机名为fiddler安装pc端的ip,端口默认为8888如下图所示:三、有哪些简单又实用的功能呢① 过滤显示所需要监控的http请求在右边的Filters标签下勾选use Filters,输入过滤条件,较常用的是show only if URL contains ..② 自动响应客户端请求在右边的AutoResponder标签下勾选上三个选项:Enabled responses,Unmatched requests passthrough,Enable Latency将左边抓取到的url拖拽到AutoResponder标签下空白处,选中该url,在底部修改url是精确匹配or模糊匹配,修改返回结果手机重新请求该url,该url背景置灰,说明自动响应成功,客户端得到你设定的response③ 设置断点//对所有的url设置断点菜单 -> Rules -> Automatic Breakpoints -> …修改request – 选择BeforeRequest修改response – 选择AfterResponse//如果需要对单个url设置断点,可在底部QuickExec中输入 Bpafter ×××××四、其他(不断添加ing)①显示server ip 快捷键Ctrl+R 或者 菜单->Rules->Customize Rules…在文件里Ctrl+F查找字符串在static function Main()方法中添加以下一行代码即可(ServerIP, 120, X-HostIP);② 模拟限速我们可以通过fiddler来模拟限速,因为fiddler本来就是个代理,它提供了客户端请求前和服务器响应前的回调接口,我们可以在这些接口里 面自定义一些逻辑。
Fiddler的模拟限速正是在客户端请求前来自定义限速的逻辑,此逻辑是通过延迟发送数据或接收的数据的时间来限制网络的下载速度和上传速度,从而达到限速的效果。
他提供了一个功能,让我们模拟低速网路环境…启用方法如下:Rules → Performances → Simulate Modem Speeds勾选之后,你会发现你的网路瞬间慢超多…如果你觉得模拟的速度慢到一个爆炸,你也可以自己定义Modem Speeds 究竟要多快…点开Rules → Customize Rules找m_SimulateModem这个字,你会找到下面这段:// Delay sends by 300ms per KBuploaded. oSession[request-trickle-delay] = 300;// Delay receives by 150ms per KBdownloaded. oSession[response-trickle-delay] = 150;这就是他模拟网路速度的原理,每上传/下载1KB 要delay 多久…如果你习惯用kbps 去算的话,那么我们的算法就是 1000/下载速度 = 需要delay的时间(毫秒),比如50kb/s需要delay200毫秒来接收数据。
请注意,当你存档之后,原本已经勾选的Simulate Modem Speeds 会被取消勾选,要记得再到Rules → Performances → Simulate Modem Speeds 勾选喔~
文章版权声明
1 原创文章作者:汇维网,如若转载,请注明出处: https://www.52hwl.com/109586.html
2 温馨提示:软件侵权请联系469472785#qq.com(三天内删除相关链接)资源失效请留言反馈
3 下载提示:如遇蓝奏云无法访问,请修改lanzous(把s修改成x)
4 免责声明:本站为个人博客,所有软件信息均来自网络 修改版软件,加群广告提示为修改者自留,非本站信息,注意鉴别