SoapUI是一款流行的開源API測試工具,它可以幫助用戶創建、執行和監視Web服務。SoapUI使用WSDL文件(Web服務描述語言)來測試Web服務,它可以輕松地與多種協議(如SOAP、REST、HTTP等)進行交互。SoapUI的主要特點是支持數十種不同的測試樣式(如性能、功能和安全性測試等);向導式界面方便用戶創建和執行測試用例; 支持多種應用程序協議; 關注于重復使用代碼; 內部文檔生成能力; 無需學習新的代碼就可以使用。此外,Soapui還提供了命令行工具,可讓用戶輕松運行各種任務調度程序,或作為用戶的構建過程中的一個組成部分MockServices集。有用到這款工具的朋友快通過下面地址來獲取吧!
SoapUI破解教程
1、安裝的方法很簡單,雙擊“SoapUI-x64-5.1.3.exe”開始正式的安裝(不過注意該程序僅支持64位操作),之后的安裝方法很簡單直接默認點擊下一步即可
1、解壓后復制Protection-4.6.jar到soapui安裝的lib目錄下面,替換原來的文件
2、直接打開bin\soapui-pro.bat批處理文件,然后再導入scz.key文件
SoapUI命令行
直接執行testrunner.sh將給出幫助手冊:
soapUI Pro 4.5.2 TestCase Runner
usage: testrunner [options]
-F Report format. Used with -R. Valid options PDF, XLS, HTML, RTF,
CSV, TXT, and XML (comma-separated)
-v Sets password for soapui-settings.xml file
-t Sets the soapui-settings.xml file to use
-A Turns on exporting of all results using folders instead of long
filenames
-D Sets system property with name=value
-E Sets the environment
-G Sets global property with name=value
-g Sets the output to include Coverage HTML reports
-h Sets the host
-i Enables Swing UI for scripts
-j Sets the output to include JUnit XML reports
-m Sets the maximum number of TestStep errors to save for each
testcase
-I Do not stop if error occurs, ignore them
-M Creates a Test Run Log Report in XML format
-P Sets or overrides project property with name=value
-R Report to Generate
-S Saves the project after running the tests
-a Turns on exporting of all results
-c Sets the testcase
-d Sets the domain
-e Sets the endpoint
-f Sets the output folder to export results to
-o Opens generated report(s) in a browser
-p Sets the password
-r Prints a small summary report
-s Sets the testsuite
-u Sets the username
-w Sets the WSS password type, either "Text" or "Digest"
-x Sets project password for decryption if project is encrypted
命令行格式:testrunner [選項] soapui工程的xml文件
主要命令選項說明:
-D 設置system property,即可以設置SoapUI——Help——System properties菜單下的屬性值
例如命令行指定-Dfile.encoding=UTF-8
-I 設置為用例執行中出現錯誤時不停止,繼續執行
-a 默認SoapUI只會在用例執行時有錯時(如斷言有錯),才會生成.txt的包含請求、響應的詳細日志信息,便于查看當時請求出 錯的詳細情況,若加上-a選項,則不論出錯與否都將生成該報告文件。
-f 設置報告輸出的路徑,不指定則默認為輸出到當前目錄下
-j 生成JUnit格式的XML報告文件
-r 打印簡略的總結報告
-s 指定要執行的用例集名稱
因此命令行執行SoapUI用例可以如下:
sh testrunner.sh -Dfile.encoding=UTF-8 -I -s $testsuit -r -j -f $REPORTS_PATH $TESTSUIT_PATH/soapui_example.xml
執行完成后將生成JUnit格式的xml報告文件,可在Jenkins中生成測試報告及接口響應性能趨勢圖等
出錯時生成的.txt格式的包含詳細請求參數及響應數據的日志報告文件可以郵件附件形式發送,進行及時反饋及出錯時問題定位
輸入參數為字符串如何輸入?
參考以下:
354561031959904
]]>
發送json
左邊選json
SoapUI填充數據
例如如下數據,calendar_id是需要根據返回值動態獲取的,此時需要通過獲得數組中的calendar_id
{"calendar":
[
{"calendar_id":"1705","showtime":"1288927800","endshowtime":"1288931400","allDay":false},
{"calendar_id":"1706","showtime":"1288933200","endshowtime":"1288936800","allDay":false},
{"calendar_id":"1709","showtime":"1288935600","endshowtime":"1288938900","allDay":false}
]
}
在SoapUI中可以通過groovy腳本實現提取json數組數據,提取到數據后就可以遍歷訪問列表中的每條新聞正文了
1.新建一個REST請求步驟,獲取接口返回的數據
2.新建一個DataSource步驟,選擇Groovy方式
3.添加一個名為cal_id的Properties
4.groovy編輯框中輸入實現代碼
[java] view plain copy
import groovy.json.JsonSlurper
def xresponse = testRunner.testCase.testSteps["getCalendarListByCoid"].testRequest.response.contentAsString
def slurper = new JsonSlurper()
def re = slurper.parseText(xresponse)
def num=re.calendar.size()
def i = testRunner.testCase.testSteps["DataSource"].currentRow
if(i{
result["cal_id"]=String.valueOf(re.calendar_id.id[i])
}
5.新建一個Property Transfer步驟,將DataSource的cal_id傳遞給當前testCase的變量
6.新建 一個REST請求步驟,將得到的cal_id去請求另一個接口
7.新建一個DataSource Loop步驟,使DataSource與Property Transfer步驟循環,這樣就可以遍歷數組中的每個數據了
[reply]tz0705010216[/reply]
你好
以博文中的json為例,新增的groovy步驟則如下:
def xresponse = testRunner.testCase.testSteps["getCalendarListByCoid"].testRequest.response.contentAsString
def slurper = new JsonSlurper()
def re = slurper.parseText(xresponse)
def id = re.calendar.calendar_id[i] //i為json數組中的第i個子json對象
若為在腳本斷言處添加groovy斷言,則如下:
def xresponse = messageExchange.modelItem.testCase.testSteps["getCalendarListByCoid"].testRequest.response.contentAsString
def slurper = new JsonSlurper()
def result = slurper.parseText(xresponse)
def id = re.calendar.calendar_id[i] //i為json數組中的第i個子json對象
SoapUI優勢
1、SoapUI的設計成技術以及非技術性用戶帶來了簡單化和優化的測試感受
2、這類便于所使用的用戶界面優化了對根據SOAP和REST的WebService的測試
3、創建一個負載測試,您只需鼠標右鍵點一下一個作用測試,并且以負載測試運作
4、或使用拖拽創建一切簡易或繁雜測試情景
5、針對經驗豐富的客戶,SoapUIPro提供屬性傳送指導,會自動傳送選中視頻的屬性,促使繁雜的測試測試用例或信息流廣告的創建更加輕松
6、針對較大控制和協調能力,SoapUIPro還提供了即使用的現成高端腳本制作,可以支持基本上一丁點的測試
7、不論你是一個測試工作人員,開發者,業務分析師或主管,SoapUI為每一個角色提供了不一樣的功效
SoapUI功能
1、MockServices根據SoapUI提供與眾不同的能力,可以效仿WebServices,并創建/運作對她們的功能和負載測試,即便在系統部署前,這種也可以進行
2、能夠減少搭建詳細商品環境中的團本所需要的耗費,及其提供你的顧客瀏覽能力,而不需要為其等候被進行
3、在SoapUI,客戶無需花很多勤奮就能創建符合規定Mocks-僅需選擇一個自己想要的WSDL,SoapUI可以一鍵生成MockService和它方式
4、可自定一切客戶自己喜歡的回應方法
5、高端腳本制作作用來模擬一切自己想要的個人行為-固定不動回應,任意不正確,動態性結論等
6、SoapUI提供了所有所需要的工具來測試和優化的測試
7、一覽標識給你一個工程項目的全部內容全面的觀點,僅需一次點一下,大家可以添加任何數量肯定為認證傳到消息TestStep
8、可以使用功能強大HTTP監控器紀錄,剖析乃至改動遠程服務器-網絡服務器通訊
9、能方便的創建和運行數字驅動測試
以上便是kkx小編給大家分享介紹的API測試工具-SoapUI破解版!