Web Service性能测试,soapUI还是Jmeter

上一篇 / 下一篇  2011-12-13 15:36:08 / 个人分类:软件测试工具

经常有人问我webservice性能测试是用JMeter好还是SoapUI好。说句实话这两款都是非常优秀的开源Web Service性能测试工具,简单地说哪个更好真不太容易。影响Web Service性能测试的因素太多到底谁的结果更准确一些很多时候并不主要取决于测试工具。在soapUI官方网站上有一个文章比较了这两款工具,我将要点抽出来加以分析希望能反映它们的特点。51Testing软件测试网/j6? B7k1LYf?

  JMeter在整个负载测试的优越性是毋庸置疑的,它覆盖了常见的各种测试类型,如HTTP, JDBC, JMS 和SOAP。单就Web Service测试,作者做了一个简单的实验,但并没有涉及太多的细节。51Testing软件测试网X(t~+LTZq(| `e

51Testing软件测试网Y+T$UZg"b2m

  试验准备:本地Web Service,运行于JBoss 4.0.3SP1,每个简单请求在4种不同负载下执行5000次,分别是1线程,5线程,10线程和25线程。在SoapUI中为简单起见均使用简单负载策略,并且五执行延时。要分别记录关闭连接和非关闭连接方式的数据。关闭连接方式是指每次请求完毕后关闭连接。反之则是让连接仍然保持打开以等待下个请求,显然会省去很多额外开销。在JMeter中也可以做类似配置,如线程数为1,循环次数5000或线程数25,循环200次。

;_n}e5cIa0

!IR$|u4U0  环境:WinXP SP2, Pentium M 1.8 1 G RAM, JRE 1.5.0_06.

)X[l:H]0

#d;z+^(Q:D0  结果:                                                                             51Testing软件测试网SDf8taHfw!}

0s gfk'` M0    51Testing软件测试网R Oi5Su$r6L B~

51Testing软件测试网[}A&_t@iz'c,l9F

  其中带*的是非关闭连接模式下测试的结果。从结果中看出Jmeter的测试值均较SoapUI偏大,但与UI连接关闭模式下执行结果相差无几。实验未给出JMeter命令行下的测试结果。但从经验来讲,命令行执行方式避免了测试工具本身带来的巨大资源消耗,更接近真实值。soapUI在命令行连接不关闭模式下TPS随线程的增加在初期有明显上升的。

1?F ??%{Y0

,fJt(J\ B:]0  从计时机制来看,JMeter 用的是System.currentTimeMillis(),而soapUI用的是更为精确的System.nanoTime().

3}Gp6d0X0q D0

5xhaY4{~r'gw0  综上所述(文中没有点明,但这是显而易见的),soapUI在单纯的Web Service 测试时有明显的优势,当要综合其他测试时可以组合使用多种工具。

+L/Kf3tk[ Z.k(T^!NtM051Testing软件测试网[Wltv.H6g7mL

  当然这是soapUI自己做的实验,难免有王婆卖瓜之嫌,有兴趣的朋友可以自己设计实验来测试一下。51Testing软件测试网 p,Z%Q/l6R0?t


TAG:

 

评分:0

我来说两句

Open Toolbar