使用FlexDeploy对融合中间件应用程序进行自动化软件测试
自動化軟件測試是任何軟件組織都應執行的強制性活動之一,以保證其產品質量。 但是,此過程通常變得非常復雜,尤其是涉及由多個不同部分組成的現代復雜系統的自動化測試時。 所有這些部分都基于不同的技術,顯然,應該使用不同的技術對其進行測試。 實際上,質量檢查工程師會使用各種測試工具來對系統的每個部分進行測試,對整個系統進行測試,以執行不同的測試類型,例如功能,性能,集成等。每個測試工具都會產生自己的測試結果質量保證人員應該從不同來源收集所有數據并進行分析,以便能夠對系統質量做出任何決定。 最好將所有內容放在一起并完全自動化這個復雜的過程。 這將提高測試自動化本身的質量,并允許在進行持續交付過程中進行自動化測試。
我已經發布了有關融合中間件應用程序FlexDeploy的新DevOps和CD工具的信息 。 我很高興有機會看到該系統的beta版本(3.0),并且能夠嘗試一下。 除了許多其他很酷的功能,新版本還提供了測試自動化功能。 FlexDeploy 3.0成為功能強大的工具,可以控制測試自動化過程,并通過實現以下概念使其變得更加容易:
- 中央管理面板,用于執行,控制和監視組織中的所有自動化測試活動
- 從所有使用過的測試工具收集測試結果的中心
- 用于在整個組織中構建質量檢查儀表板報告的中央工具,以制定“上線/不上線”決策
- 支持自動測試,這是CD流程中必不可少的步驟
在這篇文章中,我將重點介紹與測試自動化相關的FlexDeploy關鍵功能,這些功能可能有助于理解上述概念的實現方式以及其實際工作方式。
與第三方測試工具集成
實際上,FlexDeploy本身不會執行任何自動化測試。 這項工作將由大量的各種測試工具來完成。 FlexDeploy僅控制過程,并且顯然能夠與測試工具進行交互。 此交互最終完成以下任務:
- 執行測試
- 導入測試結果
與第三方測試工具的集成是通過使用插件來實現的。 此時,FlexDeploy 3.0僅提供JUnit和TestNG工具的插件。 但是,在即將發布的版本中,插件的范圍將越來越廣泛。 據我所知,諸如Oracle應用測試套件(OATS),Selenium,Test Complete等工具正在開發中。 實際上,如果FlexDeploy沒有為某些測試工具提供現成的插件,我們可以始終使用Shell插件,該插件允許執行批處理腳本以與測試工具進行交互。
基本上,這些插件充當各種測試工具的適配器。 他們命令測試工具運行測試,并將測試結果導入統一的測試結果存儲中。 這樣就可以分析測試結果并構建儀表板報告,從而從確切的測試工具中抽象出來。
測試定義
FlexDeploy引入了“測試定義”的概念。 這種抽象表示與某個業務用例相關的一個或一堆測試用例。 例如,對于銀行系統,我們可以定義測試定義,例如“貸款安排”,“貸款還款”,“逾期貸款”等。
基本上,FlexDeploy在運行自動化測試時,實際上是在一對一地運行測試定義。 每個測試定義依次使用相應的測試工具運行實際的測試用例。 它知道將要使用哪種測試工具,如何與之交互,應該使用哪些測試用例(在測試工具中定義),如何導入測試結果以及如何對其進行限定。 為了與測試工具進行交互,測試定義使用工作流程。 工作流是一種強大的機制,通常在FlexDeploy中用于執行構建和部署活動。 現在,它也用于自動化測試。
實際上,測試工作流程會調用插件與測試工具進行交互。 除了運行測試用例和導入測試結果外,測試工作流程還可以執行任何其他活動。 例如,在運行測試之前進行一些準備工作(例如預熱階段),或者在運行測試之后進行一些完成操作。
測試資格
測試定義能夠分析測試結果并得出結論,無論測試運行成功與否。 此功能基于測試限定詞。 測試定義可以包含許多測試限定符,例如“通過的測試用例數量大于X”,“失敗的測試用例百分比小于Y”等。
如果在測試定義中定義的所有測試限定符均返回true,則認為測試運行成功。 FlexDeploy提供了一組預定義的測試限定符,但它們計劃允許用戶基于Groovy表達式定義自己的自定義限定符。
測試集
測試集只是一組測試定義。 例如,對于銀行系統,我們可以定義測試集,例如“貸款”,“存款”,“外匯”等。測試集可以包含其自己的限定詞,以檢查整個測試定義集是否通過或失敗。
測試執行
此時,可以手動執行自動測試:
或在部署過程中自動執行:
我想即將推出的FlexDeploy版本將允許獨立于部署過程按計劃自動執行測試。
每次測試執行(手動執行或在部署內執行)都會給出相應的測試結果:
儀表板
FlexDeploy 3.0提供了一個新的儀表板選項卡“ Test Automation”。 它表示跨環境的測試執行的通過/失敗比率,測試運行的持續時間和響應時間:
該信息也可在項目定義的“測試自動化”部分獲得。 在這種情況下,所有圖表均基于與此項目相關的測試結果:
通過實施測試自動化功能,FlexDeploy 3.0在使連續交付流程完全自動化的道路上邁出了巨大的一步。 當然,仍有許多工作要做,但是它們已經建立了良好的基礎,而該基礎將在即將推出的FlexDeploy版本中通過新的測試自動化功能得到充實。
而已!
翻譯自: https://www.javacodegeeks.com/2015/10/automated-software-testing-of-fusion-middleware-applications-with-flexdeploy.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的使用FlexDeploy对融合中间件应用程序进行自动化软件测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑系统怎么重装如何重装电脑系统win7
- 下一篇: 华为移动路由Pro评测华为如何测试路由器