‘壹’ jmeter 录制web脚本怎么没有生成采样器
现在一般用badboy录jmeter脚本,你试试。
‘贰’ jmeter录制的脚本哪些请求可以过滤
使用jmeter进行脚本的录制。
参照jmeter网站上的recording
test的指南文件,结合自己的应用,整理了使用jmeter录制脚本的文档。
1.选中“测试计划”,右键添加“线程组”
2.选中“线程组”,右键添加配置元素:“http请求默认值”,进行设置
设置服务器名称或ip
设置端口号
设置协议
路径为空值
3.选中工作台,右键添加“非测试元件”的“http代理请求”,进行设置
在http代理请求中设置端口号为“8080”
目标控制器选择“测试计划—〉线程组”
设置包含模式及排除模式,若不设置,在录制完之后,可以把不需要的.css
.jpg的行删掉。标准的包含模式及排除模式如下所列。
i.
.*
-
all
ii.
.*.png
–
png
images
iii.
.*.gif
–
gif
images
iv.
.*.jpg
–
jpeg
images
v.
.*.php
vi.
.*.jsp
vii.
.*.html
viii.
.*.htm
ix.
.*.js
4.设置ie的局域网设置
from
the
tool
bar,
click
“tools
->
internet
options”.
this
should
bring
up
the
options.
select
the
“connection”
tab
click
“lan
settings”
button
near
the
bottom.
on
the
connections
tab,
check
“use
a
proxy
server
for
your
lan”.
the
address
and
port
fields
should
be
enabled
now.
address
–
enter
“localhost”
or
the
ip
address
of
your
system(127.0.0.1:8080)
click
“ok”
button
click
“ok”
button
again.
this
should
return
you
to
the
browser
5.点击工作台http代理服务器的启动
6.打开一个ie窗口,输入测试的网址,点击enter,测试计划中将录制http的请求。
7.在测试网页上进行操作,测试计划中继续录制http请求。
注意:
1.ie中局域网的端口号和jmeter中的proxy
server的端口号一致。
2.如果使用自己的机器提供的web服务器,请不要使用8080端口,这样会和jmeter的代理服务冲突。可以修改8080为别的端口或把web服务换到另外的端口。
‘叁’ 如何用jmeter启动录制脚本
利用Jmeter录制脚本
把Jmeter配置成一个Web代理,用Jmter自己来录制脚本
第一步: 创建一个Thread Group (邮件点击: Test Plan -> Add -> Thread Group)
第二步: 创建http 代理服务器 (邮件点击"工作台"(WorkBench), Add-> Non-Test Elements -> HTTP(S) Test Script Recorder)
然后设置浏览器的代理服务器。 设置好后,在浏览器中访问网站。 Jmeter就能录制下来了。
‘肆’ 如何使用jmeter做webservices接口测试
1. 建立WebServiceTest Plan
1) 添加ThreadGroup
右键单击Test Plan选择Add --> ThreadGroup,配置
Number of Threads、Ramp-UpPeriod、Loop Count可随测试不同随时修改。
三种参数解释如下:
Number of Threads为发起线程总数。
Ramp-Up Period 指定了JMeter开启Number ofThreads个线程所需的时间。例如,如果待发起30个线程(即模拟用户),Ram-Up Period为15秒,则每秒增加2个线程(30个用户/15秒)。如果设置为0,则JMeter会自动启动所有模拟用户。
Loop Count为循环次数。
2. 添加 WebService Requests
右键单击“WebService线程组”,Add --> Sampler --> WebService(SOAP)。
注:灰色“线程组”为其它测试使用过的线程组,此处这设置为Disabled线程组,在本次测试中不使用。
配置
将发布好的Service的 WSDL URL粘贴到WSDL URL中点击Load WSDL之后,WebMthods自动弹出,
只需自己选择Method然后单击Configure即可完成绝大部分自动配置
但是里面会涉及Soap/XML-RPC Data的编写,我编写的如下:
[plain] view plain
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:simpleMethod
xmlns:ns1="http://server.deltaj.com">
<name xsi:type="xsd:string">Yerasel</name>
</ns1:simpleMethod>
</soap:Body>
</soap:Envelope>
这个XML中绝大部分都是固定的。其余解释如下:
simpleMethod是WebService发布的方法;
http://server.deltaj.com是simpleMethod所在类(SimpleServer)的域名,即SimpleServer所在包的包名为com.deltaj.server;
name是simpleMethod的参数名,参数类型是string;
Yerasel是输入的实参。
SimpleService服务端源程序如下:
[java] view plain
// SimpleService.java
package com.deltaj.server;
public class SimpleServer {
/**
* 简单的测试方法
*
*/
public String simpleMethod(String name) {
return name + "Say this is a Simple method ^-^";
}
}
注意:
<arg0 xsi:type="xsd:string">Yerasel</arg0>也可以,
在发布成wsdl时候, 方法的参数名称被自动的映射成arg0, arg1, 解决方法如下:
[java] view plain
Java代码
public User create(
@WebParam(name = "user")
User user);
因此SimpleService服务端源程序改写如下:
[java] view plain
// SimpleService.java
package com.deltaj.server;
public class SimpleServer {
/**
* 简单的测试方法
*
*/
public String simpleMethod(@WebParam(name = "personname")String personname) {
return personname + "Say this is a Simple method ^-^";
}
}
Soap/XML-RPC Data 如下:
[plain] view plain
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:simpleMethod
xmlns:ns1="http://server.deltaj.com">
<personname xsi:type="xsd:string">Yerasel </personname>
</ns1:simpleMethod>
</soap:Body>
</soap:Envelope>
注:
发布SimpleServer时,需要写xml,这是发布WebService的一般步骤,内容如下:
[plain] view plain
<serviceGroup>
<service name="SimpleServer" scope="application">
<description>
SimpleServer
</description>
<messageReceivers>
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />
<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</messageReceivers>
<parameter name="ServiceClass">com.deltaj.server.SimpleServer</parameter>
</service>
</serviceGroup>
文件名为META-INF/services.xml。
文件布局
com里面是包以及.class
然后,在bin目录下运行"jar cvf SimpleServer.aar . "即可
将aar放入Tomcat的services目录中即可发布。
‘伍’ jmeter录制脚本工具有哪些
方法一: 使用badboy来录制脚本
badboy本身是一个针对Web的测试工具,它录制的脚本可以直接供Jmeter使用
打开badboy, 如何录制脚本, 录制完后,点File -> Export to JMeter. 如何Jmeter就能直接使用这些脚本
方法二: 利用Jmeter录制脚本
把Jmeter配置成一个Web代理,用Jmter自己来录制脚本
第一步: 创建一个Thread Group (邮件点击: Test Plan -> Add -> Thread Group)
第二步: 创建http 代理服务器 (邮件点击"工作台"(WorkBench), Add-> Non-Test Elements -> HTTP(S) Test Script Recorder)
然后设置浏览器的代理服务器。 设置好后,在浏览器中访问网站。 Jmeter就能录制下来了。
Jmeter 中录制的脚本乱七八糟的, 什么图片,js都有,根本没法用,真不如自己写脚本。
应该设置下忽略这些没用的请求
‘陆’ jmeter 和badboy做web项目压力测试
你好。 Meter是一款在国外非常流行和受欢迎的开源性能测试工具,像LoadRunner 一样,它也提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能
‘柒’ jmeter 压力测试脚本怎么写
1. 运行jmeter
2. 左边树将出现测试计划、工作台两根节点。
3. 选择测试计划,按右键-》添加-》threads(users)线程组
线程组能设置以多少个线程并发做压力测试。
在”循环次数”设置不选择永远,循环次数设置1。
4. 现在先介绍如何设置登录http请求,选择线程组,右键――添加――》sampler-―》http 请求。
‘捌’ 如何使用jmeter录制web系统
录制脚本目前有2种方法,我们先介绍jmeter proxy方法。另一个是badboy录制的脚本转化为jmeter脚本,直接想了解badboy,请直接访问
http://www.badboysoftware.biz/docs/jmeter.htm
jmeterproxy 来了。
1)启动jmeter,这个不多说了。
2)选择测试计划,右键添加线程组(thread group)
3)选择这个线程组,右键添加config element -〉 http默认请求
4)在http默认请求单元,填入server name 为jakarta.apache.org. 这个是我们要录制的页面。其他地方不填
5)然后选择刚才那个县城组,右键加入一个录制控制器。位于Add>Logic Controllers -> Recording Controller
6) 选择WorkBench,右键加入 Non-Test Elements -> Http proxy server
7)在http proxy server里, 的patterns to include 里,写入.*\.html 这个是正则表达式,意思是录制所有的html为后缀名的页面。 那么如果你要录制后缀名为jsp或者do的,则写入.*\.jsp 和 .*\.do 分别。
8)对于url怕tternstoexclude的地方,是写入不想被录制的一些资源文件url。比如图片等。这些配置,视测试的具体场景而定。比如是否要测试静态图片等。
9)为了调试录制的情况,我们选择http proxy server ,添加一个察看结果树监听器。这个以前我们曾经用过。
10)回到http proxy server然后,选择开始启动。这样proxy server 就启动了。
11)这样我们打开一个浏览器,将浏览器的代理设置为jmeter proxy server 的ip和端口号。因为proxy server 就在本地,所以就写localhost 和端口即可。
12)设置好代理后,用浏览器访问http://jakarta.apache.org/jmeter/index.html
13)随便点击一些连接,然后回到jmeter 的窗口,你查看结果树就看到了录制的http请求了。
record
14)这样的脚本,我们就可以直接用来运行了。
‘玖’ 如何用jmeter代理录制脚本
启动JMeter,双击运行jmeter.bat。
2
创建HTTP请求默认值。
--添加线程组:右击"测试计划"→添加→Threads(Users)→线程组,建议重命名线程组增强可读性。
--添加HTTH请求默认值:右击"XX线程组"→添加→配置元件→添加HTTP请求默认值。
3
配置HTTP请求默认值。
--服务器名称或IP(Server Name or IP)输入:jakarta.apache.org
--协议(Protocol)输入:http
--端口(Port Number)输入:80
--路径(path)保留为空。
注:jakarta.apache.org(JMeter本地自带有说明文档可用于测试)
END
二、添加HTTP代理服务器
1
添加HTTP代理服务器。
--右击"工作台"→添加→非测试元件→HTTP代理服务器(HTTP(S) Test Script Recorder)。
注:HTTP(S) Test Script Recorder(教新版本)= HTTP Proxy Server (老版本)
2
配置HTTP代理服务器。
--端口(Port域):8088
--目标控制器(Target Controller):测试计划>XXXX(线程组名称)
--添加“包含模式(Patterns to Include)”:如“.*\.html”
--添加“排除模式(Patterns to Exclude)”:如“.*\.gif”
单击底部“开启(Start)”按钮,出现弹窗提示点击”确定”即可。
END
三、配置浏览器代理
1
启动Internet Explore(示例),但不关闭JMeter。
2
配置浏览器代理。
--在IE浏览器中点击工具--Internet选项--连接--局域网设置--选中"为LAN使用代理服务器"。
--输入地址和端口。地址:localhost或本机的IP;端口:8088。
--最后依次点击"确定"。
END
四、操作被访问JMeter界面
1
操作被访问JMeter界面。
--在IE中输入:http://jakarta.apache.org/jmeter/index.html
--随便点击JMeter界面上的几个连接。
--关闭浏览器,将视线转回JMeter窗口上。
END
五、查看结果--添加监.听器
1
添加"查看结果树"。
--右击"XX线程组"→添加→监.听器→查看结构树。
--点击"启动"(Ctrl+R)按钮查看运行结果。
2
添加"聚合报告"
--右击"XX线程组"→添加→监.听器→查看结构树。
--点击"启动"(Ctrl+R)按钮查看运行结果。
‘拾’ jemeter能够运行哪些脚本
一、配置java环境
1:先查看系统32/64: uname -a
根据系统的版本去Oracle官网下载jdk,下载后安装jdk即可。
2:配置JAVA环境变量:
vi /etc/profile
追加如下内容:
JAVA_HOME=/opt/jdk1.6.0_20
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
其中的JAVA_HOME为jdk的安装路径
3:验证 echo $PATH 或者 java -version
二、安装resin
下载resin后,解压运行安装脚本: ./resin.sh console。然后在自己pc上访问 server ip:port 看到resin默认欢迎页面即说明安装成功。之后把在web项目的war包拷进 ren目录下的webapps 文件夹内,即可在外网访问服务器上的web项目了。
三、 安装jmeter
下载:同样在jemeter官网下载 对应的安装包,解压后执行:./jmeter -n -t ../ssdb_test.jmx -l ../log.jtl
命令说明:
a.-n 参数说明不用验证是否安装了图形库
b. .jmx文件可以在windows环境下的用jmeter图形化生成,涉及参数以及测试结果的.csv文件路径可以直接 用notepad++ vi 等修改.jmx文件,确保其相对于.jmx文件路径正确。
c.log.jtl 保存测试结果 既然没装图形界面库,那么测试结果.jtl文件就只能在windows下用jmeter来查看了。执行效果如下:
[@zjm_44_250 bin]# ./jmeter -n -t ../ssdb_test.jmx -l ../log.jtl
Creating summariser <summary>
Created the tree successfully using ../ssdb_test.jmx
Starting the test @ Mon Dec 29 18:43:20 CST 2014 (1419849800772)
Waiting for possible shutdown message on port 4445
summary = 100 in 0.3s = 289.9/s Avg: 105 Min: 3 Max: 285 Err: 0 (0.00%)
Tidying up ... @ Mon Dec 29 18:43:21 CST 2014 (1419849801734)
... end of run
最后,执行命令:/home/apache-jmeter-2.8/bin/jmeter -n -t download.jmx -l log.jtl
linux下最好输全路径,不然可能报bash:jeter:command not found,找不到执行文件错误,参数介绍如下:
-n This specifies JMeter is to run in non-gui mode
-t [name of JMX file that contains the Test Plan].
-l [name of JTL file to log sample results to].
-r Run all remote servers specified in JMeter.properties (or remote servers specified on command line by overriding properties)
The script also lets you specify the optional firewall/proxy server information:
-H [proxy server hostname or ip address]
-P [proxy server port]