測試 —— DevOps 快速交付的最大瓶頸

移動互聯(lián)時代,智能手機成為了新時代的流量入口,數(shù)十億用戶無時無刻不在使用著各式各樣的軟件,從而給軟件開發(fā)行業(yè)帶來了空前苛刻的用戶體驗要求。

這些苛刻的用戶期望,軟件開發(fā)人員專注于將越來越小的代碼增量越來越快地投入生產(chǎn),產(chǎn)生了更多模塊化和動態(tài)的軟件開發(fā)和部署方法,因而越來越多的開發(fā)團(tuán)隊開始采用微服務(wù)和容器技術(shù)構(gòu)建云原生應(yīng)用程序。軟件開發(fā)逐漸從傳統(tǒng)的瀑布開發(fā)模式過渡到敏捷開發(fā),再到如今的 DevOps 時代。

然而,無論在哪個時代,測試都被視為快速交付的瓶頸之一。

軟件測試的演變

在企業(yè)發(fā)展初期,互聯(lián)網(wǎng)業(yè)務(wù)較為單一,采用傳統(tǒng)的瀑布開發(fā)模式,即在整個項目生命周期中,前半部分用于設(shè)計和開發(fā),后半部分用來測試。在軟件產(chǎn)品完成交付之前,無法獲得用戶的反饋,難以驗證其價值,更談不上適應(yīng)各種變化。

為了讓產(chǎn)品更快交付到用戶手中,開發(fā)者們引入了敏捷模型。敏捷開發(fā)以用戶的需求進(jìn)化為核心,采用迭代、循序漸進(jìn)的方法進(jìn)行軟件開發(fā)。在敏捷開發(fā)中,軟件項目在構(gòu)建初期被切分成多個子項目,各個子項目的成果都要經(jīng)過測試,具備可視、可集成和可運行使用的特征。換言之,就是把一個大項目分為多個相互聯(lián)系,但也可獨立運行的小項目,并分別完成,在此過程中軟件一直處于可使用狀態(tài)。

近年來,得益于容器技術(shù)與微服務(wù)架構(gòu)的蓬勃發(fā)展,在敏捷模型基礎(chǔ)之上,開發(fā)和運維協(xié)同工作的 DevOps 模式應(yīng)運而生。DevOps 是一系列軟件開發(fā)實踐,強調(diào)開發(fā)人員(Dev)和運維人員(Ops)之間的溝通合作,通過自動化流程,使得軟件構(gòu)建、測試、交付更加快捷、頻繁和可靠。這種開發(fā)模式的特點是可以把產(chǎn)品的每個迭代,或者每修復(fù)一個線上缺陷就立即部署到生產(chǎn)環(huán)境,這樣一來,開發(fā)者就能夠迅速從用戶處獲得反饋并且快速做出響應(yīng)。

在 DevOps 開發(fā)流程中,測試工作融入到了項目生命周期的每個環(huán)節(jié)。

DevOps 測試帶來的挑戰(zhàn)

測試 —— DevOps 快速交付的最大瓶頸

(圖源:騰訊游戲?qū)W堂)

當(dāng)然,這樣的變革也為軟件測試工作帶來了更多挑戰(zhàn)。

挑戰(zhàn)一:頻繁部署

在采用 DevOps 之后,開發(fā)團(tuán)隊能夠根據(jù)項目具體情況做到每天一次甚至多次部署。在生產(chǎn)環(huán)境頻繁部署軟件,最大的挑戰(zhàn)就是測試。以前,測試基本上都在開發(fā)階段之后和產(chǎn)品上線之前完成。但現(xiàn)在,不再有充足的時間留給 QA 團(tuán)隊去發(fā)現(xiàn)問題再拋給開發(fā)團(tuán)隊進(jìn)行修復(fù)。那么,速度成了測試面臨的一大挑戰(zhàn)。而很多企業(yè)缺少足夠的測試工程師,或時間緊張,無法按時完成用例設(shè)計和執(zhí)行,確保產(chǎn)品準(zhǔn)時上線,測試執(zhí)行時間長,結(jié)果反饋慢。

挑戰(zhàn)二:自動化

在 DevOps 趨勢下,測試部門從原先的大量集中測試,變成了高頻快速測試。原先大部分企業(yè)采用純手工測試的方式,從根本上無法適應(yīng) DevOps 的高頻快節(jié)奏需求,從而滋生了對自動化測試的訴求,這就對測試人員的自動化編碼能力提出了更高的要求。

挑戰(zhàn)三:測試跟蹤管理難

DevOps 流程中,測試過程會產(chǎn)生大量新的數(shù)據(jù),這些數(shù)據(jù)資產(chǎn)、結(jié)果資產(chǎn)分析數(shù)字化程度低,難以整合和拉通并作為測試優(yōu)化改進(jìn)的依據(jù)。

挑戰(zhàn)四:Bug 發(fā)現(xiàn)和解決成本高

內(nèi)部測試團(tuán)隊形成測試“思維定式”,無法從用戶視角及不同維度對產(chǎn)品進(jìn)行補充測試,導(dǎo)致測試結(jié)果不可信,測試結(jié)果無法充分反映軟件風(fēng)險。

總而言之,DevOps 在帶來更加敏捷高效的開發(fā)模式的同時,對測試人員提出了更高的要求,也帶來了更高的測試成本。

基于云的測試平臺

為了解決 DevOps 的測試瓶頸,市面上涌現(xiàn)出了很多自動化測試工具,其中基于云的測試平臺成為了一大發(fā)展趨勢。

云測試面向企業(yè)及開發(fā)者,通過云端調(diào)配和使用測試工具、測試設(shè)備、測試工程師,以解決企業(yè)軟件和系統(tǒng)的功能、兼容、性能、安全等全周期的測試需求,具備云服務(wù)彈性可伸縮的特征,能提高企業(yè)的軟件和系統(tǒng)測試效率,降低測試成本。

根據(jù) Emergen Research 的最新分析,未來 7 年全球云測試市場規(guī)模將以年均 13% 的增長率穩(wěn)步上漲 ,預(yù)計在 2028 年達(dá)到 216.7 億美元。其中北美仍是全球最大的市場,而亞太地區(qū)則是增長最快的市場。

在國內(nèi),以百度、阿里云、騰訊云、華為云等頭部廠商為代表的云服務(wù)供應(yīng)商都推出了各自的云測試服務(wù)平臺,為國內(nèi)中小企業(yè)開發(fā)者提供自動化云測試服務(wù),幫助企業(yè)實現(xiàn)降本增效。在此基礎(chǔ)之上,將“讓人人都能開發(fā)軟件”作為產(chǎn)品使命的飛算更進(jìn)一步,推出了更易于初學(xué)者使用的飛算 SoFlu 全自動測試平臺。

飛算 SoFlu 全自動測試平臺能夠為中小企業(yè)開發(fā)團(tuán)隊提供易用、可靠的云測試服務(wù),包括:

·測試生命周期管理:提供測試用例管理、測試用例評審、測試計劃跟蹤、測試報告生成等測試生命周期管理相關(guān)功能。

·測試用例自動生成:用戶通過錄制工具把操作過程記錄下來,平臺自動識別相關(guān)的接口并創(chuàng)建相應(yīng)的測試用例場景。

·測試數(shù)據(jù)管理:基于測試腳本與測試數(shù)據(jù)分離的思路,方便研發(fā)測試協(xié)同、方便自動化測試中的測試數(shù)據(jù)使用,支持在UI、接口等自動化工具中快速可重復(fù)地使用。

·精準(zhǔn)回歸測試:項目測試時自動識別所有變動的接口,自動查找接口關(guān)聯(lián)的所有測試用例進(jìn)行精準(zhǔn)回歸測試。

以飛算 SoFlu 全自動測試平臺為代表的云測試平臺能夠讓開發(fā)團(tuán)隊輕松應(yīng)對 DevOps 模式下帶來的四大測試挑戰(zhàn),幫助開發(fā)人員匱乏的中小企業(yè)或組織機構(gòu)降低測試工作門檻,實現(xiàn)降本增效,進(jìn)一步完成數(shù)字化轉(zhuǎn)型。

(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進(jìn)一步核實,并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )