有人用过JMeter或用HttpUnit写过测试吗????

03-08-22 uu_snow
我要测试我的功能模块

模块的第一页是登陆页面,用户输入用户名密码以后,

在程序第二页把登陆成功的信息记到SESSION里

然后在其他页面来取这个SESSION里的东西

如果我想用JMETER测试我的模块,

或是用HTTPUNIT写测试用例的话

我该怎么取到这个SESSION呢?

AreYouOK?
2003-08-22 16:13
首先要明确你要做压力测试还是功能测试,JMeter主要是做压力测试用的,通常不需要你写程序,而HttpUnit需要

session通常是用Cookie维持的

JMeter会给你保存cookie,以后每次请求都会发送cookie,也就是说,你再访问其它页面的时候不会因为没有登录而被档住

JMeter为登录页面做了专门的处理,登录页面每次只请求一次,而其它页面根据你的压力测试需要会循环请求

HttpUnit就不太清楚了,我觉得它不太好用,你的页面布局(比如表格)改变可能会导致你的测试不通过,因为他是通过HTML标签来来定位数据然后做断言的

uu_snow
2003-08-22 16:54
我的项目是有一个登陆的首页,

我现在要对项目中的各个模块做压力测试的话,

JMETER可以做到吗?

我不太会用JMETER,我现在只知道怎么对某个JSP做压力测试

因为我只需要建立一个ThreadGroup,然后在Sampler下,

建立一个HTTP Request,

在里面指明URL和参数,就可以对这个URL做压力测试了

但时间情况是,用户如果不先从首页登陆,里面的任何页面

都没权限访问,那么我还怎么对里面的页面做压力测试呢?

AreYouOK?
2003-08-22 18:35

AreYouOK?
2003-08-22 18:36

AreYouOK?
2003-08-22 18:43
图贴不上来,算了

你建一个Thread Group,它下面的东西会依次请求的

下边建一个Only Once Controller,其中包含一个HTTP Request,在这里登录

然后在Thread Group下边在建N个你要测试的页面,这些页面依次执行,页面之间可以用Timer来控制时间

Thread Group可能会有很多个线程,每个线程你可以指定循环多少次,但是Only Once Controller下边的东西只执行一次,即一次登录后,浏览了若干页面

RUOK
2003-08-22 18:52
ID里面有问号不能贴图,555555

uu_snow
2003-08-23 10:40
两位

我按照你们说的,建立了我的测试,

可是运行测试以后,发现它并没有访问到我要测试页面

因为我在我要测试页面里写了System.out.println("xxxxxx");

可是运行了测试以后,这些信息并没有被打印出来

uu_snow
2003-08-23 13:04
比如,我的首页是/index.jsp,上面有个输入用户名/密码的输入框

用户点了确定以后,会到/main.jsp,在main.jsp里检查用户名/密码,

然后把相关信息存到SESSION里,且main.jsp是一个Frame,

然后,用户就可以点Frame里的某个链接

请问,这样我该怎么配置我的jmeter??

AreYouOK?
2003-08-23 14:01
首先JMeter肯定可以完成你的要求,只是你对JMeter和JSP的过程还不太了解

Jmeter不是浏览器,它只是把请求POST到服务器并从服务器接收回应,它不需要解析服务器返回给它的HTML,虽然它会保存Cookie并且根据你的要求可能会判断返回的HTML里面有没有指定的字符串,所以Frame对它没有影响的,Frame只是前端的东西

如果你的login.jsp只包含登录界面,里面一个form的action指向main.jsp,那么在JMeter中直接把登录请求POST到main.jsp就行了

uu_snow
2003-08-23 18:34
AreYouOK?

谢谢你的回复,我已经找到问题的原因了

是因为我的JSP使用了include,比如,我现在要压的的是post.jsp

在这个JSP里,我有一行是:

<%@ include file="/inc/audit.jsp"%>
<p>

这个include是在所有页面都有的,是用来检查权限,获得公共变量的,

如果我把这个include去掉,JMETER就可以对我的JSP压过去,但如果

有这句,就没有任何反映了

请问,有什么解决办法吗?我不可能把所有页面的这行代码都去掉的

uu_snow
2003-08-23 18:37
另外,第二个问题是

我建立了一个View Results Tree

我发现它给返回的结果不是整个该显示的页面内容

而仅能显示一部分,这是为什么?

iamwls
2003-11-09 02:38
我刚刚用了JMeter,

太简单了,根本没法满足需求,

还不如自己写个程序测呢

我想要做性能分析

比如,我哪个方法执行了多少时间

好象实现了JVMPI的工具是可以的

但是,好象没有免费的这样的工具,自己实现还必须用C写,郁闷啊~~~~~~~~~~

哪位老大提供强力支持,不胜感激

猜你喜欢