趙瑋
摘 要:隨著科學(xué)技術(shù)的發(fā)展,計(jì)算機(jī)的運(yùn)用也越來(lái)越普及,計(jì)算機(jī)運(yùn)用中最為重要的就是軟件的開(kāi)發(fā)。為了滿(mǎn)足人們生活和工作的需要,各種類(lèi)型的軟件不斷被開(kāi)發(fā)出來(lái),這些軟件是否適合人們使用,需要專(zhuān)業(yè)權(quán)威的檢測(cè)過(guò)程來(lái)進(jìn)行評(píng)測(cè)。因此,黑河測(cè)試技術(shù)已經(jīng)得到廣泛應(yīng)用,軟件測(cè)試的重要性也日益凸顯出來(lái),受到人們的重視。黑盒測(cè)試方法作為軟件測(cè)試中的重要測(cè)試方法,在軟件測(cè)試中發(fā)揮著重要的作用,利用黑盒測(cè)試方法研究軟件測(cè)試中的問(wèn)題,提出有效的測(cè)試策略,能夠?yàn)檐浖y(cè)試提供有力的技術(shù)支持,具有重要的理論價(jià)值和實(shí)踐意義。
關(guān)鍵詞:黑盒測(cè)試;軟件測(cè)試;策略研究與實(shí)踐
中圖分類(lèi)號(hào): TP311.5 ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼: A ? ? ? ? ? ?文章編號(hào): 1673-1069(2017)01-144-2
1 ?概述
隨著人們對(duì)計(jì)算機(jī)應(yīng)用的越來(lái)越普遍,人們對(duì)軟件質(zhì)量的要求也在不斷地提高。軟件測(cè)試是在規(guī)定的條件下對(duì)程序進(jìn)行操作,發(fā)現(xiàn)軟件缺陷,評(píng)價(jià)軟件質(zhì)量,進(jìn)而提高軟件質(zhì)量的一個(gè)過(guò)程,它的實(shí)踐需要制定一定的策略,選擇合適的測(cè)試策略,能讓測(cè)試工作事半功倍。本文就黑盒測(cè)試方法研究軟件測(cè)試策略,分析實(shí)踐中存在的各種問(wèn)題,為軟件測(cè)試提供有力的技術(shù)支持。目前常用的比較成熟的黑盒測(cè)試的方法主要有:等價(jià)類(lèi)劃分法、邊界值分析法、因果圖法和錯(cuò)誤推測(cè)法。下面對(duì)這幾種方法加以介紹并指出其優(yōu)缺點(diǎn)。
2 ?傳統(tǒng)軟件測(cè)試方法的局限性
在系統(tǒng)和驗(yàn)收測(cè)試過(guò)程中,被測(cè)對(duì)象都是功能已經(jīng)實(shí)現(xiàn),即將交付和發(fā)布的軟件,所以一般都是通過(guò)黑盒測(cè)試方法來(lái)對(duì)軟件進(jìn)行功能測(cè)試、性能測(cè)試、接口測(cè)試以及其他類(lèi)型的測(cè)試。黑盒測(cè)試中的一些方法如等價(jià)類(lèi)劃分法、錯(cuò)誤推測(cè)法和邊界值分析法都可以取得非常好的效果。但是由于黑盒測(cè)試的局限性,它不能遍歷所有的輸入和輸出,不能直接對(duì)特定程序段進(jìn)行測(cè)試,有可能遺漏錯(cuò)誤。如果在測(cè)試用例設(shè)計(jì)之前, 未采用宏觀測(cè)試策略進(jìn)行規(guī)劃,測(cè)試就會(huì)陷入一個(gè)死區(qū),局限在細(xì)節(jié)中,導(dǎo)致測(cè)試用例分布不均勻,遺漏較多的重要信息,黑盒測(cè)試方法就無(wú)法發(fā)揮其優(yōu)勢(shì)。
在軟件測(cè)試中,已經(jīng)形成了很多模型,各種模型的實(shí)施都要通過(guò)具體的測(cè)試用例來(lái)實(shí)現(xiàn)。本文在指導(dǎo)測(cè)試用例的宏觀設(shè)計(jì)和實(shí)施方法上提出了一些比較實(shí)用性的測(cè)試策略,以此來(lái)提高整個(gè)測(cè)試工作的效率。
3 ?軟件測(cè)試策略分析
軟件測(cè)試策略包括測(cè)試觀點(diǎn)、測(cè)試方法、測(cè)試用例和測(cè)試工具等多方面內(nèi)容,這些因素在一定程度上影響著測(cè)試結(jié)果和測(cè)試進(jìn)度。對(duì)這些因素的研究和改進(jìn)措施的提出可以有效地提高測(cè)試結(jié)果的有效性,具體體現(xiàn)在以下幾個(gè)方面:通過(guò)對(duì)測(cè)試用例的預(yù)期分布進(jìn)行合理的分析,可以提高測(cè)試的準(zhǔn)確性;從多樣化的角度設(shè)計(jì)測(cè)試用例,可以從多個(gè)方面發(fā)現(xiàn)系統(tǒng)中存在的缺陷;通過(guò)對(duì)測(cè)試人員進(jìn)行合理分配,可以最大限度地提高測(cè)試效率。
3.1 矩形分布的測(cè)試策略
一個(gè)軟件的測(cè)試用例集是無(wú)限的,所以只能根據(jù)某些原則來(lái)選擇具有代表性的用例來(lái)進(jìn)行測(cè)試。針對(duì)大型軟件,可能需要使用數(shù)以萬(wàn)計(jì)的測(cè)試用例來(lái)進(jìn)行充分測(cè)試,人力成本和時(shí)間成本的投入都較大,因此,如何選取有效的測(cè)試策略來(lái)提高測(cè)試效果是需要重視的問(wèn)題。
軟件規(guī)模越小,復(fù)雜性越低,關(guān)聯(lián)的因素也會(huì)越小,反之,軟件規(guī)模越大,關(guān)聯(lián)因素越多,但是軟件規(guī)模和測(cè)試用例的數(shù)量從理論上來(lái)看,并不具有線性關(guān)系。然而在實(shí)際工作中,為了方便操作,會(huì)對(duì)此進(jìn)行簡(jiǎn)化,將軟件規(guī)模和測(cè)試用例數(shù)量之間的關(guān)系視為線性關(guān)系。
通過(guò)矩形式的預(yù)測(cè)法進(jìn)行分析,可以幫助我們把握好測(cè)試用例數(shù)量的合理分布。在大型的軟件測(cè)試中有些功能點(diǎn)看似是測(cè)試過(guò)的,但仍然存在遺漏問(wèn)題,如果采用矩形法,就可以保證每個(gè)有交叉的功能點(diǎn)都被測(cè)試,從而減少遺漏測(cè)試現(xiàn)象的發(fā)生。
3.2 不同角度的測(cè)試策略
同一個(gè)問(wèn)題從不同的角度進(jìn)行分析會(huì)得出不同的結(jié)論。對(duì)于同一個(gè)軟件,從不同的角度進(jìn)行測(cè)試,得出的測(cè)試結(jié)果也會(huì)不同,有些測(cè)試結(jié)果可能會(huì)重疊,但是也有些獨(dú)有的測(cè)試結(jié)果是采用某種特定的測(cè)試策略才能得出的,所以如果能夠從不同的角度入手,可以更好地覆蓋軟件,得出更全面的測(cè)試結(jié)果。
主要的測(cè)試手段如場(chǎng)景測(cè)試,就是假設(shè)自己是被測(cè)軟件的使用者,但是在實(shí)際的情況中,用戶(hù)會(huì)以不同的順序去使用軟件,需要將這些可能性都列舉出來(lái)總結(jié)成為測(cè)試觀點(diǎn)。場(chǎng)景測(cè)試中的基于序列的測(cè)試和普通的功能測(cè)試是有區(qū)別的,它的側(cè)重方向是連續(xù)使用整個(gè)軟件的各個(gè)功能。但是功能測(cè)試則是針對(duì)每個(gè)功能點(diǎn)進(jìn)行細(xì)致全面的測(cè)試,所以這種測(cè)試可以發(fā)現(xiàn)很多普通功能測(cè)試中難以發(fā)現(xiàn)的缺陷。
3.3 測(cè)試人員的分配策略
在測(cè)試方法能夠滿(mǎn)足要求之后,需要對(duì)測(cè)試人員的分配采取合適的策略。雖然一個(gè)好的測(cè)試用例由每個(gè)測(cè)試人員來(lái)執(zhí)行,結(jié)果應(yīng)該是相同的,但是由于個(gè)體差異,實(shí)際的測(cè)試結(jié)果會(huì)有一定的差異,所以缺陷更容易在自由測(cè)試中發(fā)現(xiàn)。由此可知,如果能夠?qū)y(cè)試人員進(jìn)行更為合理的布局,可以有效地提高測(cè)試的質(zhì)量。
4 ?軟件測(cè)試策略應(yīng)用實(shí)例分析
策略研究的目的是為了能夠在實(shí)際應(yīng)用中發(fā)揮作用,在對(duì)軟件測(cè)試策略研究之后,各種策略需要在實(shí)踐中加以運(yùn)用才能發(fā)揮其價(jià)值,最終取得好的測(cè)試效果,提高軟件評(píng)估的質(zhì)量。
4.1 測(cè)試用例分布策略實(shí)例
矩形分布策略顧名思義就是采用矩陣分布的方式進(jìn)行分析,首先需要明確矩陣的行和列,針對(duì)具體的測(cè)試內(nèi)容,根據(jù)所運(yùn)用的實(shí)例將實(shí)際測(cè)試內(nèi)容填進(jìn)分布矩陣中。分布矩陣中的行和列都需要根據(jù)實(shí)際的軟件進(jìn)行衡量和裁剪,防止重復(fù)狀況的出現(xiàn)。根據(jù)每個(gè)行和列的交叉點(diǎn)分析計(jì)算軟件中的每個(gè)功能在實(shí)際運(yùn)用中的情況。針對(duì)被測(cè)軟件的特點(diǎn)和要求,運(yùn)用分布策略的方法對(duì)軟件實(shí)行檢測(cè),對(duì)檢測(cè)出的軟件中存在的問(wèn)題進(jìn)行分析,能使檢測(cè)的每個(gè)環(huán)節(jié)都具有針對(duì)性,而且操作起來(lái)比較方便,檢測(cè)的結(jié)果可以幫助軟件開(kāi)發(fā)人員分析軟件缺陷,更好地修改軟件缺陷。
4.2 不同角度測(cè)試策略實(shí)例
運(yùn)用不同角度的測(cè)試策略分析軟件,會(huì)得出不同的問(wèn)題點(diǎn),針對(duì)這些問(wèn)題點(diǎn)進(jìn)行進(jìn)一步的分析和測(cè)試,能夠使軟件開(kāi)發(fā)者更清楚地了解出現(xiàn)這些問(wèn)題的原因,以便在后期的軟件開(kāi)發(fā)中有效地避免同類(lèi)問(wèn)題的出現(xiàn),提高軟件的質(zhì)量。
不同角度測(cè)試的策略非常適用于大型軟件,針對(duì)那些功能強(qiáng)大,同時(shí)各部分功能之間存在著相互聯(lián)系的軟件,一些測(cè)試方法不能夠?qū)ζ溥M(jìn)行全面的測(cè)試,這是因?yàn)檐浖δ苤g的聯(lián)系很有可能會(huì)使測(cè)試過(guò)程中產(chǎn)生一些遺漏,而采用這種不同角度的測(cè)試策略能夠有效地避免這種情況的出現(xiàn),使得軟件測(cè)試結(jié)果更加準(zhǔn)確。
4.3 測(cè)試人員分布策略的實(shí)例
在軟件測(cè)試方面,測(cè)試人員的知識(shí)技能并不完全相同,通常每個(gè)測(cè)試人員都有各自擅長(zhǎng)的領(lǐng)域,當(dāng)自己檢測(cè)完成之后就認(rèn)為軟件的該部分功能測(cè)試通過(guò),針對(duì)這種現(xiàn)象,可以實(shí)行測(cè)試人員的交叉分布策略。在對(duì)軟件檢測(cè)時(shí),測(cè)試人員在測(cè)試完自己負(fù)責(zé)的功能模塊后,交叉檢驗(yàn)其他測(cè)試人員負(fù)責(zé)的測(cè)試模塊,這樣既可以使得每個(gè)測(cè)試人員在工作中都有新的體驗(yàn),也幫助他們提高了工作的積極性,學(xué)到了新的測(cè)試知識(shí)和實(shí)踐技能。通過(guò)人員分布策略在實(shí)際中的運(yùn)用,使得他們?cè)跈z測(cè)軟件時(shí)發(fā)現(xiàn)的問(wèn)題更多。這個(gè)分布策略在測(cè)試人員身上的運(yùn)用極大地發(fā)揮了測(cè)試人員的積極性,同時(shí)也提高了評(píng)測(cè)質(zhì)量。
5 ?結(jié)束語(yǔ)
通過(guò)上述的研究討論,我們看到了軟件測(cè)試在軟件研發(fā)中的重要性,同時(shí)我們也了解了軟件的測(cè)試策略對(duì)測(cè)試結(jié)果的影響,在黑盒測(cè)試方法的基礎(chǔ)上配以合適的測(cè)試策略能夠?yàn)檐浖臏y(cè)試過(guò)程帶來(lái)便捷。軟件測(cè)試策略的研究是時(shí)代發(fā)展的必然過(guò)程,軟件測(cè)試策略的研究也是一個(gè)復(fù)雜的過(guò)程,需要不斷的對(duì)比和改進(jìn)。人們對(duì)計(jì)算機(jī)應(yīng)用的依賴(lài)使得對(duì)軟件品質(zhì)的要求不斷地提高,基于黑盒測(cè)試的軟件測(cè)試策略的研究能夠?yàn)榻窈蟮能浖y(cè)試提供有力的技術(shù)支持,使得軟件的質(zhì)量不斷的提升,用戶(hù)的使用體驗(yàn)也不斷提高。
參 考 文 獻(xiàn)
[1] PATTON ?R.軟件測(cè)試[M].北京:機(jī)械工業(yè)出版社,2014.
[2] 張海番.軟件工程導(dǎo)論[M].3版.北京:清華大學(xué)出版社,2013.
[3] 董曉霞.相鄰因素組合測(cè)試用例集的最優(yōu)生成方法[J].計(jì)算機(jī)學(xué)報(bào),2013,30(2):200-210.
[4] 楊玲萍,韓陽(yáng).基于功能點(diǎn)分析測(cè)試設(shè)計(jì)充分性模糊評(píng)判建模[J].計(jì)算機(jī)工程與應(yīng)用,2012,43(3):106-111.
[5] 張永強(qiáng),陳永革,姚立新.軍用軟件的測(cè)試與實(shí)踐方法[J].火力與指揮控制,2013,31(9):91-93.