摘要:針對大規(guī)模項目架構(gòu)復雜、業(yè)務龐大的系統(tǒng)特點,制定出一套完整的測試機制,從多個維度出發(fā),如,研發(fā)階段、環(huán)境關(guān)聯(lián)、發(fā)布管理以及自動測試等,全面設計測試工作方案,總結(jié)得出敏捷迭代研發(fā)測試模式。該方法成功應用于中國電信營銷服務系統(tǒng)(簡稱“營銷2.0”)的測試工作中,驗證了該方法的有效性。
關(guān)鍵詞:軟件測試;測試模式;組件測試;測試環(huán)境;測試發(fā)布
吳超(1980.04.22-),男,回族,江蘇南京,本科,中心經(jīng)理,研究方向:軟件測試。
一、引言
通信安全是國民經(jīng)濟和社會發(fā)展的重要基礎。“十一五”以來,中國電信逐漸加強通信工程全面建設,積極建立全新的營銷信息系統(tǒng),該系統(tǒng)主要是基于應用系統(tǒng),并以24套系統(tǒng)形成第一代營銷,可有效為客戶提供良好服務,全方位開拓市場,強化營銷管理。隨著社會趨勢的快速變化與發(fā)展,客戶要求逐漸呈現(xiàn)多元化,在通信市場的改革推進下,信息技術(shù)全面拓展,市場營銷不斷向數(shù)字化方向發(fā)展。由此在一系列影響因素下,營銷1.0系統(tǒng)無法滿足當前營銷服務需求,繼而中國電信啟動了新一代營銷服務系統(tǒng)(簡稱營銷2.0)的建設及試點工程。2019年完成大面積推廣,2020年轉(zhuǎn)入運營運維階段。
營銷2.0聚焦增量經(jīng)營和存量經(jīng)營兩大流程,采用“平臺+應用”的先進架構(gòu),重構(gòu)了云化、中心化、界面輕量化的新一代系統(tǒng),促使各項業(yè)務得到有效融合,數(shù)據(jù)信息全面共享,以達到客戶的基本要求,助力中國電信數(shù)字化轉(zhuǎn)型。
營銷信息系統(tǒng)的構(gòu)建以云計算結(jié)構(gòu)為基礎,建立服務模型充分體現(xiàn)出系統(tǒng)優(yōu)勢,并利用數(shù)字化平臺加強自主研發(fā),從而形成全新的營銷系統(tǒng),有效推動研發(fā)測試工作的有序開展。相關(guān)部門高度重視測試模式的敏捷性,可有效保障測試服務,提高系統(tǒng)管理質(zhì)量,充分展現(xiàn)出營銷系統(tǒng)的功能特點,提高系統(tǒng)運行的穩(wěn)定程度以及安全度。從而針對軟件測試模式的各個環(huán)節(jié)展開詳細探究。
二、基于對象狀態(tài)的軟件測試方法概述
(一)對象狀態(tài)
對象狀態(tài)取決于軟件的主要功能,當達到既定條件時,對象狀態(tài)通常會產(chǎn)生不同變化,以此展現(xiàn)出相對應的功能。一般情況下,對象轉(zhuǎn)臺通常為事件中的等待過程,以消息為傳導激發(fā)特定功能,促使對象原本狀態(tài)發(fā)生一定變化。在對象狀態(tài)的測試下,相關(guān)工作人員應當結(jié)合對象狀態(tài)的實際變化加以記錄,并將所記錄的內(nèi)容與預期情況進行詳細比較,從而能夠了解軟件功能的具體狀況,針對軟件性能做出合理判斷。同時,在對象狀態(tài)的測試過程中,應當注重符號的利用,充分明確對象空間的基本情況,并結(jié)合對象以及功能,控制對象狀態(tài)的整體行為。通常對象與類具之間有著密切關(guān)聯(lián),對象主要是以人類為支撐存在,運用類方法以達到對象控制的目的,特別是出現(xiàn)私有狀態(tài)下的對象,可利用類調(diào)用形式間接改變對象狀態(tài),確保其變化得到有效保護。并且,在對象狀態(tài)測試中,還應當科學設置監(jiān)控對象,運用數(shù)據(jù)分析方法,基于數(shù)據(jù)流明確對象狀態(tài)的實際變化,促使測試下對象狀態(tài)能夠展現(xiàn)出類的功能。此外,對象狀態(tài)測試還應當采取交互方式,了解類方法下的具體通信狀態(tài),以明確對象狀態(tài)觸發(fā)的實際情況,保證有效性,繼而科學判斷軟件功能狀況[1]。
(二)狀態(tài)屬性
類中的對象通常具備一定屬性,由此應當做好屬性狀態(tài)判斷,明確屬性的實際變化狀況,確保類方法以及屬性發(fā)揮出重要作用。通常情況下,狀態(tài)屬性造成對象變化產(chǎn)生不同程度的影響,促使對象狀態(tài)發(fā)生一定變化,屬性值則表示狀態(tài)變化的相關(guān)區(qū)間,結(jié)合屬性取值的具體情況,將會產(chǎn)生不同執(zhí)行效果的類方法,繼而導致對象出現(xiàn)變化。在對象狀態(tài)屬性中,通常包括數(shù)據(jù)儲存屬性以及信息控制屬性。其中,數(shù)據(jù)儲存屬性主要是在類方法的基礎上為對象進行賦值,確保對象具有一定數(shù)據(jù)屬性,避免程序結(jié)構(gòu)產(chǎn)生不利影響,使其在數(shù)據(jù)方面出現(xiàn)相應變化。同時,在信息控制屬性下,由于信息屬性的差異,以此使程序調(diào)用出現(xiàn)變化,改變當前的程序狀態(tài)行為,促使對象屬性有所不同。狀態(tài)屬性通常是軟件測試的關(guān)鍵部分,結(jié)合狀態(tài)屬性能夠有效制作測試用例,利用程序圍繞對象狀態(tài)變化展開分析,以呈現(xiàn)出狀態(tài)分析的完整性。并且,狀態(tài)屬性也是軟件測試過程中的主要追蹤對象,結(jié)合對象實際變化展開檢測工作,促使對象可根據(jù)相關(guān)方法加以變化,由此分析對象狀態(tài)的實際行為[2]。
(三)測試技術(shù)
軟件測試可有效為功能正常運用提供保障,由此應當充分利用測試技術(shù),以確保測試結(jié)果的精準性。通常情況下,對象狀態(tài)測試技術(shù)包含兩種情況。其一,在程序測試的基礎上,運用程序合理斷定對象狀態(tài),以保證對象變化以及程序相吻合,增強軟件測試準確度,在實際測試中,可假設被測試對象,科學安排對象測試狀態(tài),強化測試對象分析效率。其二,以規(guī)約測試為基礎,加強功能以及需求控制,科學判斷軟件運行情況。采取規(guī)約測試的方法,可有效把握測試重點內(nèi)容,明確對象狀態(tài)等級,對于較為重要的功能應當采取測試的原則,以確保測試狀態(tài)得以有序推行。例如,在消息序列處罰對象狀態(tài)的測試過程中,可充分分析程序類,并根據(jù)功能狀況,利用逆工程分析的方法,以此得出具體的對象狀態(tài)轉(zhuǎn)移規(guī)律,從而展現(xiàn)出測試用例的合理性。并運用測試技術(shù)判斷對象狀態(tài)行為,在程序的作用下,確定測試方法,快速提升測試的精確度[3]。
(三)測試模式
在敏捷開發(fā)形式的基礎上,相關(guān)人員制定了詳細的工作機制,主要包含三道測試工序,以有效驅(qū)動研發(fā)消缺[4]。其中,在第一道工序中,需確保產(chǎn)品功能的正常運用以及各項業(yè)務正確等[5];第二道工序主要保障產(chǎn)品質(zhì)量滿足合格標準,符合有關(guān)規(guī)范要求;而第三道工序則可充分展現(xiàn)出用戶跨場景驗證,促使系統(tǒng)接口交互通信,以此在三道工序后提升系統(tǒng)運行質(zhì)量。如圖1所示,工作機制的基本流程,以第一道工序以及第二道工序為主。
測試人員關(guān)于營銷2.0服務系統(tǒng)特性采取相適應的研發(fā)模式,確保其具備一定的敏捷性,并以15天為迭代周期,周期內(nèi)完成編碼研發(fā)以及單元測試等各項內(nèi)容。如圖2所示,展現(xiàn)出組件測試工作流程。繼而表明測試人員需在迭代周期中的第12天進行提交,在最后3天進行持續(xù)不間斷測試,測試開展下出具有關(guān)測試報告,可有效為下階段測試工作的開展提供前提保障[6]。
1.單元測試
研發(fā)人員在開展單元測試過程中,需確保提測代碼功能可順利運行。研發(fā)負責人員加強單元測試質(zhì)量的全面把控,確保達到規(guī)定的測試要求,隨后測試人員可遞交測試申請,保證單元測試得以順利推進。
單元測試工作開展下,測試人員需充分明確具體的準出要求,做好單元測試工作,因而首先,測試開展中,應當高效完成提測功能開發(fā)。其次,測試人員需自行測試通過。并掃碼相應代碼,避免出現(xiàn)系統(tǒng)問題,最后,研發(fā)人員需經(jīng)過手工調(diào)試以及邏輯驗證等一系列測試方法,以實現(xiàn)單元模塊功能的正常應用,繼而得出精準的測試報告,以供檢測人員了解系統(tǒng)運行狀況。
2.組件測試
組件測試中對環(huán)境有著一定要求,需要測試組選定相適宜的測試環(huán)境,從而開展的測試工作[7]。在開展組件測試中需充分滿足相關(guān)準入要求,在符合既定要求后可充分向集成測試組遞交有關(guān)測試,如圖2所示,組件測試的具體流程。在此階段測試中可有效輸出接口測試報告。
一方面,準入要求。工作人員需全面檢查swagger接口,接口用例提交過程中還需遞交不同方面用例,針對相關(guān)接口參數(shù)進行驗證,確保測試快速通過。
另一方面,準出要求。前臺測試組在開展功能測試時,需對可能產(chǎn)生的問題加以關(guān)注,快速解決接口測試中的相關(guān)問題,避免系統(tǒng)運行出現(xiàn)阻礙,并在中臺測試下,應保證測試避免出現(xiàn)失敗情況,在Sonar代碼掃描下防止出現(xiàn)嚴重缺陷。
3.集成測試
集成測試需要測試人員在集成條件下整合各項信息資源開展大量測試[8]。如圖3 所示完整的集成測試流程。符合準出標準后形成相應的集成測試報告[9]。
集成測試下,應當明確具體測試依據(jù),在測試依據(jù)中通常包含較多內(nèi)容,如,業(yè)務模型等,同時,測試人員應當掌握準入標準,在開發(fā)任務完成后可推進前臺測試,全方位檢查各項代碼,以保證無嚴重問題,并在接口測試中加以詳查,明確測試腳本,繼而為研發(fā)人員提供大量的測試數(shù)據(jù),以供其開展測試工作。并且,集成測試的測試范圍通常包括開發(fā)迭代計劃內(nèi)的功能與接口,前期測試目標通常為實現(xiàn)功能的正常應用。此外,集成測試的準出要求,主要為保證系統(tǒng)滿足既定需求,并確保其避免出現(xiàn)致命功能缺陷,在Sonar代碼掃描下未出現(xiàn)相關(guān)代碼問題,符合接口測試標準,有利于軟件系統(tǒng)的正常運行。
三、測試環(huán)境管理
(一)規(guī)劃測試部署項目
結(jié)合營銷2.0系統(tǒng)運行的實際情況,合理劃分有關(guān)業(yè)務,軟件系統(tǒng)運行時,制定完整的測試部署項目,明確項目的總體要求與測試標準,并逐漸加強對部署項目的全面管控,高效完成各項測試工作,以確保達到良好的測試效果,為軟件系統(tǒng)穩(wěn)定運行提供充足保障[10]。
(二)制定版本控制策略
在版本控制過程中,項目組可充分運用云效平臺與研效模塊加強代碼管理控制,充分強化測試版本的可靠性,確保整體測試效率,快速明確系統(tǒng)問題[11-12]。因此,軟件系統(tǒng)項目研發(fā)過程中,科學設計分支,從不同分支入手高效開展系統(tǒng)測試,繼而形成良好的版本控制。
開發(fā)分支中,測試人員需根據(jù)分支特點研發(fā),并開展自測工作,隨后遞交代碼到有關(guān)分支,隨后需告知研發(fā)負責人員,明確功能與代碼后遞交合并。另外測試人員利用云效平臺發(fā)布測試[13]。
測試分支下,微服務臺提測過程中,開發(fā)人員應當向有關(guān)測試負責人遞交測試相關(guān)分支請求,確保測試組準確獲得測試流程,隨后測試組需詳細檢查交付物,以保證其合格后可實現(xiàn)微服務的有效合并,并發(fā)布相應的測試環(huán)境。同時,還應當在系統(tǒng)上線前期全面驗證即將發(fā)布的相關(guān)服務功能,以了解軟件系統(tǒng)中可能出現(xiàn)的問題,工作人員充分拉取分支代碼并完成提交工作。
發(fā)布分支下,測試組通過一系列測試后向配置組傳達,并由配置組充分合并待發(fā)布的微服務要求,傳送至發(fā)布分支,運用云效平臺在既定測試條件下進行發(fā)布,在各項測試之后可將鏡像發(fā)布至生產(chǎn)環(huán)境下,并對該環(huán)境下測試情況加以注意,若出現(xiàn)有關(guān)異常情況,測試人員則需修改發(fā)布分支代碼至本地后遞交發(fā)布分支,以此與開發(fā)分支以及測試分支進行合并。
四、測試發(fā)布管控
在軟件系統(tǒng)的測試過程中,通常3天發(fā)布新版本,與此同時,各組在測試發(fā)布管理中也均有著不同作用。
研發(fā)組主要是負責發(fā)布具體測試任務,并約定窗口期,未在規(guī)定期限內(nèi)發(fā)布則需將其放置于下一版本中進行發(fā)布。同時,測試組應當結(jié)合具體發(fā)布任務進行測試,若通過一系列測試則需在任務單中加以標準,若測試中未通過,則需標明具體原因,通過的發(fā)布任務需要一并遞交到相應的工程組。工程組則可圍繞通過的任務開展測試,以此發(fā)布生產(chǎn)環(huán)境。
若有緊急任務,可要求研發(fā)組直接遞交發(fā)布任務,并在產(chǎn)品組以及研發(fā)組相關(guān)負責人的一致同意后可遞交測試,測試通過后由工程組進而發(fā)布。
五、自動化技術(shù)測試
依據(jù)最新營銷系統(tǒng)的總體特點,相關(guān)研發(fā)人員可充分利用自動化技術(shù)圍繞具體項目實施測試。如圖4所示。
(一)單元測試
單元測試對代碼質(zhì)量有著較高要求,為了增強覆蓋率,測試人員在實際研發(fā)時,應當充分將代碼遞交到指定分支環(huán)境中,并全面掃描代碼,在開發(fā)分支條件下積極開展部署測試作業(yè)。
(二)接口測試
在接口測試過程中,研發(fā)組能夠充分獲取接口文檔,測試人員可從多方面入手開展測試工作,其中,在業(yè)務功能方面可有效判斷場景情況;業(yè)務規(guī)則,明確具體覆蓋度;參數(shù)驗證,符合業(yè)務的規(guī)則標準;異常場景,開展一系列的大數(shù)據(jù)量測試;性能測試,可有效了解相關(guān)資源要求;安全測試下,開啟權(quán)限驗證等。
(三)UI測試
全新的營銷系統(tǒng)由于受到開發(fā)多種因素的影響,造成前端元素定位存在一定誤差,難以正常推進UI測試,由此需要研究人員將其設為后續(xù)的探究目標。
六、測試問題管理
系統(tǒng)管理過程中,詳細記錄有關(guān)測試問題,通過對問題的全面分析,如圖5所示,展現(xiàn)出缺陷關(guān)閉的具體情況,為此,在開展各項測試工作中,以缺陷為目標加以研究,采取科學的解決方式,加強共性缺陷處理,并借助通用組測試組件,以更好地解決缺陷。
為了帶動研發(fā)組積極性,應當制定完整的消缺考核機制,完善消缺計劃,結(jié)合具體情況開展考核,針對表現(xiàn)優(yōu)異的應當加以獎勵,并針對任務未達標人員給予一定懲罰,促使工作人員明確自身職責。
七、結(jié)束語
軟件系統(tǒng)主要是有營銷業(yè)務服務以及營銷數(shù)據(jù)服務等模塊組成,底層環(huán)境則包括云平臺以及數(shù)據(jù)中臺等,并利用物聯(lián)中心強化管理以整合各項數(shù)據(jù),推進營銷業(yè)務的有序開展,并從橫向角度出發(fā)促使各項業(yè)務充分融會貫通,確保業(yè)務數(shù)據(jù)信息得以共同掌握。
綜上,通過從五個不同角度著重探討了中臺以及微服務通信營銷系統(tǒng)的測試方式,可有效展現(xiàn)出通過該測試充分把控系統(tǒng)質(zhì)量,確保系統(tǒng)快速上線。測試時,受到規(guī)模大、單位多等因素的影響,導致過程管控不足,缺乏一定的管理經(jīng)驗,由此需要研發(fā)人員加以深入探索研究,優(yōu)化系統(tǒng)程序,從而確保項目測試的實踐案例得到全面推廣。
作者單位:吳超 廣東億迅科技有限公司
參? 考? 文? 獻
[1]鴉文,陸一.大型信息系統(tǒng)軟件版本管理流程優(yōu)化[J].網(wǎng)絡安全技術(shù)與應用,2021(09)
[2]周昱偉.計算機軟件測試技術(shù)研究[J].電子技術(shù)與軟件工程,2021(17)
[3]趙慶濤,孫上海,張孝虎.微服務架構(gòu)在信息化系統(tǒng)開發(fā)平臺中的應用[J].冶金自動化.2021(S1)
[4]孫婧鑫.Web應用的自動化測試研究[J].電腦與信息技術(shù),2020(05)
[5]李信鵬,劉威,楊智萍,等.電網(wǎng)企業(yè)數(shù)據(jù)中臺方案研究[J].電力信息與通信技術(shù),2020(02)
[6]佟業(yè)新,曲新奎.微服務架構(gòu)中的服務質(zhì)量保障研究[J].計算機系統(tǒng)應用,2019(11)
[7]楊智.一種軟件版本管理模型的設計[J].電子技術(shù)與軟件工程,2019(11)
[8]姜文,劉立康.應用軟件項目的迭代開發(fā)與測試[J].計算機技術(shù)與發(fā)展,2019(04)
[9]朱紅甫.打造企業(yè)數(shù)據(jù)中臺推進企業(yè)智慧運營[J].通信企業(yè)管理,2018(02)
[10]易彤,林茂春.基于關(guān)鍵字驅(qū)動的自動化測試研究與實現(xiàn)[J].電子技術(shù)與軟件工程,2015(05)
[11]劉淵.基于對象狀態(tài)的軟件測試方法分析[J].互聯(lián)網(wǎng)周刊,2022(21):44-46.
[12]楊軍,張媛,甘麗清,等.大規(guī)模項目軟件測試機制研究與應用[J].信息技術(shù),2022(10):142-146+152.
[13]陽紅,車凌,郭萌.軟件測試質(zhì)量評估方法研究[J].電子質(zhì)量,2022(10):1-4.