一、使用charles进行简单压力测试

接口请求次数、并发量、请求延迟时间均可配置

1.选中需要进行测试的接口,鼠标右键 选中【repeat advance】

charles中的contents乱码 charles commons_右键

2.

下面的图中,选择了三个接口,每次迭代中3个接口同时请求,迭代1000次(总计请求3000次接口),

每个接口每次并发100次请求。

charles中的contents乱码 charles commons_右键_02

二、弱网测试

在做移动开发的时候,我们常常需要模拟慢速网络或者高延迟的网络,以测试在移动网络下,应用的表现是否正常(如模拟应用在网络较慢时的响应时间等情景)。Charles 对此需求提供了很好的支持。

charles中的contents乱码 charles commons_charles中的contents乱码_03

charles中的contents乱码 charles commons_charles中的contents乱码_04

1、点击Proxy->Throttling Settings

2、☑️勾选[Enable Throttling]使的限制网速可用,相当于开启了限制网速的功能

3、关于网速的选择

概念介绍:

Bandwidth(带宽,即上行、下行数据传输速度)

Utilistation(带宽可用率,大部分modern是100%)

Round-trip(往返延迟,请求的时延)

MTU(最大传输单元,即TCP包的最大size,可以更真实模拟TCP层,每次传输的分包情况)

Releability :(指连接的可靠性。这里指的是10kb的可靠率。用于模拟网络不稳定。)

Stability :(连接稳定性,也会影响带宽可用性。用于模拟移动网络,移动网络连接一般不可靠)

4G:(16384带宽)、(80往返延迟)

3G:(4096带宽)、(120往返延迟)

2.5G(GPRS)一般在100kbps

2G(GSM)一般在5-9kbps

如果不习惯自定义设置带宽等,可直接在Throttle Preset下拉列表中选择,按照顺序,网速逐渐提升

3.3如果只想对某地址的请求进行弱网测试,☑️[Only for selected hosts]

charles中的contents乱码 charles commons_迭代_05

并发线程数以及打压次数,确定之后,即可开始

 

三、断点功能

有些时候为了调试服务器的接口,我们需要反复尝试不同参数的网络请求。Charles 可以方便地提供网络请求的修改和重发功能。只需要在以往的网络请求上点击右键,选择 “Edit”,即可创建一个可编辑的网络请求。

charles中的contents乱码 charles commons_右键_06

在断点设置中进行设置:

charles中的contents乱码 charles commons_charles中的contents乱码_07

charles中的contents乱码 charles commons_迭代_08

charles中的contents乱码 charles commons_网络请求_09

3)手机刷新页面,重新请求这个接口,根据需求进行编辑:

charles中的contents乱码 charles commons_迭代_10

charles中的contents乱码 charles commons_网络请求_11

4)查看手机;

charles中的contents乱码 charles commons_迭代_12

修改成功!!