网络带宽模拟的专业设置
在网络条件不佳或需要模拟真实用户网络环境时,精确的带宽模拟非常重要。不仅可以复现Page Download Timeout问题,是测试应用在广域网或移动网络下的表现。
1. LoadRunner中的带宽模拟配置
LoadRunner的带宽模拟在两个方面生效:
在VuGen脚本开发时
途径:Run-time Settings -> Browser -> Browser Emulation
设置:勾选 Simulate a new user on each iteration(此设置会重置TCP连接)和 Simulate browser cache(模拟浏览器缓存行为,影响下载量)。
带宽设置:在同一窗口,点击 Change... 按钮,进入“Network Speed”选择。这里提供从“拨号(56K)”到“专线(T1, LAN)”的预置选项。此设置仅影响单个Vuser脚本的预期速度。
在Controller情形执行时
这是模拟真实网络环境的推荐方法。
途径:在Controller的 Design 视图,选择 Scenario -> Scenario Settings,或在Run视图,点击右侧Load Generators上方的Runtime Settings按钮。
设置位置:在弹出的对话框中,转到 Network 选项卡。
配置选项:
Speed Simulation:启用此项。
Maximum bandwidth (bits/second):这是重要的参数。输入希望模拟的带宽上限。如,模拟一个平均的4G移动网络,可设置为 10,000,000 bits/sec (约10 Mbps)。注意单位是比特/秒。
Use specified speed:选择此项以应用固定带宽。
Simulate modem speeds:如果勾选,LoadRunner会额外模拟调制解调器的延迟特性(如PPP协议开销),使模拟更真实。
2. 不同网络环境的带宽参数参考
拨号 (Dial-up):下行带宽28.8K - 56K,模拟建议值56,000,用于遗留系统或极端条件测试。
3G (早期/移动中):下行带宽128K - 2M,模拟建议值1,000,000 (1 Mbps),波动较大,可取中间值。
4G LTE (良好):下行带宽10M - 50M,模拟建议值10,000,000 (10 Mbps),当前主流移动网络标准。
4G LTE (拥挤):下行带宽1M - 5M,模拟建议值2,000,000 (2 Mbps),模拟人群密集区或信号弱的情况。
家用宽带 (ADSL):下行带宽2M - 20M,模拟建议值5,000,000 (5 Mbps),取决于套餐和线路质量。
光纤/高速宽带:下行带宽50M - 1G+,模拟建议值100,000,000 (100 Mbps) 或更高,为考虑高带宽下应用极限,也可不模拟(LAN)。
卫星网络:下行带宽512K - 2M (高延迟),模拟建议值1,000,000 (1 Mbps),必须结合高延迟(如600ms)模拟。
3.带宽模拟和延迟、丢包结合
真实网络是带宽、延迟和丢包率的组合。LoadRunner的带宽模拟主要控制吞吐量。创建更真实的恶劣网络场景需要:
增加网络延迟:在Controller的 Runtime Settings -> Network 中,可以设置 Latency (delay)(如,模拟跨国访问设为200ms)。
模拟丢包:这一般需要在网络方面实现。可以使用网络模拟工具如 WANem、Clumsy(Windows)或 Linux TC (Traffic Control) 命令,在负载生成器和被测服务器之间的网络上引入随机的丢包率(如0.5%-1%)。
组合场景:最真实的测试是模拟带宽受限、高延迟且偶发丢包的组合环境,这能充分暴露应用在弱网下的问题,提前发现潜在的“Page Download Timeout”。