JMETER的post beanshell使用(可作模板)
2018-06-13 09:47
369 查看
开头说一个世俗一点的观点作为闲聊,不少性能测试从业者认为使用工具略显肤浅,为了凸显自己的能力,信仰一切皆代码,甚至jmeter中简单的http请求也在beanshell写代码实现,实话实说,一般测试代码并不复杂,而且质量也并非很高,大家都忙,并没有时间去理解并维护冗长的代码,我认为只要达到测试目的,使用什么手段并不重要,怎么简单怎么用,最近有一个需求,将接口返回的数据,作提取,需要提取数据的数量随机,且需要每一笔数据都要做唯一性校验,只要这个接口返回,永久不允许重复,这个需求我首先建立mysql数据库,设唯一字段,通过比较jmeter自带的插件,使用post benshell提取返回数据并插库,我认为是比较灵活通用的方式,简单做个记录,jmeter自带的一些函数可以Mark下,下面代码也有个比较奇怪的地方,大家可以仔细观察并留言讨论;
import java.util.ArrayList; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.Statement; String res=prev.getResponseDataAsString(); String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://127.0.0.1:3306/csvt"; String user = "root"; String password = "123456"; String str = null; list=new ArrayList(); Pattern p = Pattern.compile("(\\[[^\\]]*\\])"); Matcher m = p.matcher(res); while(m.find()){ list.add(m.group().substring(1, m.group().length()-1)); } for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); str=list.get(i); } //System.out.println(memberId); //vars.put("usercode",memberId); try { // 加载驱动程序 Class.forName(driver); // 连续数据库 Connection conn = DriverManager.getConnection(url, user, password); if(!conn.isClosed()) System.out.println("Succeeded connecting to the Database!"); String[] aa=str.split(","); for(int j=0;j<aa.length;j++) { System.out.println(aa[j]); String sql = "INSERT into t_user (usercode) VALUES(?)"; PreparedStatement psql = conn.prepareStatement(sql); psql.setString(1, aa[j]); // 结果集 psql.executeUpdate(); psql.close(); } }catch (Exception e) { // TODO: handle exception e.printStackTrace(); }
相关文章推荐
- Jmeter:使用BeanShell
- smarty模板中使用get、post、request、cookies、session变量的方法
- SMARTY模板中如何使用get,post,request,cookies,session,server变量
- SMARTY模板中如何使用get,post,request,cookies,session,server变量
- Jmeter 接口测试中使用Beanshell断言: 将接口响应报文与数据库结果对比
- SMARTY模板中如何使用get,post,request,cookies,session,server变量
- JQuery1.11.3版本POST方法在laravel5.2模板中的使用
- 如何在Jmeter中使用Beanshell-小强性能测试培训班学生作品
- Jmeter——Jmeter之BeanShell变量使用
- 如何在Jmeter中使用Beanshell-小强性能测试培训班学生作品
- jmeter中beanshell断言的使用
- 使用Jmeter的BeanShell Sampler生成需要的参数
- BeanShell in JMeter(Performance Test) —— JMeter中的Beanshell使用
- Jmeter_Beanshell_使用Java处理JSON块
- Smarty模板中如何使用get,post,request,cookies,session,server变量
- Jmeter-BeanShell的使用介绍
- 使用Jmeter发送post请求的两种方式
- 模板中如何使用$smarty变量get,post,request,cookies,session,server,env
- Jmeter使用BeanShell进行关联
- ab和jmeter进行GET/POST压力测试的使用心得和比较