loadrunner 性能测试_http接口

loadrunner vuser http通讯压测

loadrunner压测基础脚本

导入相应jar包后,关键action代码如下:

public int action() throws Throwable {

URL url = new URL("http://57.25.2.87:8084/");

HttpURLConnection httpURLConnection = (HttpURLConnection) url

.openConnection();

httpURLConnection.setDoInput(true);

httpURLConnection.setDoOutput(true); // 设置该连接是可以输出的

httpURLConnection.setRequestMethod("POST"); // 设置请求方式

httpURLConnection.setRequestProperty("Content-Type",
"application/xml;charset=utf-8");

httpURLConnection.setRequestProperty("User-Agent", "Apache-HttpClient/4.5.2
(Java/1.8.0_101)");

httpURLConnection.setRequestProperty("Accept-Encoding", "gzip,deflate");

httpURLConnection.setRequestProperty("Connection", "Keep-alive");

PrintWriter pw = new PrintWriter(new OutputStreamWriter(

httpURLConnection.getOutputStream(),"utf-8"));

lr.start_transaction("往账付款交易http");

pw.write("{\\"APP_HEAD\\":{},\\"SYS_HEAD\\":{\\"SCENE_ID\\":\\"01\\",\\"RUN_DATE\\":\\"20200427\\",\\"USER_ID\\":\\"907006\\",\\"TRAN_TIMESTAMP\\":\\"140000\\",\\"SYSTEM_ID\\":\\"301907\\",\\"TRAN_MODE\\":\\"ONLINE\\",\\"SOURCE_TYPE\\":\\"IP\\",\\"SEQ_NO\\":\\"\<seq\>\<random\>\<random\>\\",\\"USER_LANG\\":\\"CHINESE\\",\\"SERVICE_ID\\":\\"300420021\\",\\"MAC_VALUE\\":\\"UPPS\|uppsToesb\|RZAK\|6276A776CB468656EB28B1F2F29E782C\\",\\"TRAN_DATE\\":\\"20200427\\",\\"BRANCH_ID\\":\\"00001\\"},\\"BODY\\":{\\"TERMINAL_NO\\":\\"123456\\",\\"BUSI_CLASS_CODE\\":\\"120004\\",\\"PAYER_ACCT_TYPE\\":\\"00\\",\\"PAYER_ACCT_NO\\":\\"623166000000682244\\",\\"PAYER_NAME\\":\\"测试\\",\\"MERCHANT_NO\\":\\"\\",\\"MERCHANT_NAME\\":\\"\\",\\"MERCHANT_SHORT\\":\\"\\",\\"PAYEE_ACCT_BELONG_BRANCH\\":\\"C1081621000014\\",\\"PAYEE_ACCT_BRANCH_NM\\":\\"XX银行\\",\\"PAYEE_ACCT_TYPE\\":\\"00\\",\\"PAYEE_SIGN_PROTOCOL\\":\\"\\",\\"PAYEE_ACCT_NO\\":\\"623166000000682244\\",\\"PAYEE_NAME\\":\\"测试\<seq\>\\",\\"CCY\\":\\"CNY\\",\\"TRAN_AMT\\":\\"0.01\\",\\"NARRATIVE\\":\\"123\\",\\"TRAN_USE\\":\\"0001\\",\\"TRX_TRM_TYPE\\":\\"02\\",\\"TRAN_DEVICE_INFO\\":\\"\\",\\"TRAN_NOTE\\":\\"123\\"}}");

pw.flush();

pw.close();

BufferedReader br = new BufferedReader(new InputStreamReader(

httpURLConnection.getInputStream(), "utf-8"));

String line = null;

StringBuilder sb = new StringBuilder();

while ((line = br.readLine()) != null) { // 读取数据

sb.append(line + "\\n");

}

if (0\<=sb.toString().indexOf("000000") ) {

System.out.println(sb.toString());

//判断本次交易成功(指成功发送消息,并受到返回)

lr.end_transaction("往账付款交易http",lr.PASS);

}

else {

System.out.println(sb.toString());

lr.end_transaction("往账付款交易http",lr.FAIL);

}

//关闭连接

httpURLConnection.disconnect();

return 0;

}//end of action

这里是直接用了java.net.包中的http组件,使用io来处理报文流。

这个可以更好的模拟客户端是java应用的压力产生,可用于测试后端接口。如果是网页版的可以参考另一个直接使用web脚本。

猜你喜欢

转载自blog.csdn.net/qq_21271511/article/details/106202680