孫亞楠
摘 要:進(jìn)入21世紀(jì)以來(lái),全球經(jīng)濟(jì)高速發(fā)展,計(jì)算機(jī)軟件技術(shù)已經(jīng)應(yīng)用到各行各業(yè),人們對(duì)軟件開(kāi)發(fā)及其衍生產(chǎn)品的性能要求越來(lái)越高。而隨著軟件開(kāi)發(fā)規(guī)模的增大、復(fù)雜程度的增加,以尋找軟件中的錯(cuò)誤為目的的測(cè)試工作就顯得更加困難。為了盡可能多地找出程序中的錯(cuò)誤,生產(chǎn)出高質(zhì)量的軟件產(chǎn)品,加強(qiáng)測(cè)試工作的組織和管理就顯得尤為重要。本文主要探究軟件的測(cè)試技術(shù)的應(yīng)用及綜合管理。
關(guān)鍵詞:軟件測(cè)試技術(shù);應(yīng)用;綜合管理
隨著現(xiàn)代社會(huì)信息科技智能化水平的飛速發(fā)展,軟件相關(guān)產(chǎn)品已廣泛應(yīng)用于各行各業(yè),與人們工作生活深度融合??梢哉f(shuō),軟件產(chǎn)品質(zhì)量的高低對(duì)推動(dòng)社會(huì)信息化進(jìn)程發(fā)展起著決定性作用。軟件開(kāi)發(fā)項(xiàng)目由于其高度的復(fù)雜性和集成性,在軟件開(kāi)發(fā)過(guò)程中極易產(chǎn)生錯(cuò)誤和缺陷,因此貫穿整個(gè)軟件開(kāi)發(fā)周期的軟件項(xiàng)目測(cè)試,是保障軟件開(kāi)發(fā)質(zhì)量的重要技術(shù)手段,對(duì)提升軟件性能有顯著的促進(jìn)作用。隨著互聯(lián)網(wǎng)+時(shí)代的來(lái)臨,進(jìn)行高效專(zhuān)業(yè)軟件測(cè)試的要求和挑戰(zhàn)日益迫切。
1 大數(shù)據(jù)概念
大數(shù)據(jù)是指無(wú)法在一定時(shí)間范圍內(nèi)用常規(guī)軟件工具進(jìn)行捕捉、管理和處理的數(shù)據(jù)集合,是需要新處理模式才能具有更強(qiáng)的決策力、洞察發(fā)現(xiàn)力和流程優(yōu)化力的海量信息,在運(yùn)行方面具有數(shù)據(jù)流龐大、數(shù)據(jù)種類(lèi)繁多、數(shù)據(jù)價(jià)值量密度較低以及數(shù)據(jù)運(yùn)行和處理的速度極快等基礎(chǔ)特征。
當(dāng)前,我國(guó)大數(shù)據(jù)的應(yīng)用領(lǐng)域已經(jīng)從政府、金融延伸到醫(yī)療、生物、電商、安防等各行各業(yè)。隨著云計(jì)算技術(shù)與應(yīng)用、物聯(lián)網(wǎng)、大數(shù)據(jù)等技術(shù)的不斷發(fā)展,應(yīng)用于各個(gè)領(lǐng)域的大數(shù)據(jù)系統(tǒng)也不斷形成。這種大數(shù)據(jù)系統(tǒng)的系統(tǒng)結(jié)構(gòu)復(fù)雜,數(shù)據(jù)類(lèi)型更加豐富,更有TB級(jí)別的海量數(shù)據(jù)量,要使系統(tǒng)平穩(wěn)運(yùn)行,比起傳統(tǒng)軟件更是需要軟件測(cè)試技術(shù)作為支撐。隨著大數(shù)據(jù)技術(shù)的發(fā)展也逐步形成具有獨(dú)特特征的大數(shù)據(jù)測(cè)試技術(shù)。
2 大數(shù)據(jù)測(cè)試與傳統(tǒng)測(cè)試的比較
傳統(tǒng)軟件測(cè)試是在系統(tǒng)已知的前提下對(duì)從用戶需求提取到的測(cè)試任務(wù)進(jìn)行的測(cè)試,用戶的行為直接影響系統(tǒng)的最終執(zhí)行結(jié)果。傳統(tǒng)軟件測(cè)試最主要的兩種測(cè)試類(lèi)型為功能測(cè)試和性能測(cè)試,都是簡(jiǎn)單的從用戶界面入手,比如12306中注冊(cè)、登錄、下訂單、支付等,可直接使用黑盒測(cè)試方法即可。傳統(tǒng)軟件測(cè)試技術(shù)已經(jīng)比較成熟,也形成了各種配套的自動(dòng)化測(cè)試工具。
軟件測(cè)試類(lèi)型很多,包括功能測(cè)試、性能測(cè)試、安裝與卸載測(cè)試、兼容性測(cè)試、健壯性測(cè)試、文檔測(cè)試、回歸測(cè)試等等。大數(shù)據(jù)測(cè)試和傳統(tǒng)軟件測(cè)試相比,主要測(cè)試類(lèi)型都是功能測(cè)試和性能測(cè)試,但在測(cè)試目的和測(cè)試流程存在一定差異,主要表現(xiàn)在大數(shù)據(jù)測(cè)試更多的是去驗(yàn)證其數(shù)據(jù)處理而不是驗(yàn)證單一的功能。
3 軟件測(cè)試常用方法
1)靜態(tài)測(cè)試和動(dòng)態(tài)測(cè)試。靜態(tài)測(cè)試方法是指對(duì)靜態(tài)的軟件代碼進(jìn)行分析和檢測(cè),在實(shí)際的測(cè)試過(guò)程中,并不需要軟件運(yùn)行起來(lái),而是單純的只對(duì)軟件的各種文檔進(jìn)行分析檢測(cè)。故而,靜態(tài)測(cè)試方法通常只應(yīng)用于軟件開(kāi)發(fā)的過(guò)程中,其主要測(cè)試手段是人工測(cè)試和計(jì)算機(jī)輔助測(cè)試。動(dòng)態(tài)測(cè)試方法是指對(duì)運(yùn)行過(guò)程中的軟件進(jìn)行檢測(cè),其測(cè)試原理是通過(guò)檢測(cè)軟件運(yùn)行過(guò)程中的某些動(dòng)態(tài)行為,來(lái)判斷軟件的測(cè)試結(jié)果是否符合標(biāo)準(zhǔn)。動(dòng)態(tài)測(cè)試的特點(diǎn)就是必須確保軟件的完整運(yùn)行。另外,需要注意的一點(diǎn)是在實(shí)際操作過(guò)程中,除了被測(cè)試軟件,軟件測(cè)試中所涉及的各種數(shù)據(jù)也會(huì)影響動(dòng)態(tài)測(cè)試結(jié)果。
2)白盒測(cè)試和黑盒測(cè)試。白盒測(cè)試也稱(chēng)為邏輯驅(qū)動(dòng)測(cè)試或結(jié)構(gòu)測(cè)試,其工作原理是對(duì)軟件系統(tǒng)的內(nèi)部結(jié)構(gòu)進(jìn)行測(cè)試,對(duì)軟件系統(tǒng)的運(yùn)行狀態(tài)進(jìn)行評(píng)估,根據(jù)系統(tǒng)不同區(qū)域反饋的測(cè)試信息得出最終檢測(cè)結(jié)果。白盒測(cè)試主要包括:基本路徑測(cè)試法、邏輯覆蓋法、靜態(tài)結(jié)構(gòu)分析法和代碼檢查法等。白盒測(cè)試技術(shù)需要測(cè)試人員對(duì)被測(cè)試軟件的系統(tǒng)內(nèi)部構(gòu)造有足夠的了解,能夠在實(shí)際的檢測(cè)過(guò)程中正確分析軟件的檢測(cè)數(shù)據(jù)。與其他測(cè)試技術(shù)相比,白盒測(cè)試技術(shù)最大的優(yōu)勢(shì)就是測(cè)試速度快且可以促進(jìn)軟件的運(yùn)行效率。
黑盒測(cè)試的工作原理是通過(guò)對(duì)被檢測(cè)軟件的功能進(jìn)行測(cè)試,來(lái)判斷該軟件系統(tǒng)是否能夠正常運(yùn)行。在它的實(shí)際操作及應(yīng)用過(guò)程中,測(cè)試人員無(wú)需考慮軟件的內(nèi)部架構(gòu),只需對(duì)其輸入輸出數(shù)據(jù)進(jìn)行分析。黑盒測(cè)試被廣泛應(yīng)用于軟件系統(tǒng)的界面設(shè)計(jì)和功能測(cè)試方面,主要包括等價(jià)類(lèi)劃分、錯(cuò)誤推測(cè)、邊界值分析、因果圖等方法。黑盒測(cè)試的技術(shù)優(yōu)勢(shì)是:操作和設(shè)計(jì)代碼簡(jiǎn)單且有利于實(shí)現(xiàn)軟件的功能。
4 強(qiáng)化軟件測(cè)試管理的有效對(duì)策
1)加強(qiáng)軟件測(cè)試過(guò)程的有效管理。在軟件測(cè)試需求收集的過(guò)程中,應(yīng)當(dāng)及時(shí)掌握軟件測(cè)試對(duì)應(yīng)的具體對(duì)象以及實(shí)際范圍。軟件測(cè)試人員要加強(qiáng)與項(xiàng)目開(kāi)發(fā)人員的有效溝通與合作,從而在規(guī)定時(shí)間內(nèi)收集和整理好相關(guān)信息和資料,繼而通過(guò)深入研究軟件測(cè)試各環(huán)節(jié)的根本性需求,便于將軟件測(cè)試內(nèi)容具體化和細(xì)分化,確保軟件測(cè)試工作的有效性和可行性。軟件測(cè)試計(jì)劃制定過(guò)程的核心工作是結(jié)合軟件測(cè)試需求制定軟件測(cè)試方案(包括軟件測(cè)試環(huán)境分析、進(jìn)度分析以及風(fēng)險(xiǎn)分析等),而軟件測(cè)試執(zhí)行過(guò)程則要兼顧軟件測(cè)試實(shí)施和軟件測(cè)試監(jiān)控兩項(xiàng)工作。另外,在軟件測(cè)試缺陷跟蹤過(guò)程中,必須在盡可能短的時(shí)間內(nèi)完成缺陷報(bào)告工作,并持續(xù)跟進(jìn)。
2)加強(qiáng)軟件測(cè)試的監(jiān)控管理。以下為軟件測(cè)試中兩點(diǎn)典型問(wèn)題的監(jiān)控管理:(1)軟件測(cè)試中思維定式問(wèn)題的監(jiān)控管理。軟件測(cè)試人員反復(fù)編制和創(chuàng)新測(cè)試用例,可有效避免對(duì)自己過(guò)于自信產(chǎn)生慣性思維定式,從而在增加軟件測(cè)試次數(shù)的基礎(chǔ)上有效提升缺陷防范率。(2)軟件測(cè)試中定位效應(yīng)問(wèn)題的監(jiān)控管理。項(xiàng)目管理人員必須有效組織軟件測(cè)試人員全面實(shí)施軟件測(cè)試用例,并加強(qiáng)交叉式軟件測(cè)試,對(duì)那些已經(jīng)通過(guò)測(cè)試的功能,二次測(cè)試時(shí)仍需認(rèn)真測(cè)試,避免因疏于防范,遺漏一些潛在的缺陷,這樣才能有效地解決問(wèn)題。
3)加強(qiáng)軟件測(cè)試的配置管理。軟件測(cè)試需要進(jìn)行充分的測(cè)試準(zhǔn)備,需要科學(xué)規(guī)范的過(guò)程管理,有效的配置管理對(duì)跟蹤和提高測(cè)試質(zhì)量和效率十分重要。在軟件測(cè)試的配置管理中,我們重點(diǎn)考慮如下四個(gè)問(wèn)題:(1)選取適合的配置管理工具,提供軟件測(cè)試的效率;(2)將配置項(xiàng)作為一個(gè)整體進(jìn)行配置管理,避免配置項(xiàng)相關(guān)的基礎(chǔ)數(shù)據(jù)、配置文件未進(jìn)行配置管理;(3)增加發(fā)布前驗(yàn)收測(cè)試環(huán)節(jié),避免修復(fù)的缺陷又重現(xiàn);(4)明確角色與職責(zé),避免缺陷無(wú)人認(rèn)領(lǐng)互相推諉的現(xiàn)象。
5 大數(shù)據(jù)測(cè)試面臨的挑戰(zhàn)
與傳統(tǒng)軟件測(cè)試相比,大數(shù)據(jù)的多樣性給從事大數(shù)據(jù)測(cè)試的軟件測(cè)試工程師帶來(lái)了新的挑戰(zhàn),可能面臨下面幾個(gè)挑戰(zhàn)。
1)自動(dòng)化。當(dāng)前傳統(tǒng)的軟件測(cè)試功能測(cè)試還是手動(dòng)測(cè)試居多,在高回歸的情況下才會(huì)借助selenium、UFT等工具實(shí)現(xiàn)自動(dòng)化。因大數(shù)據(jù)系統(tǒng)的數(shù)據(jù)量巨大、速度快、數(shù)據(jù)類(lèi)型多、數(shù)據(jù)價(jià)值低等特點(diǎn),借助測(cè)試工具實(shí)現(xiàn)自動(dòng)化是從事大數(shù)據(jù)測(cè)試必備的技術(shù),但當(dāng)前市場(chǎng)上的自動(dòng)化測(cè)試工具并不具備處理異常的能力,意味著現(xiàn)有測(cè)試工具可能并不完全適用,這就要求測(cè)試工程師需要自己編寫(xiě)合適的測(cè)試工具,編碼能力將是大數(shù)據(jù)測(cè)試工程師的必備技能。
2)虛擬化。當(dāng)前業(yè)內(nèi)大規(guī)模使用虛擬化技術(shù),但虛擬機(jī)的延遲有可能造成大數(shù)據(jù)實(shí)時(shí)測(cè)試處理的異常。
3)海量數(shù)據(jù)集。大數(shù)據(jù)系統(tǒng)需要驗(yàn)證的數(shù)據(jù)量往往是TB級(jí)別的,并且要求處理的速度更快,對(duì)這類(lèi)系統(tǒng)進(jìn)行測(cè)試需要有效的自動(dòng)化測(cè)試手段。
總之,大數(shù)據(jù)分析已經(jīng)毫無(wú)爭(zhēng)議地成為信息技術(shù)發(fā)展趨勢(shì)和熱點(diǎn),廣泛被工業(yè)界和學(xué)術(shù)界熱推。目前針對(duì)大數(shù)據(jù)測(cè)試的研究同其設(shè)計(jì)開(kāi)發(fā)的研究相比相對(duì)薄弱。但隨著大數(shù)據(jù)工程和數(shù)據(jù)分析逐步進(jìn)入新的階段,大數(shù)據(jù)測(cè)試將成為必然,也必定成為未來(lái)的一個(gè)熱門(mén)的職業(yè)方向。本項(xiàng)目對(duì)大數(shù)據(jù)測(cè)試的相關(guān)理論、常用測(cè)試方法進(jìn)行研究,后續(xù)將給出大數(shù)據(jù)技術(shù)與應(yīng)用專(zhuān)業(yè)《軟件測(cè)試基礎(chǔ)》課程標(biāo)準(zhǔn),為大數(shù)據(jù)測(cè)試人才培養(yǎng)做好準(zhǔn)備。
參考文獻(xiàn)
[1]王可平,陳陽(yáng),柳園園.軟件測(cè)試管理自動(dòng)化解決方案與實(shí)踐[J].指揮信息系統(tǒng)與技術(shù),2010,1(4):82-86.
[2]倪紅英,黃芙平,周弘斌.國(guó)內(nèi)外航空軟件測(cè)試比較[J].指揮信息系統(tǒng)與技術(shù),2015,6(6):8-12.