張會(huì)平
軟件測(cè)試概述
目前,關(guān)于系統(tǒng)軟件性能測(cè)試的具體定義有兩種不同的說(shuō)法,一種觀(guān)點(diǎn)認(rèn)為,軟件性能測(cè)試是通過(guò)測(cè)試技術(shù)手段,對(duì)某一系統(tǒng)主機(jī)進(jìn)行測(cè)試,判斷該機(jī)的系統(tǒng)功能是否已完全滿(mǎn)足國(guó)家規(guī)定的測(cè)試需求,或者可以發(fā)現(xiàn)系統(tǒng)預(yù)期測(cè)試結(jié)果和實(shí)際測(cè)試結(jié)果之間的巨大差異。另外一種觀(guān)點(diǎn)是,軟件中的測(cè)試程序是一個(gè)持續(xù)執(zhí)行測(cè)試程序的過(guò)程,目的是快速發(fā)現(xiàn)測(cè)試程序中的錯(cuò)誤。總體上講,軟件功能測(cè)試是通過(guò)選擇合適的軟件測(cè)試技術(shù)手段,對(duì)一個(gè)應(yīng)用軟件系統(tǒng)進(jìn)行功能分析和檢驗(yàn),發(fā)現(xiàn)實(shí)際檢驗(yàn)結(jié)果與用戶(hù)期望檢驗(yàn)結(jié)果之間存在著很大的差異,并對(duì)其功能特征進(jìn)行綜合評(píng)價(jià)。
軟件測(cè)試方法介紹
軟件測(cè)試方法有很多種,比較常見(jiàn)的軟件測(cè)試方法主要有錯(cuò)誤等價(jià)法和分類(lèi)法、場(chǎng)景法、分類(lèi)法、場(chǎng)景法等,有時(shí)已經(jīng)會(huì)實(shí)際使用會(huì)遇到的軟件測(cè)試方法主要有錯(cuò)誤邊界值和錯(cuò)誤判定時(shí)間表,還有可能包括在不經(jīng)常使用時(shí)會(huì)遇到的正交函數(shù)排列演算法和軟件測(cè)試中的大綱安排。其中對(duì)等價(jià)函數(shù)類(lèi)屬性劃分、邊界值屬性分析、判定時(shí)間表等方法屬于黑盒的測(cè)試方法;只有測(cè)試功能軟件穩(wěn)定與否才能完全滿(mǎn)足國(guó)家規(guī)定的測(cè)試要求進(jìn)行功能檢測(cè),其主要方法是測(cè)試軟件功能確認(rèn)以及測(cè)試階段。白盒子驅(qū)動(dòng)測(cè)試也可以稱(chēng)為系統(tǒng)結(jié)構(gòu)條件測(cè)試或內(nèi)部邏輯系統(tǒng)驅(qū)動(dòng)條件測(cè)試,是基于驅(qū)動(dòng)測(cè)試的整個(gè)產(chǎn)品代碼和測(cè)試路徑,以及條件的驅(qū)動(dòng)測(cè)試,通過(guò)一個(gè)測(cè)試程序來(lái)檢測(cè)一個(gè)產(chǎn)品的內(nèi)部系統(tǒng)性能,檢驗(yàn)測(cè)試程序代碼中的所有路徑條件是否完全能夠按照測(cè)試要求按時(shí)完成,但是它不會(huì)對(duì)功能進(jìn)行測(cè)試,主要用于軟件驗(yàn)證。
軟件測(cè)試的策略分析
一種軟件系統(tǒng)測(cè)試方法策略與其他軟件系統(tǒng)測(cè)試方法不同,軟件系統(tǒng)測(cè)試方法策略不僅僅是指對(duì)一個(gè)軟件系統(tǒng)進(jìn)行性能測(cè)試的特定測(cè)試方法,而軟件測(cè)試方法策略則是指針對(duì)不同階段的軟件測(cè)試方法如何選擇,以及針對(duì)不同階段的測(cè)試方法應(yīng)如何正確合理地配置測(cè)試方法。當(dāng)我們掌握了不同的測(cè)試方法后,我們應(yīng)該如何將它應(yīng)用到一個(gè)具體的系統(tǒng)測(cè)試項(xiàng)目中,這是非常需要自己制定一套相關(guān)的測(cè)試策略,例如,在單元測(cè)試中,我們應(yīng)該盡量選擇技術(shù)質(zhì)量評(píng)審的方法,在功能集成測(cè)試階段,我們應(yīng)該盡量選擇測(cè)試三明治法,在進(jìn)行系統(tǒng)功能測(cè)試時(shí),我們應(yīng)該盡量選擇一種白盒式的測(cè)試方法來(lái)制定系統(tǒng)的相應(yīng)測(cè)試用例,在測(cè)試管理策略的制定任務(wù)或者測(cè)試功能制定是否要指導(dǎo)系統(tǒng)測(cè)試管理工作是否順利。
軟件測(cè)試分類(lèi)
上面已經(jīng)詳細(xì)講過(guò)了,按照測(cè)試軟件的測(cè)試方法分類(lèi),可以將其分為黑盒軟件測(cè)試和兩種白盒軟件測(cè)試。假如沒(méi)有靜態(tài)檢查測(cè)試軟件所指的不僅僅是沒(méi)有實(shí)際運(yùn)行被檢驗(yàn)的測(cè)試軟件,而僅僅是靜態(tài)檢查被測(cè)軟件的應(yīng)用程序代碼、界面或測(cè)試文檔等信息,然后才能發(fā)現(xiàn)錯(cuò)誤的測(cè)試過(guò)程。其主要測(cè)試包括源代碼編寫(xiě)測(cè)試、界面設(shè)計(jì)測(cè)試和用戶(hù)文檔管理測(cè)試。碼檢查測(cè)試主要是通過(guò)對(duì)被測(cè)軟件的功能檢查,判斷其功能是否符合國(guó)家規(guī)定的代碼標(biāo)準(zhǔn)和技術(shù)要求,界面分析測(cè)試主要是對(duì)被測(cè)軟件的實(shí)際操作界面和用戶(hù)需求中的軟件界面的具體要求進(jìn)行分析比較,文檔檢查測(cè)試主要目的是對(duì)軟件用戶(hù)手冊(cè)和實(shí)際需求使用說(shuō)明等資料進(jìn)行文檔檢查,以檢驗(yàn)這些文件是否能滿(mǎn)足用戶(hù)的實(shí)際使用需要。軟件動(dòng)態(tài)輸入測(cè)試軟件是指在實(shí)際運(yùn)行中運(yùn)行被驅(qū)動(dòng)的測(cè)試軟件,通過(guò)測(cè)試結(jié)果數(shù)據(jù)的動(dòng)態(tài)輸入輸出量準(zhǔn)確判斷軟件輸出測(cè)試結(jié)果與用戶(hù)期望的實(shí)際輸出測(cè)試結(jié)果之間的巨大差異。另外,如果按照系統(tǒng)測(cè)試階段的不同劃分,軟件系統(tǒng)測(cè)試又認(rèn)為可以分為單元測(cè)試、集成軟件測(cè)試、確認(rèn)錯(cuò)誤測(cè)試、軟件系統(tǒng)優(yōu)化測(cè)試等十幾種類(lèi)型。
軟件測(cè)試策略
在基本掌握了軟件測(cè)試方法的不同類(lèi)型后,基本掌握了軟件測(cè)試方法的一般方法,策略方案就是在基本掌握了軟件測(cè)試方法后,根據(jù)什么時(shí)間、何種任務(wù)點(diǎn)應(yīng)該采用哪種軟件測(cè)試方法或進(jìn)行測(cè)試組合來(lái)制定軟件測(cè)試策略方案。這篇論文的主要內(nèi)容就是針對(duì)不同軟件測(cè)試階段不同軟件開(kāi)發(fā)測(cè)試者進(jìn)行策略分析的簡(jiǎn)要案例分析。
☆ 三階段的單元測(cè)試。通常,單元測(cè)試是對(duì)軟件的基本工作構(gòu)成功能單元,如某項(xiàng)工作模塊、某項(xiàng)工作過(guò)程等組件,屬于軟件動(dòng)態(tài)單元測(cè)試的一類(lèi),是軟件動(dòng)態(tài)單元測(cè)試的一類(lèi),是軟件動(dòng)態(tài)單元測(cè)試的基礎(chǔ)和關(guān)鍵。單元測(cè)試的工作目的主要是通過(guò)對(duì)專(zhuān)業(yè)軟件內(nèi)部開(kāi)發(fā)人員的設(shè)計(jì)和軟件編碼的深入了解,借助軟件開(kāi)發(fā)單元測(cè)試系統(tǒng)驅(qū)動(dòng)軟件模塊或充電樁驅(qū)動(dòng)模塊技術(shù),實(shí)現(xiàn)單元測(cè)試自動(dòng)化,一般由內(nèi)部編程人員手工完成。單位測(cè)試第一階段主要測(cè)試所用的靜態(tài)測(cè)試方法,相對(duì)來(lái)說(shuō)只是一個(gè)白盒式的測(cè)試方法,首先通過(guò)靜態(tài)運(yùn)行檢查測(cè)試代碼,然后通過(guò)動(dòng)態(tài)檢查運(yùn)行測(cè)試代碼,檢查測(cè)試軟件實(shí)際的動(dòng)態(tài)運(yùn)行測(cè)試結(jié)果。
☆ 集成電路測(cè)試階段。綜合系統(tǒng)測(cè)試過(guò)程是指在某一軟件組成系統(tǒng)內(nèi)進(jìn)行的一項(xiàng)測(cè)試工作過(guò)程,其目的主要是及時(shí)地檢查各軟件組成單位之間的各個(gè)軟件接口結(jié)構(gòu)是否正確,從而對(duì)構(gòu)成系統(tǒng)各組成部分的結(jié)構(gòu)是否合理。綜合系統(tǒng)測(cè)試階段的測(cè)驗(yàn)策略主要分為自底到頂向下和自底向上向下兩種測(cè)試策略,具體針對(duì)該項(xiàng)目采用哪種測(cè)試策略,則需要根據(jù)實(shí)際集成測(cè)試項(xiàng)目的實(shí)際情況,自行制定測(cè)試計(jì)劃,然后在單元測(cè)試模塊或系統(tǒng)軟件中的單元模塊經(jīng)過(guò)多次組合,并集合運(yùn)行成為系統(tǒng)的測(cè)試過(guò)程中,同時(shí)還需要對(duì)所組合形成的整個(gè)系統(tǒng)功能進(jìn)行一次運(yùn)行性能檢驗(yàn),判斷所組合形成的整個(gè)系統(tǒng)功能是否完全滿(mǎn)足要求,其中各組成部分設(shè)計(jì)是否正確合理。
☆ 確認(rèn)為試驗(yàn)階段。在單元測(cè)試開(kāi)發(fā)階段,往往只能及時(shí)地確定各軟件單元局部測(cè)試的正確性,軟件單元測(cè)試模塊之間的復(fù)雜接口問(wèn)題往往不能及時(shí)得到解決。而且由于這種集成測(cè)試可以直接將不同的測(cè)試模塊相互獨(dú)立地連接起來(lái),形成完整的測(cè)試程序。如果測(cè)試軟件滿(mǎn)足了我們的客戶(hù)所需的所有測(cè)試軟件,那么軟件測(cè)試的主要步驟應(yīng)該包括:首先在進(jìn)行測(cè)試前,對(duì)此測(cè)試的基本準(zhǔn)則進(jìn)行了仔細(xì)的確認(rèn),也就是說(shuō)要達(dá)到什么樣的測(cè)試要求,才能算出合格的測(cè)試,在這次測(cè)試中我們要特別注意哪些基本問(wèn)題。另外,要對(duì)所開(kāi)發(fā)的應(yīng)用軟件的系統(tǒng)配置性能進(jìn)行嚴(yán)格的審核性評(píng)估,以檢驗(yàn)其配置是否達(dá)到合格性測(cè)試標(biāo)準(zhǔn)。
☆ 系統(tǒng)進(jìn)入測(cè)試階段。系統(tǒng)測(cè)試檢驗(yàn)是一種全面的系統(tǒng)測(cè)試,是對(duì)系統(tǒng)在應(yīng)用軟件中的所有系統(tǒng)組件進(jìn)行重新設(shè)計(jì)的系統(tǒng)檢測(cè),確保在此之前所有的系統(tǒng)測(cè)試都能滿(mǎn)足系統(tǒng)測(cè)試中的要求,而系統(tǒng)測(cè)試中的每一部分都已完成了合理的測(cè)試集成,無(wú)論是在系統(tǒng)功能、配置或系統(tǒng)結(jié)構(gòu)上,都必須符合系統(tǒng)測(cè)試的要求。
常用軟件測(cè)試方法
白盒測(cè)試與黑盒測(cè)試
二者是同屬于系統(tǒng)動(dòng)態(tài)性能測(cè)試的應(yīng)用軟件,其區(qū)別主要是側(cè)重點(diǎn)不同。白盒子軟件測(cè)試版主要關(guān)注的是細(xì)分軟件的各個(gè)細(xì)分功能結(jié)構(gòu),黑盒軟件測(cè)試版則集中在細(xì)分軟件的細(xì)分功能上。白盒子軟件測(cè)試系統(tǒng)是專(zhuān)門(mén)讓軟件測(cè)試人員深入了解軟件程序的基本邏輯結(jié)構(gòu)和程序?qū)崿F(xiàn)操作過(guò)程的,測(cè)試人員在軟件設(shè)計(jì)中經(jīng)常會(huì)根據(jù)設(shè)計(jì)者的思想和軟件設(shè)計(jì)中的功能要求,或者自動(dòng)選擇一套涵蓋整個(gè)軟件全部編程邏輯設(shè)計(jì)路徑的測(cè)試用例來(lái)綜合測(cè)試整個(gè)軟件功能,以確定整個(gè)軟件功能是否可靠。在測(cè)試這個(gè)類(lèi)的實(shí)現(xiàn)方式中,測(cè)試用例的基本邏輯信息覆蓋率越高,那么在進(jìn)行測(cè)試時(shí),效果越好。黑盒子驗(yàn)證測(cè)試并不需要保證測(cè)試人員完全理解軟件體系結(jié)構(gòu)和系統(tǒng)實(shí)現(xiàn)是如何運(yùn)作的,只是需要確保測(cè)試人員能夠按照所有者提供的軟件說(shuō)明書(shū)要求進(jìn)行軟件功能驗(yàn)證測(cè)試。這一功能測(cè)試的實(shí)現(xiàn)方式更多的是強(qiáng)調(diào)能夠驗(yàn)證軟件內(nèi)部的功能結(jié)構(gòu)是否完整,不同的軟件功能之間是否可以交叉使用,能否很好地滿(mǎn)足不同用戶(hù)的需求等。對(duì)于這兩種測(cè)試應(yīng)用方式,測(cè)試用例的選擇對(duì)測(cè)試后的結(jié)果是否有直接的影響,如果測(cè)試用例的選擇不當(dāng),會(huì)使測(cè)試結(jié)果很難反映應(yīng)用程序的基本特性,也不利于企業(yè)軟件開(kāi)發(fā)產(chǎn)品的技術(shù)改進(jìn)和流程完善。
靜態(tài)測(cè)試與動(dòng)態(tài)測(cè)試
按照軟件測(cè)試時(shí)間和軟件正在運(yùn)行的系統(tǒng)狀態(tài)不同,還可以將測(cè)試軟件中的測(cè)試狀態(tài)分為系統(tǒng)靜態(tài)測(cè)試和軟件動(dòng)態(tài)兩類(lèi)。靜態(tài)軟件測(cè)試主要是指用來(lái)對(duì)企業(yè)軟件開(kāi)發(fā)應(yīng)用過(guò)程中需要用到的軟件文檔、數(shù)據(jù)、相關(guān)的技術(shù)規(guī)范、實(shí)際應(yīng)用代碼等信息進(jìn)行靜態(tài)測(cè)試數(shù)據(jù)分析,這種測(cè)試分析方式并不一定要求所有軟件都正常運(yùn)行。具體來(lái)說(shuō),測(cè)試文檔的內(nèi)容主要是:與企業(yè)軟件開(kāi)發(fā)應(yīng)用相關(guān)的測(cè)試文檔內(nèi)容是否統(tǒng)一,并且能夠理解并執(zhí)行應(yīng)用;是否已經(jīng)統(tǒng)一地討論了與軟件開(kāi)發(fā)應(yīng)用有關(guān)的測(cè)試文檔內(nèi)容,并最終作出一致的測(cè)試決定;開(kāi)發(fā)應(yīng)用過(guò)程所需使用的行業(yè)規(guī)范和技術(shù)標(biāo)準(zhǔn)體系是否可行和完善;如何利用開(kāi)發(fā)相關(guān)的測(cè)試工具,對(duì)企業(yè)軟件開(kāi)發(fā)代碼的基本功能、控制、數(shù)據(jù)處理流程、軟件程序結(jié)構(gòu)和操作復(fù)雜性等環(huán)節(jié)進(jìn)行測(cè)試等等。在應(yīng)用程序運(yùn)行處理過(guò)程中,對(duì)軟件執(zhí)行的整個(gè)或部分內(nèi)容的執(zhí)行處理行為,以及軟件執(zhí)行處理的結(jié)果進(jìn)行實(shí)時(shí)測(cè)試和動(dòng)態(tài)分析。
結(jié)論
總之,無(wú)論在現(xiàn)階段,還是在國(guó)外軟件工程測(cè)試技術(shù)發(fā)展的情況下,軟件工程測(cè)試相關(guān)工作都將進(jìn)一步向前邁進(jìn),并不斷向前推進(jìn)。今后,軟件開(kāi)發(fā)測(cè)試的工作重點(diǎn)將逐漸轉(zhuǎn)向以數(shù)據(jù)精確性和數(shù)據(jù)完整性測(cè)試用戶(hù)需求為中心的方向,而軟測(cè)試的測(cè)試人員和應(yīng)用程序開(kāi)發(fā)人員將會(huì)逐漸形成相互合作的伙伴關(guān)系。伴隨著現(xiàn)代信息網(wǎng)絡(luò)技術(shù)和應(yīng)用軟件技術(shù)的飛速發(fā)展,軟件質(zhì)量測(cè)試方法和軟件測(cè)試管理策略將會(huì)在科學(xué)上得到更廣泛的應(yīng)用和更廣泛的應(yīng)用,并受到越來(lái)越多的軟件企業(yè)的重視。
參考文獻(xiàn):
[1]姜文,劉立康.應(yīng)用軟件版本升級(jí)測(cè)試研究[J].微型電腦應(yīng)用,2021,37(07):5-8+12.
[2]王華.探索式軟件測(cè)試分析方法研究[J].電子技術(shù)與軟件工程,2021(13):50-51.
[3]趙旭瑞.自動(dòng)化測(cè)試方法在目標(biāo)識(shí)別軟件中的應(yīng)用[J].電子世界,2021(12):176-177.
[4]郭佳,金鑫,鄧煜.嵌入式軟件PIL自動(dòng)化測(cè)試技術(shù)研究[J].汽車(chē)實(shí)用技術(shù),2021,46(12):64-67+74.