但曉銘
摘 要:計(jì)算機(jī)軟件測(cè)試是軟件開(kāi)發(fā)和應(yīng)用過(guò)程中必不可少的重要環(huán)節(jié),是確保軟件質(zhì)量的重要手段。因此對(duì)計(jì)算機(jī)軟件測(cè)試技術(shù)進(jìn)行分析研究對(duì)于軟件的開(kāi)發(fā)和應(yīng)用有著重要的指導(dǎo)意義。本文首先對(duì)計(jì)算機(jī)軟件的概念和目的等基本概念進(jìn)行了概述,然后對(duì)現(xiàn)有的計(jì)算機(jī)軟件測(cè)試的技術(shù)和測(cè)試流程進(jìn)行了簡(jiǎn)述,最后對(duì)計(jì)算機(jī)軟件測(cè)試的現(xiàn)狀及存在的問(wèn)題進(jìn)行了分析,期望能夠?yàn)橛?jì)算軟件測(cè)試提供一定的參考。
關(guān)鍵詞:計(jì)算機(jī)軟件;測(cè)試技術(shù);問(wèn)題
目前各個(gè)行業(yè)大量大型的軟件系統(tǒng)的開(kāi)發(fā)和使用量越來(lái)越大,用戶對(duì)軟件質(zhì)量的要求越來(lái)越高,為了避免軟件使用中出現(xiàn)各種問(wèn)題和減小軟件的缺陷,軟件測(cè)試在軟件開(kāi)發(fā)過(guò)程中成為了一項(xiàng)不可或缺的關(guān)鍵環(huán)節(jié)。在軟件發(fā)布和投入使用之前,對(duì)其進(jìn)行測(cè)試,是確保軟件的質(zhì)量重要手段。計(jì)算機(jī)軟件測(cè)試存在于軟件開(kāi)發(fā)的整個(gè)過(guò)程,因此對(duì)計(jì)算機(jī)軟件測(cè)試技術(shù)進(jìn)行研究和分析對(duì)于軟件的開(kāi)發(fā)應(yīng)用具有非常重要的指導(dǎo)意義。
1軟件測(cè)試技術(shù)的概述
1.1軟件測(cè)試的定義
軟件測(cè)試指的是在在軟件設(shè)計(jì)編程完成后,對(duì)軟件的各項(xiàng)性能進(jìn)行測(cè)試,檢驗(yàn)軟件的設(shè)計(jì)、介紹和編碼等是否存在錯(cuò)誤和問(wèn)題,檢驗(yàn)軟件能夠完成預(yù)設(shè)的功能,進(jìn)而對(duì)軟件的功能、性能、可靠性和安全性等各方面做出客觀的評(píng)價(jià)。
1.2軟件測(cè)試的目的
軟件測(cè)試的目的就是及時(shí)的發(fā)現(xiàn)軟件開(kāi)發(fā)中存在的問(wèn)題,并予以改正,從而提高軟件開(kāi)發(fā)的效率和軟件的質(zhì)量,一方面滿足軟件使用者的根本需求,另一方面避免系統(tǒng)開(kāi)發(fā)者時(shí)間和財(cái)力上的浪費(fèi)。
2軟件測(cè)試的原則
2.1及時(shí)性原則
軟件測(cè)試應(yīng)該盡早及時(shí)的進(jìn)行,從能不能滿足用戶的需求為最初的出發(fā)點(diǎn)開(kāi)始軟件的測(cè)試審驗(yàn),避免應(yīng)測(cè)試不及時(shí)引起重新返工的失誤。
2.2全程性測(cè)試原則
全程性測(cè)試原則就是要求軟件測(cè)試應(yīng)用于軟件開(kāi)發(fā)設(shè)計(jì)的整個(gè)過(guò)程,而不單單只在程序完成之后。這是因?yàn)檐浖到y(tǒng)比較復(fù)雜,軟件的開(kāi)發(fā)不是一個(gè)獨(dú)立的單一階段性的工作,而是包含有多個(gè)環(huán)節(jié)的開(kāi)發(fā)過(guò)程,每一個(gè)環(huán)節(jié)都是非常重要的,都有可能出現(xiàn)錯(cuò)誤或存在安全隱患,進(jìn)而或大或小的影響最終的軟件質(zhì)量。
2.3第三方測(cè)試原則
第三方測(cè)試原則指的是軟件開(kāi)發(fā)程序員不能自己檢查自己的程序,要由開(kāi)發(fā)組以外的人員進(jìn)行測(cè)試,這樣獲得的測(cè)試結(jié)果才會(huì)更加的客觀。這是因?yàn)槌绦騿T可能由于自身對(duì)問(wèn)題理解的偏差而引起的錯(cuò)誤,在檢查過(guò)程中如果程序員沒(méi)有得到正確的理解,是難以發(fā)現(xiàn)自身的錯(cuò)誤的。
2.4測(cè)試用例的合理性
測(cè)試用例的合理性指的是在設(shè)計(jì)測(cè)試用例時(shí)要涉及合法的輸入條件和不合法的輸入條件,合法的輸入條件則是指能核實(shí)軟件的正常的輸入條件,而不合法的條件則是指一些異常的和極端的條件,這樣才能實(shí)現(xiàn)軟件測(cè)試的完全性, 發(fā)現(xiàn)更多的錯(cuò)誤。
3軟件測(cè)試技術(shù)策略
根據(jù)測(cè)試技術(shù)是否需要程序運(yùn)行可將測(cè)試技術(shù)劃分為靜態(tài)和動(dòng)態(tài)測(cè)試,根據(jù)測(cè)試技術(shù)能否查找源代碼可將測(cè)試技術(shù)劃分為白盒測(cè)試和黑盒測(cè)試。
3.1靜態(tài)測(cè)試
靜態(tài)測(cè)試也稱為靜態(tài)分析,指的是在不運(yùn)行程序的情況下,人工的對(duì)軟件程序進(jìn)行核實(shí)和分析,包括軟件代碼審查和走查和相關(guān)的技術(shù)評(píng)審,靜態(tài)測(cè)試能夠在軟件開(kāi)發(fā)的整個(gè)全過(guò)程中執(zhí)行。
3.2動(dòng)態(tài)測(cè)試
動(dòng)態(tài)測(cè)試指的是通過(guò)一定的方式運(yùn)行軟件進(jìn)行測(cè)試,基于測(cè)試用例對(duì)實(shí)際的輸出和預(yù)期的輸出進(jìn)行對(duì)比分析,從而檢查和分析程序的運(yùn)行狀態(tài)和結(jié)果。
3.3白盒測(cè)試
白盒測(cè)試是程序員通過(guò)分析軟件程序的內(nèi)部結(jié)構(gòu),設(shè)計(jì)合理的測(cè)試用例,然后對(duì)軟件的內(nèi)部結(jié)構(gòu)和路徑進(jìn)行詳細(xì)的檢查,也被稱為結(jié)構(gòu)測(cè)試。盒子指代的是待測(cè)試軟件,白盒的意思就是盒子是可視的,過(guò)程中測(cè)試者熟悉盒子內(nèi)部的東西以及內(nèi)部的運(yùn)行狀況,白盒測(cè)試技術(shù)能夠全面的了解程序內(nèi)部的工作過(guò)程并獲得測(cè)試結(jié)果,對(duì)該技術(shù)來(lái)說(shuō)最重要的就是軟件測(cè)試用例的設(shè)計(jì)。
3.4黑盒測(cè)試
與白盒測(cè)試相反,黑盒測(cè)試技術(shù)不需要了解程序的內(nèi)部結(jié)構(gòu),側(cè)重的指軟件的外部結(jié)構(gòu),是根據(jù)軟件的需求規(guī)格說(shuō)明書(shū),對(duì)程序的每一個(gè)功能進(jìn)行檢驗(yàn)測(cè)試的分析方法,又稱為功能測(cè)試。為了實(shí)現(xiàn)黑盒測(cè)試行為的量化,常常采用測(cè)試用例,其設(shè)計(jì)方法主要分為等價(jià)類劃分法、錯(cuò)誤推斷法、正交試驗(yàn)設(shè)計(jì)法和邊界值劃分法等。
4軟件測(cè)試的流程
4.1測(cè)試計(jì)劃的制定
測(cè)試進(jìn)行前,為了保證時(shí)間的充足和高質(zhì)量的測(cè)試的完成,必須制定測(cè)試計(jì)劃,就是基于項(xiàng)目開(kāi)發(fā)測(cè)試需求制定的具有指導(dǎo)意義的計(jì)劃安排,通常情況下由負(fù)責(zé)測(cè)試的工作人員進(jìn)行編寫(xiě)。工作內(nèi)容包括對(duì)需求規(guī)格說(shuō)明書(shū)進(jìn)行詳細(xì)的分析,為每個(gè)測(cè)試基元制定相應(yīng)的測(cè)試技術(shù),形成完整系統(tǒng)的測(cè)試計(jì)劃。
4.2測(cè)試用例的設(shè)計(jì)
在軟件的測(cè)試過(guò)程中,測(cè)試技術(shù)常常需要測(cè)試用例的設(shè)計(jì),測(cè)試用例是決定測(cè)試成功與否的關(guān)鍵和基礎(chǔ),因此在測(cè)試前設(shè)計(jì)合理的設(shè)計(jì)用例是必不可少的。主要的工作包括測(cè)試輸入數(shù)據(jù)、步驟執(zhí)行以及預(yù)期輸出等,能夠?qū)y(cè)試的執(zhí)行和測(cè)試結(jié)果的規(guī)劃等具有一定的指導(dǎo)作用。
4.3測(cè)試的執(zhí)行
測(cè)試的執(zhí)行階段主要包括三部分,分別是初測(cè)期、細(xì)測(cè)期和回歸測(cè)試期。初測(cè)的主要目的是測(cè)試軟件的主要功能,進(jìn)而排除主要的障礙,為細(xì)測(cè)奠定良好的基礎(chǔ)。細(xì)測(cè)則就是根據(jù)制定的測(cè)試計(jì)劃和測(cè)試用例,對(duì)軟件的各類功能、性能等等進(jìn)行逐個(gè)詳細(xì)的測(cè)試,有助于發(fā)現(xiàn)各種類型的、程度不一的錯(cuò)誤和問(wèn)題?;貧w測(cè)試指的是在初測(cè)和細(xì)測(cè)問(wèn)題解決,系統(tǒng)穩(wěn)定后,對(duì)已經(jīng)糾正的錯(cuò)誤的進(jìn)一步復(fù)查,確保沒(méi)有出現(xiàn)新的問(wèn)題。
5軟件測(cè)試的現(xiàn)狀
與國(guó)外的測(cè)試技術(shù)的發(fā)展相比,我國(guó)的測(cè)試技術(shù)起步較晚,大多采用試探性的測(cè)試技術(shù),缺乏系統(tǒng)化和產(chǎn)品化的測(cè)試技術(shù),測(cè)試人員的規(guī)模較少,進(jìn)而引起以下幾個(gè)方面的不足。
5.1軟件測(cè)試文檔管理不統(tǒng)一
文檔是軟件測(cè)試重要組成部分,是各種測(cè)試和結(jié)果分析的重要依據(jù)。然而在實(shí)際的測(cè)量中,文檔的水平各不相同,很多文檔的內(nèi)容都不夠豐富、沒(méi)有規(guī)范的要求,而且變更也不及時(shí),這些都嚴(yán)重影響了文檔作用的發(fā)揮。
5.2軟件測(cè)試滯后
通常情況下,大多數(shù)的軟件測(cè)試工作都安排在編碼完成后,這種滯后性的軟件測(cè)試會(huì)導(dǎo)致測(cè)試人員對(duì)需求規(guī)格和整套系統(tǒng)的設(shè)計(jì)不能充分的把握和了解,此外,測(cè)試進(jìn)行的較晚會(huì)導(dǎo)致測(cè)試時(shí)間的不充足,從而限制了軟件的全面性測(cè)試,而導(dǎo)致一些隱患問(wèn)題。
6總結(jié)
計(jì)算機(jī)普及率的增加,促進(jìn)了軟件開(kāi)發(fā)應(yīng)用行業(yè)的發(fā)展,同時(shí)使得于軟件質(zhì)量密切相關(guān)的軟件測(cè)試成為了研究的熱點(diǎn)和難點(diǎn)問(wèn)題。本文就計(jì)算機(jī)軟件開(kāi)發(fā)的概念、目的和原則進(jìn)行了詳細(xì)的介紹,此后對(duì)當(dāng)前的測(cè)試技術(shù)策略進(jìn)行了總結(jié)和說(shuō)明,同時(shí)對(duì)測(cè)試的現(xiàn)狀和存在的問(wèn)題進(jìn)行了分析,測(cè)試的主要問(wèn)題表現(xiàn)在測(cè)試的文檔管理不夠、測(cè)試的介入延遲以及測(cè)試技術(shù)的自動(dòng)化程度不高。因此,在未來(lái)的軟件開(kāi)發(fā)過(guò)程中,將測(cè)試工作的介入時(shí)間提前化、文檔管理規(guī)范化以及測(cè)試技術(shù)自動(dòng)化是工作的重點(diǎn),進(jìn)而更加高效的為軟件的開(kāi)發(fā)服務(wù),提高效益。
參考文獻(xiàn):
[1]羅凱.計(jì)算機(jī)軟件測(cè)試技術(shù)分析[J].電子技術(shù)于軟件工程,2014,5,91.
[2]靳紅勤.計(jì)算機(jī)軟件測(cè)試技術(shù)分析[J].2015,26,206-207.