您好,登錄后才能下訂單哦!
import?java.text.SimpleDateFormat; import?java.util.Calendar; import?java.util.Date; try{ Date?date?=new?Date();?//獲取當前時間 SimpleDateFormat?sf?=?new?SimpleDateFormat("yyyy-MM-dd?HH:mm:ss"); String?nowDate?=?sf.format(date); Calendar?cal?=?Calendar.getInstance(); cal.setTime(sf.parse(nowDate)); cal.add(Calendar.DAY_OF_YEAR,+0);? String?orderDate?=?sf.format(cal.getTime()); cal.add(Calendar.DAY_OF_YEAR,+365);? String?senderDate?=?sf.format(cal.getTime()); vars.put("orderDate",orderDate);?//參數可以調用 vars.put("senderDate",senderDate);?//參數可以調用 } catch(Exception?e){ }
import?java.io.*; byte[]?result?=?prev.getResponseData();? String?file_name?=?"D:\\gongju\\apache-jmeter-3.2\\bin\\download\\sqlEnt_${id}.zip";? File?file?=?new?File(file_name);? FileOutputStream?out?=?new?FileOutputStream(file); out.write(result); out.close();
FileWriter?fstream?=?new?FileWriter("XXX",true); BufferedWriter?out?=new?BufferedWriter(fstream); out.write(vars.get("AAA")+","+?vars.get("BBB")); out.write(System.getProperty("line.separator")); out.close(); fstream.close();
import?java.io.UnsupportedEncodingException; import?org.apache.jmeter.assertions.AssertionResult; import?org.json.*; String?str?=?prev.getResponseDataAsString(); String?result?=?""; try?{ result?=?java.net.URLDecoder.decode(str,?"UTF-8"); }?catch?(UnsupportedEncodingException?e)?{ e.printStackTrace(); } JSONObject?data_obj=new?JSONObject(str); String?result1?=?data_obj.get("dockedContact").get("name").toString(); if(result1.contains("zhufc"))?{ Failure?=?true; FailureMessage?=?"斷言成功"; log.info("斷言成功"); }else{ Failure?=?false; FailureMessage?=?"斷言失敗"; }
import?java.sql.*; import?java.util.*; import?java.lang.*; import?org.apache.regexp.*; import?org.json.*; //一:數據庫取值 String?drive?=?"org.gjt.mm.mysql.Driver"; String?url?=?"jdbc:mysql://192.168.204.129:3306/"; String?dbName?=?"aiopms"; String?user?=?"root"; String?pass?=?"000000"; String?history?=?""; String?response?=?""; String?failuer?=?""; String?query?="SELECT?projectid?From?pms_projects?Where?name?='測試項目'??order?by?'desc'?limit?1"; Connection?Mycon?=?null; Statement?Mystmt?=?null; ResultSet?Myrset?=?null; try{ ????Mycon?=?DriverManager.getConnection(url+dbName,?user,?pass); ????? ????????}???catch(SQLException?e){ ????????? ????} Mystmt?=?Mycon.createStatement(); Myrset?=?Mystmt.executeQuery(query); while?(Myrset.next()){ ????history?=?Myrset.getString(1); ????} ????Myrset.close(); ????Mystmt.close(); ????? if(history?==?"") { ????Failure?=?true; ????FailureMessage?=?"連接數據庫失敗"; }
利用beanshell獲取到json響應,然后通過JSONObject?和JSONArray?將數組解析,遍歷數組的length之后,提取參數值
我們需要解析如下的json響應,提取出中間的Name和population
//導入json包 import?org.json.*; //獲取獲取請求的返回值 String?response_data?=?prev.getResponseDataAsString();? //日志打印獲取請求的返回值 log.info(response_data); //將String類型的返回值構造成JSONObject對象 JSONObject?data_obj?=?new?JSONObject(response_data); //獲取作為下一個請求post的參數值Province(兩種方式) //String?Provincelist_str?=?data_obj.get("Province").toString();? JSONArray?Provincelist_str?=?data_obj.getJSONArray("Province"); //log.info(Provincelist_str); //獲取Province數組的長度 int?len?=?Provincelist_str.length();? ? String?strlen?=?Integer.toString(len); ? vars.put("MessageNum",strlen); log.info(strlen); int?i?=?0; for(;i?<?len;++i) { //獲取?data[?i?]?數組對象 JSONObject?jsonTemp?=?(JSONObject)Provincelist_str.getJSONObject(i); switch(i) { case?0: //兩種提取參數的寫法 String?NameItems?=?jsonTemp.getString("Name"); //?String?NameItems?=?jsonTemp.get("Name").toString(); //?兩種打印參數的方法 //?vars.put("Name_1",?jsonTemp.getString("Name"));? vars.put("Name_1",?NameItems);? log.info(NameItems); } }
import?java.io.File;? import?java.io.FileNotFoundException;? import?java.io.FileWriter;? import?java.io.IOException;? import?java.io.RandomAccessFile;? ????????????StringBuffer?fileBuf=new?StringBuffer();? ????????????String?filePar?=?"D:\\\目錄1\\目錄2"; ????????????File?myPath?=?new?File(?filePar?);? ????????????if?(?!myPath.exists()){ ????????????????myPath.mkdirs();? ????????????????System.out.println("創建文件夾路徑為:"+?filePar);? ????????????}? ???????????? ????????????String?filename?=?"列表.csv"; ????????????try?{? ????????????????FileWriter?fw?=?new?FileWriter(filePar?+?"\\\"?+?filename,true); ??????????????? ????????????????String?originalLine?=?“”+"\n"; ????????????????System.out.println("***?"+?originalLine);? ????????????????fw.write(originalLine);? ????????????????fw.close();? ????????????}?catch?(IOException?e)?{? ?? ????????????????e.printStackTrace();? ????????????}
1.log?打印日志,寫入信息到jmeber.log文件。 ? 2.SampleResult?獲取SampleResult對象,能通過這個對象獲取想要的信息。 ? 3.Response?獲取Response對象,能通過這個對象獲取響應信息。 ? 4.Failure?查看接口調使用能否成功,假如返回false是成功的,true是失敗的。 ? 5.FailureMessage?失敗信息,沒有設置的時候失敗信息是空的,能set這個信息。 ? 6.ResponseData?獲取response?body類型是byte[]。 ? 7.ResponseCode?返回接口code成功是200。 ? 8.ResponseMessage?獲取msg成功是OK。 ? 9.ResponseHeaders?獲取接口服務端返回的頭部信息。 ? 10.RequestHeaders?獲取用戶端請求的頭部信息。 ? 11.SampleLabel?獲取接口請求的名稱。 ? 12.SamplerData?獲取請求的url和body。 ? 13.ctx?代表上下文信息,能直接用。 ? 14.vars即JMeterVariables,操作jmeter變量,這個變量實際引用了JMeter線程中的局部變量容器(本質上是Map),常用方法: ? a)?vars.get(String?key):從jmeter中獲得變量值; ? b)?vars.put(String?key,String?value):數據存到jmeter變量中; ? 15.prev?獲取前面的sample返回的信息,常用方法: ? a)?prev.getResponseDataAsString():獲取響應信息。 ? b)?prev.getResponseCode()?:獲取響應code。<br><br>
1 2 3 | String command =? "cmd /c start D:\\apache-jmeter-3.2\\負載.bat" ; Runtime rt = Runtime.getRuntime(); Process pr = rt.exec(command); |
1 2 3 4 5 | button =? new ?JButton(? "登錄" ?); frame =? new ?JFrame(? "My Frame" ?); frame.getContentPane().add( button,? "Center" ?); frame.pack(); frame.setVisible( true ); |
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。