翻譯|使用教程|編輯:鄭恭琳|2021-03-25 10:51:54.177|閱讀 263 次
概述:今天,我們將專注于如何配置Parasoft SOAtest以執(zhí)行功能回歸測試,并將其作為持續(xù)集成過程的一部分。在本文中,我將介紹使用流行的自動化平臺Jenkins配置SOAtest的步驟。我們將使用開放源碼的Parabank應(yīng)用程序,并使用Docker進(jìn)行部署,以簡化操作。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
持續(xù)集成(“CI”)是一種易于理解且(在這一點上)已被廣泛采用的實踐。這是顯著提高應(yīng)用程序交付速度的必要的第一步。
持續(xù)集成允許開發(fā)人員將更改推送到源代碼的“主”分支中,而單個開發(fā)人員可能在一整天內(nèi)將許多更改推送到主分支中。為了確保master分支是原始的,可構(gòu)建的且高質(zhì)量的,在每次更改后進(jìn)行測試至關(guān)重要,因為它充當(dāng)了應(yīng)用程序源代碼的黃金副本。
(如果您對連續(xù)集成有更多的興趣,我在這里推薦Martin Fowler的舊文章,但仍然很有趣,有關(guān)軟件開發(fā)中的集成歷史以及CI的優(yōu)點/最佳實踐。)
今天,我們將專注于如何配置Parasoft SOAtest以執(zhí)行功能回歸測試,并將其作為持續(xù)集成過程的一部分。在本文中,我將介紹使用流行的自動化平臺Jenkins配置SOAtest的步驟。我們將使用開放源碼的Parabank應(yīng)用程序,并使用Docker進(jìn)行部署,以簡化操作。
下圖說明了我們將在本文中進(jìn)行的設(shè)置。最好從左到右閱讀。
簡而言之,Jenkins將從Github簽出一個回購,其中包含一個名為“ Parabank”的SOAtest項目,該項目包含REST測試。Jenkins還將從Docker Hub中提取一個名為parasoft / parabank的Docker映像。該映像不僅包含Parabank,還包含Tomcat和正確的Java運行時環(huán)境。
然后,Jenkins將運行此Parabank圖像的實例(稱為“容器”)。之后,Jenkins將告訴SOAtest運行從Github提取的測試,以便我們可以驗證我們的Parabank實例。
現(xiàn)在,這并不是真正的持續(xù)集成的精神(因為我為您提供了一個預(yù)先構(gòu)建的應(yīng)用程序),但是我想使用Docker來省去使用Maven構(gòu)建Parabank以及安裝的麻煩并配置Tomcat / Java。
下面提供了更為逼真的/真實的CI圖。開發(fā)人員將源代碼檢入Github。現(xiàn)在,我們要測試即使開發(fā)人員進(jìn)行了更改,應(yīng)用程序仍處于良好狀態(tài)。
Github中的源代碼更改觸發(fā)了Jenkins的構(gòu)建,并且Jenkins啟動了自動的Maven構(gòu)建(執(zhí)行JUnit測試)。如果所有單元測試均通過,則將打包的應(yīng)用程序(parabank.war)部署到Tomcat上。然后,SOAtest開始執(zhí)行功能性的“黑匣子”測試。
只有在單元測試通過(在Maven構(gòu)建期間)和功能性“黑匣子”測試通過(在SOAtest執(zhí)行期間)之后,開發(fā)人員的原始更改才被認(rèn)為是好的。
讓我們進(jìn)入第一個圖表中配置流程所必需的步驟!
先決條件:
步驟:
1. 在Web瀏覽器中登錄Jenkins(Jenkins通常部署在類似http:// <JENKINS_HOST_IP>:8080 / jenkins的URL上)
2. 我們將從安裝一些Jenkins插件開始。選擇左側(cè)的“管理Jenkins”,然后在出現(xiàn)的新菜單中選擇“管理插件”。
3. 在“可用”標(biāo)簽下,選擇并安裝以下插件:
a. “Parasoft調(diào)查結(jié)果”
b. “Git插件”(版本3.30)選擇“無需重新啟動即可安裝”,然后在“安裝”頁面上選中“在安裝完成且沒有作業(yè)正在運行時重新啟動Jenkins”復(fù)選框。
4. 從步驟1返回至Jenkins主菜單。在左側(cè),選擇“New Item”。
5. 提供名稱“Parabank Deploy and Test”并選擇“Freestyle”項目,然后單擊“確定”。
6. 在出現(xiàn)的配置菜單中,向下滾動到Source Code Management,然后選擇Git。將此URL添加到Repo URL字段中://github.com/sdebrosse/soatest-automation-example.git。所有其他字段都可以保留其默認(rèn)值。
7. 滾動到頁面底部,然后在“構(gòu)建”下添加“執(zhí)行Windows批處理命令”的構(gòu)建步驟(如果您使用的是Linux,請選擇“執(zhí)行外殼”):
8. 將腳本的內(nèi)容復(fù)制到此處,并將其粘貼到新的構(gòu)建步驟字段中。您需要更改腳本頂部的兩個變量的值,以反映到您自己的localsettings.properties文件的路徑以及要在其中創(chuàng)建臨時工作空間的位置(SOAtest將在測試過程中創(chuàng)建此工作空間)。腳本中的注釋說明了每一行發(fā)生的情況:
9. 現(xiàn)在,我們準(zhǔn)備執(zhí)行我們的Jenkins工作!確保首先關(guān)閉所有打開的SOAtest實例。然后選擇配置菜單底部的保存,然后單擊左側(cè)的“立即構(gòu)建”:
10. 您可以單擊左側(cè)的正在運行的作業(yè),然后查看實時控制臺輸出:
如果一切正常,日志最后會顯示“SUCCESS”。這意味著您已經(jīng)成功地從Github提取了SOAtest測試項目,使用Parabank部署了Docker容器并針對該Parabank實例執(zhí)行了測試。在此過程結(jié)束時,我們自動停止了Parabank容器并刪除了temp_workspace來清理環(huán)境。但是,請稍等片刻,您可能已經(jīng)從查看日志中注意到我們的測試失敗了……
是的,針對Parabank的測試失敗。如果我們希望Jenkins構(gòu)建由于SOAtest測試失敗而失敗,則在調(diào)用soatestcli時添加-fail標(biāo)志。像這樣:
soatestcli.exe -fail -data %TEMP_WORKSPACE_PATH% -resource /Parabank -config “builtin://Demo Configuration” -localsettings %LOCALSETTINGS_PATH%
如果您在SOAtest桌面用戶界面中打開測試,則會發(fā)現(xiàn)此故障主要是測試數(shù)據(jù)/測試環(huán)境配置問題。我們的貸款處理者拒絕了本應(yīng)批準(zhǔn)的貸款。
測試環(huán)境配置和測試數(shù)據(jù)是可靠的自動化測試的最大障礙。在以后的文章中,我將探討一種稱為服務(wù)虛擬化的技術(shù)如何幫助確保我們始終擁有所需的確切環(huán)境配置,以便隨時可靠地運行測試–這將使我們從持續(xù)集成中脫穎而出的測試。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn