一個用于大規(guī)模連續(xù)測試的開源解決方案
軟件測試在對業(yè)務(wù)目標和增長的貢獻越來越重要,逐漸成為了企業(yè)數(shù)字化轉(zhuǎn)型的重要推動力。但軟件測試行業(yè)仍然在測試維護,自動化,工具和技能方面存在很多痛點。大多數(shù)常用工具缺乏功能,太復(fù)雜而無法集成,智能化不足,或缺少可用性。
Cerberus是一個用戶大規(guī)模連續(xù)測試的開源解決方案。它是由法國服裝零售商La Redoute所構(gòu)建的測試自動化解決方案。它著重于可用性,可伸縮性和測試生命周期過程的集成。
什么是Cerberus?
La Redoute的IT團隊在2010年開始開發(fā)Cerberus,目標是使現(xiàn)有Web應(yīng)用程序的手動非回歸測試自動化,以加速和提高軟件質(zhì)量的交付。Cerberus被給予厚望,技術(shù)團隊希望她能夠在幾分鐘而不是幾周內(nèi)通過測試管理,執(zhí)行和報告來實現(xiàn)迭代。
Cerberus基于Selenium Web驅(qū)動程序和具有Java技術(shù)堆棧的三層傳統(tǒng)架構(gòu)。開發(fā)的關(guān)鍵要求是限制代碼來支持可用性,重用性并使測試保持簡單。
在開發(fā)Cerberus時,大多數(shù)解決方案都是商業(yè)化的,來解決特定的孤島,例如測試存儲庫,執(zhí)行或分析。Cerberus結(jié)合了三個測試孤島,并啟用了Web,API和數(shù)據(jù)庫測試。
Cerberus開源和用例
Cerberus的第一個版本對內(nèi)部客戶關(guān)系管理(CRM)解決方案進行了自動功能測試,當時被證明可以成功檢測到危險的發(fā)布缺陷,所以Cerberus逐漸產(chǎn)品化。
接下來,Cerberus開始測試La Redoute的電子商務(wù)平臺。在2013年,La Redoute團隊意識到開源軟件對于產(chǎn)品創(chuàng)新和開發(fā)的價值,在GNU通用公共許可證下,La Redoute在SourceForge和GitHub上發(fā)布了Cerberus。之后,與所有開源項目一樣,Cerberus不斷努力來確保代碼質(zhì)量,文檔和透明度。
近年來,數(shù)字化轉(zhuǎn)型正逐步升級,Cerberus啟用了全面的回歸測試自動化和監(jiān)控。并專注于提高測試管理的靈活性,執(zhí)行可伸縮性和可追溯性,來實現(xiàn)其目標。在功能測試的同時還添加了端到端測試。
La Redoute指出,在某些情況下,Cerberus使軟件交付周期加快了10倍以上。案例研究表明,La Redoute在日常部署中取得了96%的成功,并在一年中進行了6000多次自動測試。

目前,Cerberus吸引了眾多法國零售商的關(guān)注,如迪卡儂,樂華梅林和麥達斯等,都對Cerberus感興趣。然后,這些企業(yè)使用該解決方案來加速其數(shù)字化轉(zhuǎn)型,主要用于電子商務(wù)和后臺轉(zhuǎn)換。
現(xiàn)在,Cerberus添加了標準集成,來提高其可用性。詹金斯插件是一個重要的補充,來促進與自動化測試和反饋CI/CD管道的部署。通過添加對REST API的支持,高級計劃,重試和屏幕截圖,Cerberus可以進一步縮短測試周期。如,法國零售商Leroy Merlin使用Cerberus進行大規(guī)模移動測試。
支持連續(xù)測試
通過最近和正在進行的更新,企業(yè)可以利用Cerberus從開發(fā)到運營的功能。通過在各種瀏覽器,設(shè)備和應(yīng)用上執(zhí)行測試,它擴展了數(shù)字體驗測試的范圍。其用于API(包括SOAP和REST),桌面應(yīng)用程序和Apache Kafka的本機連接器可以測試遺留應(yīng)用程序,API,事件驅(qū)動的微服務(wù),流服務(wù),商業(yè)智能,數(shù)據(jù)科學應(yīng)用程序和其他用例。

在軟件開發(fā)生命周期中,Cerberus支持測試管理,執(zhí)行和報告中的快速迭代。用戶可以用簡單的創(chuàng)建測試規(guī)范,使用庫編寫測試,在各種設(shè)備上并行執(zhí)行以及進行高級報告。與CI/CD解決方案(例如Jenkins,Bitbucket等)的本機集成。
Cerberus還可以監(jiān)控客戶體驗和業(yè)務(wù)運營。測試可以是功能性的也可以是技術(shù)性的,從而允許企業(yè)測試復(fù)雜的方案。例如,法國的電視頻道TF1將其用于流媒體平臺上的質(zhì)量保證。
如高級計劃,警報,通知以及Web性能和分析儀表盤之類的功能,使發(fā)現(xiàn)問題和識別第三方集成或客戶體驗問題的瓶頸變得更加容易。