普元雲計算 程式猿測試媛之友誼的小船昇華成巨輪

2022-07-30 22:09:10 字數 2207 閱讀 2128

本文作者通過「流程平台自動化測試實踐」的現身說法,介紹了測試人員如何簡單高效完成開發測試任務,內容精悍,值得一讀。

在企業級應用中,流程服務的測試一直面臨諸多的問題,諸如:

— 系統內部任何乙個微小的變化,要上線測試;

— 外部關聯系統變化,引起的業務驗證測試;

— 如果流程作為乙個公共的服務,一旦服務公升級,所有業務系統都會有影響,所有業務系統全部都要驗證。

這些都會給測試造成巨大的工作量,不僅消耗過多的時間,還無法很好的保證質量。當這些問題投射到雲環境與分布式架構中,所面臨的複雜度與解決難度的公升級不言而喻。

如上圖所示,在基於微服務架構的數位化企業雲平台中,流程是一類重要的微服務。我們正在嘗試將流程微服務的測試自動化,並由devops平台高效的驗證微服務的改變是否影響原先的業務,從而提供高質量的上線保障,讓測試人員告別那些讓人生無可戀的重複性操作。

基於微服務的自動化測試的本質是通過資料的錄製記錄既有的測試過程,並通過案例固化過程中的全部測試資料,最終通過對案例的呼叫回放完成流程微服務測試的自動化。

流程微服務的自動化測試並非完全脫離手工測試,這裡的自動化是建立初次手工測試的基礎上的。第一次手工測試會在資料庫中記錄下所有的測試資訊,我們將收集這些資訊錄製形成測試資料檔案,根據每條流程例項錄製乙個測試資料檔案。每個檔案中包含:該流程例項執行過程中的所有相應請求/相應報文,該流程例項執行過程中的上下文變化,該流程例項的流轉路徑(活動+連線),該流程例項包含的子流程例項。

在流程微服務的自動化測試裡,我們會根據實際的介面呼叫來設計多個元件,這些元件放置於乙個測試元件微服務中提供給測試人員使用,每個簡單的元件都對應乙個介面的請求報文。這就猶如搭積木,每個積木是乙個簡單的介面報文,多個積木搭在一起形成乙個房子,即多個介面報文固定呼叫形成乙個複雜元件。多個房子、花壇、汽車形成乙個小鎮,即多個簡單元件和複雜元件結合在一起生成的最終乙個「流程例項的自動化測試」案例。

有了之前收集的資料檔案,就是根據每個資料檔案,選擇積木的問題了,再根據資料檔案給每個元件新增必要的引數,這樣就形成了測試案例。在案例生成的過程中測試人員不需要編寫任何**!

我們將統一測試平台門戶設計為一類領域系統,可以上傳我們的測試案例部署,選擇案例點選執行即可。每個案例的執行其實就是相應手工測試的一次回放。案例執行完成會形成詳細的測試報告,包含了成功、錯誤、異常的詳細資訊,案例統計圖,以及案例執行時間。清晰明了地達成便捷測試。

流程微服務有時也會和其他微服務之間通訊,往往測試環境中無法與其他微服務直接互動,這時候我們為了模擬流程微服務引擎與其他微服務互動過程,提供了乙個服務擋板功能,服務擋板也是設計中的數位化企業雲平台的一類領域系統,由api mock提供擋板能力,即用服務擋板替代生產上的微服務。(未來我們會詳細介紹api mock相對於傳統mock的優勢)

當自動化測試進行到其他微服務互動時,流程微服務引擎向擋板發起請求,擋板響應請求,並動態拼寫**報文,當所有的**報文完成之後,擋板通知測試引擎,測試引擎向流程引擎傳送**報文。

對於測試案例,不僅需要模擬流程流轉的服務介面過程,還需要驗證流轉過程中的引數正確性,所以需要驗證元件來完成引數的確認。

開發人員小a、小b、小c:流程/資源/外部服務改動啦!就要上線啊!今晚加班趕緊測一下吧!

測試人員:so easy!輕輕一點執行,測試結束報告自動傳送給每個成員!下班啦~\(≧▽≦)/~啦啦啦~~~~

關於作者

葉婉婷

現任普元資訊soa產品部開發工程師,為普元新一代數位化企業雲平台開發團隊一員。在過去的兩年參與流程平台專案,主要負責eclipse外掛程式開發及自動化測試平台開發。愛好:旅遊、電影、美食、游泳。

關於eaii

eaii(enterprise architecture innovation institute)企業架構創新研究院,致力於軟體架構創新與實踐,加速企業數位化轉型。

雲計算,GIS「普適」的翅膀

隨著 近年來雲計算 物聯網 移動網際網路的快速發展,這些新興技術與地理資訊產業的融合發展已成為勢不可擋的趨勢。在這樣的發展趨勢下,gis究竟將何去何從,一直是行業內外大家討論的重要話題。其中,普適化gis 脫穎而出,成為大家關注的焦點。普適化gis 是以普適計算 為基礎,為使用者 提供無處不在 透明...

「程式猿「計算機入門基礎

計算機 computer 電子計算機能夠按照程式執行,自動,高速處理海量資料的現代化智慧型電子裝置,由 硬體 和軟體組成 常見的形式有 台式計算機,筆記本計算機,大型計算機 應用 科學計算,資料處理,自動控制,計算機輔助設計,人工智慧,網路等領域 cpumemory 記憶體 motherboard ...

安利 程式猿必備筆記軟體typora 堅果雲

今天吃我安利 本人用過很多款筆記 印象筆記 有道雲 onenote 馬克飛象 boostnote cmd markdown 為知筆記 前兩年試了很多款筆記,其中還買了馬克飛象和cmd markdown的會員 加起來一百多大洋,現在想想真是敗家。有錢買點牛肉麵吃不好嗎?目前在用的主要是兩套 記學習筆記...