| Version 1 (modified by chenyang, 14 years ago) (diff) |
|---|
计划在开发bbs7的时候,能够把性能测试也集成到持续集成环境hudson里面来,在hudson构建完成项目后,自动地性能测试一把.
在网上查找了一些资料后,发现有一个开源的java项目——jmeter。比较适合我们的项目来做性能测试。
于是鼓捣了两天,过程很曲折,但也总算把环境搭建起来了。下面简单总结一下,搭建的过程.
首先,去jmeter官方网站: http://jmeter.apache.org/download_jmeter.cgi
下载jmeter.虽然公司服务器是linux,但还是建议把 windows和linux版都下载下来.
网上有较多的关于jmeter的入门级教程,可以先搜下,了解下,jmeter的一些概念。如,测试计划,线程组,监听器等等。 我就不婆妈了,此处略去1万字...
然后,怎么搞这个环境呢?大致分为以下几个步聚:
1,应该要有一台可以跑bbs7项目的机器,然后把本地的bbs7打包后上传上去,在机器上布署bbs7,布署完后,检查下项目能否正常启动。
2,接下来在hudson上,将bbs7集成进来。
3,在hudson上添加构建命令驱动jmeter压力测试.
公司两台开发机.dev11(192.168.75.11)和dev12(192.168.75.12),我查看了一下,dev11这台机己经布署了一些日常开发的应用,
但没有bbs7,dev12布署了hudson。为了压力测试时不互相干扰,把bbs7,安装在dev11机器上.把jmeter安装在dev12上。
按照步骤,先在dev11上布署了本地打包的bbs7包,配置resin,启动脚本之类,云云。。。此处省略一万字。最后启动,OK,没问题.
接着,第二步.发现我的同事秦鸿源己经把bbs7 maven项目添加到了hudson上了,只是在maven构建完后,不能自动将代码更新到dev11这台机上.
可以在dev12这台机上ssh一个dev11机器上的脚本,这个脚本的作用是从dev12这台机串上获取最新的代码,像这样:
ssh root@192.168.75.11 /data/hudson_script/bbs7.sh
在dev11机器编写脚本 /data/hudson_script/bbs7.sh,代码如下:
#!/bin/bash
JAVA_HOME=/usr/java/jdk1.6.0_18/bin
WARPLACE=/data/.hudson/jobs/bbs7/workspace/target
WAR=$WARPLACE/webapp.war
STATICZIP=$WARPLACE/webapp-statics.zip
/etc/init.d/resind_bbs7 stop
rm -rf /data/web/bbs7/*
expect -c "
spawn scp -p root@192.168.75.12:$WAR /data/web/bbs7.war
expect {
\"*assword\" {set timeout 300; send \"pconline\r\";}
\"yes/no\" {send \"yes\r\"; exp_continue;}
}
spawn scp -p root@192.168.75.12:$STATICZIP /data/web/bbs7
expect {
\"*assword\" {set timeout 300; send \"pconline\r\";}
\"yes/no\" {send \"yes\r\"; exp_continue;}
}
expect eof"
cd /data/web
unzip -o bbs7.war -d /data/web/bbs7
cd /data
cd /data/web/bbs7
sed -i 's/localhost\.pconline\.com\.cn/dev11\.pconline\.com\.cn:9099/g' /data/web/bbs7/WEB-INF/view/*.jsp
unzip -o /data/web/bbs7/webapp-statics.zip -d /data/PRG/resin-3.1.8_bbs7/conf
/etc/init.d/memcached_bbs7 restart
/etc/init.d/resind_bbs7 start
保存后,再回到dev12进入hudson,地址: http://192.168.75.12:8080/hudson-2.1.2/
Attachments
-
jmeter_01.png
(184.3 KB) -
added by chenyang 14 years ago.
-
jmeter_02.png
(119.3 KB) -
added by chenyang 14 years ago.
![(please configure the [header_logo] section in trac.ini)](http://www1.pconline.com.cn/hr/2009/global/images/logo.gif)