您好,登錄后才能下訂單哦!
import?java.text.SimpleDateFormat; import?java.util.Calendar; import?java.util.Date; try{ Date?date?=new?Date();?//獲取當(dāng)前時(shí)間 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);?//參數(shù)可以調(diào)用 vars.put("senderDate",senderDate);?//參數(shù)可以調(diào)用 } 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.*; //一:數(shù)據(jù)庫(kù)取值 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?='測(cè)試項(xiàng)目'??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?=?"連接數(shù)據(jù)庫(kù)失敗"; }
利用beanshell獲取到json響應(yīng),然后通過(guò)JSONObject?和JSONArray?將數(shù)組解析,遍歷數(shù)組的length之后,提取參數(shù)值
我們需要解析如下的json響應(yīng),提取出中間的Name和population
//導(dǎo)入json包 import?org.json.*; //獲取獲取請(qǐng)求的返回值 String?response_data?=?prev.getResponseDataAsString();? //日志打印獲取請(qǐng)求的返回值 log.info(response_data); //將String類型的返回值構(gòu)造成JSONObject對(duì)象 JSONObject?data_obj?=?new?JSONObject(response_data); //獲取作為下一個(gè)請(qǐng)求post的參數(shù)值Province(兩種方式) //String?Provincelist_str?=?data_obj.get("Province").toString();? JSONArray?Provincelist_str?=?data_obj.getJSONArray("Province"); //log.info(Provincelist_str); //獲取Province數(shù)組的長(zhǎng)度 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?]?數(shù)組對(duì)象 JSONObject?jsonTemp?=?(JSONObject)Provincelist_str.getJSONObject(i); switch(i) { case?0: //兩種提取參數(shù)的寫法 String?NameItems?=?jsonTemp.getString("Name"); //?String?NameItems?=?jsonTemp.get("Name").toString(); //?兩種打印參數(shù)的方法 //?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("創(chuàng)建文件夾路徑為:"+?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?打印日志,寫入信息到j(luò)meber.log文件。 ? 2.SampleResult?獲取SampleResult對(duì)象,能通過(guò)這個(gè)對(duì)象獲取想要的信息。 ? 3.Response?獲取Response對(duì)象,能通過(guò)這個(gè)對(duì)象獲取響應(yīng)信息。 ? 4.Failure?查看接口調(diào)使用能否成功,假如返回false是成功的,true是失敗的。 ? 5.FailureMessage?失敗信息,沒(méi)有設(shè)置的時(shí)候失敗信息是空的,能set這個(gè)信息。 ? 6.ResponseData?獲取response?body類型是byte[]。 ? 7.ResponseCode?返回接口code成功是200。 ? 8.ResponseMessage?獲取msg成功是OK。 ? 9.ResponseHeaders?獲取接口服務(wù)端返回的頭部信息。 ? 10.RequestHeaders?獲取用戶端請(qǐng)求的頭部信息。 ? 11.SampleLabel?獲取接口請(qǐng)求的名稱。 ? 12.SamplerData?獲取請(qǐng)求的url和body。 ? 13.ctx?代表上下文信息,能直接用。 ? 14.vars即JMeterVariables,操作jmeter變量,這個(gè)變量實(shí)際引用了JMeter線程中的局部變量容器(本質(zhì)上是Map),常用方法: ? a)?vars.get(String?key):從jmeter中獲得變量值; ? b)?vars.put(String?key,String?value):數(shù)據(jù)存到j(luò)meter變量中; ? 15.prev?獲取前面的sample返回的信息,常用方法: ? a)?prev.getResponseDataAsString():獲取響應(yīng)信息。 ? b)?prev.getResponseCode()?:獲取響應(yīng)code。<br><br>
1 2 3 | String command =? "cmd /c start D:\\apache-jmeter-3.2\\負(fù)載.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 ); |
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。