qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請(qǐng)?jiān)L問(wèn) http://qaseven.github.io/

          漫談軟件性能測(cè)試技術(shù)

            1、引言

            隨著我國(guó)加入WTO,各行各業(yè)都面臨更多的機(jī)遇和挑戰(zhàn)。如何提高產(chǎn)品的質(zhì)量,增 強(qiáng)市場(chǎng)競(jìng)爭(zhēng)力,日益成為企業(yè)發(fā)展必須解決的迫切問(wèn)題,對(duì)軟件企業(yè)來(lái)說(shuō)尤為重要。軟件企業(yè)要直接參與國(guó)際軟件市場(chǎng)的競(jìng)爭(zhēng),首要問(wèn)題就是要保證軟件的質(zhì)量,同 時(shí)要加快軟件產(chǎn)品的發(fā)布與交付使用。因此,如何提高軟件質(zhì)量,越來(lái)越成為當(dāng)前軟件產(chǎn)業(yè)發(fā)展中一個(gè)迫在眉睫的問(wèn)題。本文只針對(duì)軟件質(zhì)量的性能方面,做一些探 討。

            2、軟件質(zhì)量

            質(zhì)量保證能力的強(qiáng)弱直接影響著軟件業(yè)的發(fā)展和生存。那么,到底 什么是軟件的質(zhì)量呢?《GB/T 16260 信息技術(shù) 軟件產(chǎn)品評(píng)價(jià) 質(zhì)量特性及其使用指南》明確定義:軟件質(zhì)量是軟件產(chǎn)品具有滿(mǎn)足明確的或隱含需求能力的特征和特性總和。具體包括以下六個(gè)方面的質(zhì)量特性:

            1)功能性

            與一組功能及其指定的性質(zhì)有關(guān)的一組屬性。這里的功能是指滿(mǎn)足明確或隱含的需求的那些功能。

            2)易用性

            與一組規(guī)定或潛在的用戶(hù)為使用軟件所需作的努力和對(duì)這樣的使用所作的評(píng)價(jià)有關(guān)的一組屬性。

            3)可靠性

            與在規(guī)定的一段時(shí)間和條件下,軟件維持其性能水平的能力有關(guān)的一組屬性。

            4)效率

            與在規(guī)定的條件下,軟件的性能水平與所使用資源量之間關(guān)系有關(guān)的一組屬性。

            5)可維護(hù)性

            與進(jìn)行指定的修改所需的努力有關(guān)的一組屬性。

            6)可移植性

            與軟件可從某一環(huán)境轉(zhuǎn)移到另一環(huán)境的能力有關(guān)的一組屬性。

            因此,為了評(píng)價(jià)軟件產(chǎn)品的質(zhì)量,需要對(duì)軟件質(zhì)量的每個(gè)特性實(shí)施和執(zhí)行測(cè)試. 隨著現(xiàn)代軟件構(gòu)架技術(shù)的發(fā)展,特別是WEB技術(shù)的發(fā)展,與軟件可靠性、效率質(zhì)量特性相關(guān)的軟件性能問(wèn)題越來(lái)越受到包括軟件從業(yè)人員、專(zhuān)家學(xué)者以及軟件使用者的重視,軟件的性能指標(biāo)的好壞已直接影響到軟件的質(zhì)量。

            3、軟件性能測(cè)試技術(shù)

            軟件性能的測(cè)試一般包括三個(gè)方面,即性能評(píng)測(cè)、負(fù)載測(cè)試和強(qiáng)度測(cè)試。每一方面的測(cè)試都有其不同的測(cè)試目標(biāo)、測(cè)試技術(shù)、完成標(biāo)準(zhǔn),具體如下:

            3.1 性能評(píng)測(cè)

            針對(duì)響應(yīng)時(shí)間、事務(wù)處理速率和其他與時(shí)間相關(guān)的需求進(jìn)行評(píng)測(cè)和評(píng)估。目標(biāo)是驗(yàn)證性能需求是否都已滿(mǎn)足。

            測(cè)試目標(biāo):

            驗(yàn)證所指定的事務(wù)或業(yè)務(wù)功能在以下情況下的性能行為:

           ?。?)正常的預(yù)期工作

           ?。?)預(yù)期的最繁重工作量

            測(cè)試技術(shù):

            使用為功能或業(yè)務(wù)周期測(cè)試制定的測(cè)試過(guò)程。

            (1)通過(guò)修改數(shù)據(jù)文件來(lái)增加事務(wù)數(shù)量,或通過(guò)修改腳本來(lái)增加每項(xiàng)事務(wù)的迭代數(shù)量。

            (2)腳本應(yīng)該在一臺(tái)計(jì)算機(jī)上運(yùn)行(最好是以單個(gè)用戶(hù)、單個(gè)事務(wù)為基準(zhǔn)),并在多個(gè)客戶(hù)機(jī)(虛擬的或?qū)嶋H的客戶(hù)機(jī))上重復(fù)。

            完成標(biāo)準(zhǔn):

           ?。?)單個(gè)事務(wù)或單個(gè)用戶(hù):在每個(gè)事務(wù)所預(yù)期或要求的時(shí)間范圍內(nèi)成功地完成測(cè)試腳本,沒(méi)有發(fā)生任何故障。

           ?。?)多個(gè)事務(wù)或多個(gè)用戶(hù):在可接受的時(shí)間范圍內(nèi)成功地完成測(cè)試腳本,沒(méi)有發(fā)生任何故障。

            注意事項(xiàng):

            綜合的性能測(cè)試還包括在服務(wù)器上添加后臺(tái)工作量。 可采用多種方法來(lái)執(zhí)行此操作,其中包括:

            (1)直接將“事務(wù)強(qiáng)行分配到”服務(wù)器上,這通常以“結(jié)構(gòu)化查詢(xún)語(yǔ)言”(SQL) 調(diào)用的形式來(lái)實(shí)現(xiàn)。

           ?。?)通過(guò)創(chuàng)建“虛擬的”用戶(hù)負(fù)載來(lái)模擬許多個(gè)(通常為數(shù)百個(gè))客戶(hù)機(jī)。此負(fù)載可通過(guò)“遠(yuǎn)程終端仿真”(Remote Terminal Emulation) 工具來(lái)實(shí)現(xiàn)。此技術(shù)還可用于在網(wǎng)絡(luò)中加載“流量”。

           ?。?)使用多臺(tái)實(shí)際客戶(hù)機(jī)在系統(tǒng)上添加負(fù)載。

           ?。?)性能測(cè)試應(yīng)該在專(zhuān)用的計(jì)算機(jī)上或在專(zhuān)用的機(jī)時(shí)內(nèi)執(zhí)行,以便實(shí)現(xiàn)完全的控制和精確的評(píng)測(cè)。

           ?。?)性能測(cè)試所用的數(shù)據(jù)庫(kù)應(yīng)該是實(shí)際大小或相同縮放比例的數(shù)據(jù)庫(kù)。

           3.2 負(fù)載測(cè)試

            負(fù)載測(cè)試通過(guò)使測(cè)試對(duì)象承擔(dān)不同的工作量,以評(píng)測(cè)和評(píng)估測(cè)試對(duì)象在不同工作量條件下的性能行為,以及持續(xù)正常運(yùn)行的能力。目標(biāo)是確定并確保系統(tǒng)在超出最大預(yù)期工作量的情況下仍能正常運(yùn)行,以及軟件的性能特征,例如,響應(yīng)時(shí)間、事務(wù)處理速率和其他與時(shí)間相關(guān)的方面。

            測(cè)試目標(biāo):

            驗(yàn)證所指定的事務(wù)在不同的工作量條件下的性能行為時(shí)間。

            測(cè)試技術(shù):

            使用為功能或業(yè)務(wù)周期測(cè)試制定的測(cè)試。通過(guò)修改數(shù)據(jù)文件來(lái)增加事務(wù)數(shù)量,或通過(guò)修改測(cè)試來(lái)增加每項(xiàng)事務(wù)發(fā)生的次數(shù)。

            完成標(biāo)準(zhǔn):

            多個(gè)事務(wù)或多個(gè)用戶(hù):在可接受的時(shí)間范圍內(nèi)成功地完成測(cè)試,沒(méi)有發(fā)生任何故障。

            注意事項(xiàng):

            (1)負(fù)載測(cè)試應(yīng)該在專(zhuān)用的計(jì)算機(jī)上或在專(zhuān)用的機(jī)時(shí)內(nèi)執(zhí)行,以便實(shí)現(xiàn)完全的控制和精確的評(píng)測(cè)。

           ?。?)負(fù)載測(cè)試所用的數(shù)據(jù)庫(kù)應(yīng)該是實(shí)際大小或相同縮放比例的數(shù)據(jù)庫(kù)。

            3.3 強(qiáng)度測(cè)試

            強(qiáng)度測(cè)試目的是找出因資源不足或資源爭(zhēng)用而導(dǎo)致的錯(cuò)誤。如果內(nèi)存或磁盤(pán)空間不足,測(cè)試對(duì)象就可能會(huì)表現(xiàn)出一些在正常條件下并不明顯的缺陷。而其他缺陷則可能由于爭(zhēng)用共享資源(如數(shù)據(jù)庫(kù)鎖或網(wǎng)絡(luò)帶寬)而造成的。強(qiáng)度測(cè)試還可用于確定測(cè)試對(duì)象能夠處理的最大工作量。

            測(cè)試目標(biāo):

            驗(yàn)證測(cè)試對(duì)象能夠在以下強(qiáng)度條件下正常運(yùn)行,不會(huì)出現(xiàn)任何錯(cuò)誤:

           ?。?)服務(wù)器上幾乎沒(méi)有或根本沒(méi)有可用的內(nèi)存(內(nèi)存和磁盤(pán)空間)

            (2)連接或模擬了最大實(shí)際(實(shí)際允許)數(shù)量的客戶(hù)機(jī)

            (3)多個(gè)用戶(hù)對(duì)相同的數(shù)據(jù)或賬戶(hù)執(zhí)行相同的事務(wù)

           ?。?)最繁重的事務(wù)量或最差的事務(wù)組合

            注:強(qiáng)度測(cè)試的目標(biāo)可表述為確定和記錄那些使系統(tǒng)無(wú)法繼續(xù)正常運(yùn)行的的情況或條件。

            測(cè)試技術(shù):

           ?。?)使用為性能評(píng)測(cè)或負(fù)載測(cè)試制定的測(cè)試。要對(duì)有限的資源進(jìn)行測(cè)試,就應(yīng)該在一臺(tái)計(jì)算機(jī)上運(yùn)行測(cè)試,而且應(yīng)該減少或限制服務(wù)器上的內(nèi)存和磁盤(pán)空間。

            (2)對(duì)于其他強(qiáng)度測(cè)試,應(yīng)該使用多臺(tái)客戶(hù)機(jī)來(lái)運(yùn)行相同的測(cè)試或互補(bǔ)的測(cè)試,以產(chǎn)生最繁重的事務(wù)量或最差的事務(wù)組合。

            完成標(biāo)準(zhǔn):

            所計(jì)劃的測(cè)試已全部執(zhí)行,并且在達(dá)到或超出指定的系統(tǒng)限制時(shí)沒(méi)有出現(xiàn)任何軟件故障,或者導(dǎo)致系統(tǒng)出現(xiàn)故障的條件并不在指定的條件范圍之內(nèi)。

            注意事項(xiàng):

           ?。?)如果要增加網(wǎng)絡(luò)工作強(qiáng)度,可能會(huì)需要使用網(wǎng)絡(luò)工具來(lái)給網(wǎng)絡(luò)加載消息或信息包。

           ?。?)應(yīng)該暫時(shí)減少用于系統(tǒng)的磁盤(pán)空間,以限制數(shù)據(jù)庫(kù)可用空間的增長(zhǎng)。

           ?。?)使多個(gè)客戶(hù)機(jī)對(duì)相同的記錄或數(shù)據(jù)賬戶(hù)同時(shí)進(jìn)行的訪(fǎng)問(wèn)達(dá)到同步。

            4、結(jié)束語(yǔ)

            軟件質(zhì)量的保證,不僅需要科學(xué)的測(cè)試策略,更要處理好整個(gè)軟件生命周期中其他如需求、分析、設(shè)計(jì)、實(shí)現(xiàn)各階段中出現(xiàn)的問(wèn)題。只有對(duì)軟件質(zhì)量進(jìn)行全面、全過(guò)程的質(zhì)量控制,才能最終保證軟件產(chǎn)品的質(zhì)量,提高企業(yè)的競(jìng)爭(zhēng)力。


          posted on 2012-04-10 09:38 順其自然EVO 閱讀(259) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 性能測(cè)試

          <2012年4月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類(lèi)

          隨筆檔案

          文章分類(lèi)

          文章檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 临朐县| 巴中市| 明星| 龙岩市| 沛县| 建德市| 伊金霍洛旗| 溆浦县| 邻水| 承德市| 禹城市| 奈曼旗| 饶阳县| 精河县| 安溪县| 新巴尔虎左旗| 济源市| 巫溪县| 罗甸县| 象州县| 长汀县| 文水县| 读书| 江达县| 佛冈县| 安徽省| 泗洪县| 磐石市| 阳朔县| 屏边| 聊城市| 漾濞| 绥滨县| 平乡县| 普格县| 阳曲县| 江永县| 山西省| 万荣县| 安吉县| 彭泽县|