Jmeter是一款非常不错的压力测试软件,我用它对web服务器进行“压榨”,检测服务器的性能和错误。

下面列出一些我常用到的一些知识:

1)http cookie manager是管理每一个线程组的cookie,一般不需要对其进行操作,可保证每个线程有自己独立的cookie,不会相互之间造成影响。(,师兄之前让我好好弄这个东西,没想到这么简单,告诉他之后,后悔他自己没有试过)

2)灵活使用录制控制器,近一次控制器,循环控制器,可以简化录制内容,更接近实际访问情况。

3)csv data config是个好东西。在进行多用户请求时,有许多变量需要变化,并加以控制。但是由于我不太会使用Jmeter的正则表达式(试了几次不好用就放弃了,太笨了),导致我把这些变量都从数据库里去进行查询。(虽然非常耗时间,但是只能怪自己经受不起挫折。本来想到这方法,我还暗自欣喜,终于进行了一次思维转换,解决了问题,但是方法的可重用性很差)

4)定时器我习惯用高斯随机定时器,更接近模拟用户的真实情况。

5)当发现控制台有栈溢出时,可以适当增大JVM的容量,以便进行更大数据量的测试。

6)数据量特大时,使用分布式测试更加容易。(修改主机的Jmter.property的romote_host属性)

7)当不确定http请求结果或者其他不确定因素存在时,可以通过增加断言,来进行判断url或者内容里数据是否是所想得到的。

8)问题:我的Jemter有时发送大量请求时,突然中断不再进行发送。不管是关闭Jemter还是关闭Jmx测试计划,发现机器已经不能再发送http请求(包括浏览器)。不知是何原因。当初怀疑是使用完socket,但是我测试发现ftp请求没有任何问题,说明是http请求的问题。至今尚未解决。