线程组设置

设置topologyRefreshOptions选项 throttlestop设置教程_启动时间

1、Name

这个线程组名称

2、action to be taken after a sampler error

在取样器发生错误后要执行的动作(取样器,真正发起请求的元件)

(1)continue,继续

(2)start next thread loop,一个测试计划可以有多个线程组,且到不干扰,当一个线程组发生错误时,直接往下执行,自上而下。

(3)stop thread,停止线程

(4)stop test,停止测试

(5)stop test now

3、Thread properties线程属性设置

(1)Number of Threads(users):线程数(仅仅只是模拟用户量的并发数),若是需要不同用户,需要参数化用户。

(2)Ramp-Up Period(in seconds):启动用户的时间,加速时间(启动所有线程所需的时间),例如用户数为5个,这里是10s,每个用户启动的时间为10/5=2,每2s启动1个用户。

(3)Loop count (Forever):循环次数,设置数值来决定用户循环的次数

(4)Delay thread creation until needed:延迟线程创建,直到需要线程才会创建,不勾选就是启动所有线程,到时间了采样器才执行请求。

(5)Scheduler:如果设置了这个,forever就不会起作用,受下面配置项控制:

--Duration:持续时间,,结束时间失败

--Startup delay:启动延迟,与启动时间矛盾

--start time:启动时间

--end time:结束时间

定时器

1、线程组-》定时器-》固定定时器

断言

响应结果乱码

在user.properties文件中添加

sampleresult.default.encoding=UTF-8

测试机中存在大量TIME_WAIT状态

性能测试机每次通过TCP访问server都会占用一个本地端口,导致time_wait状态过多,并且不释放,导致新的TCP连接去寻找新的端口。如果windows提供的65536个端口全部用完,就会出问题。

解决办法:

在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters,添加名为TcpTimedWaitDelay的DWORD键

 

设置topologyRefreshOptions选项 throttlestop设置教程_启动时间_02

 

设置topologyRefreshOptions选项 throttlestop设置教程_TCP_03

1、LISTEN:等待从任何远端TCP和端口的连接请求。

2、SYN_SENT:发送完一个连接请求后等待一个匹配的连接请求。

3、SYN_REVD:接收到连接请求以后,等待连接请求确认。

4、ESTABLISHED:表示一个打开的连接,可以进行数据传输。

5、FIN_WAIT_1,FIN_WAIT_2:这两个状态的真实含义都是表示等待对方FIN报文,FIN_WAIT_1状态实际上是当socket在established状态时,它紫禁惊雷主动关闭连接,向对方发送了FIN报文,此时该socket进入FIN_WAIT_1.而当对方回应ACK报文后,则进入到FIN_WAIT_2状态。

6、TIME_WAIT:表示接收了对方的FIN报文,并发送出来ACK报文,就等2MSL后即可回到CLOSED状态。如果FIN_WAIT_1状态下,收到了对方同时带FIN标志和ACK标志的报文时,可以直接进入TIME_WAIT状态,而无须经过FIN_WAIT_2。

7、CLOSING:这种状态比较特殊,表示你发送FIN报文后,并没有收到对方的ACK报文,反而却收到了对方的FIN报文,因为可能双方同时close一个socket。

8、CLOSE_WAIT:当对方close一个socket后发磅FIN报文给自己,然后回应一个ACK报文给对方,此时进入close_wait状态。女足查没有数据再发送过来,就可以发送FIN报文给对方,。

9、LAST_ACK:被动关闭后,发磅FIN报文后,最后等待对方的ACK报文(超时自动关闭)。