qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          針對B/S客戶端進(jìn)行性能測試的幾個關(guān)鍵問題

          針對B/S客戶端進(jìn)行性能測試的時候,會遇到很多技術(shù)難點,往往成為性能測試的礁石。有些難題,雖然看起來是個小問題,但是如果沒有科學(xué)的解決辦法,往往會影響整個測試項目的進(jìn)度,帶來很大的損失。

            基于以往性能測試項目的經(jīng)驗,本文總結(jié)了針對B/S客戶端進(jìn)行性能測試時遇到的多個關(guān)鍵技術(shù)問題,愿與業(yè)內(nèi)同行進(jìn)行深入探討,共同提升測試能力。

            1、性能測試腳本錄制最重要的地方

            性能測試腳本錄制最重要的地方,個人認(rèn)為有以下三個方面:

            第一,在性能測試之前要先做程序的功能驗證。這是最開始要做的事情,要確保廠商程序的被測功能點都是正確的。功能驗證都不通過,性能測試所做的一切都沒有意義了,同時,功能驗證的過程也是熟悉業(yè)務(wù)的過程,對于測試工程師非常重要;

            第二,參數(shù)化分析。雖然參數(shù)化本身非常重要,但是更重要的是參數(shù)化的分析,要分析哪些值需要做參數(shù)化,這才是關(guān)鍵;

            第三,做關(guān)聯(lián)。做關(guān)聯(lián)可能是最難了,因為需要分析服務(wù)器返回的數(shù)據(jù),要對程序的流程有個徹底的了解。做關(guān)聯(lián)的難點還是對程序流程的理解,并不是關(guān)聯(lián)本身。

            2、測試腳本的第一次錄制

            對B/S客戶端進(jìn)行第一次腳本錄制,測試工程師需要注意以下幾個方面:

            1)在測試腳本錄制之前,測試工程師應(yīng)該已經(jīng)對測試規(guī)范進(jìn)行熟悉了,第一次腳本錄制的目的之一就是要按照測試規(guī)范實際進(jìn)行一步步的操作,看看是否會遇到一些報錯的問題;

            2)通過第一次腳本錄制,測試工程師需要了解被測程序的各個功能是否已經(jīng)實現(xiàn)以及實現(xiàn)的方式是怎么樣的。雖然是性能測試,但是對于功能的理解,流程的把握是相當(dāng)重要的;

            3)B/S性能測試腳本里面,核心的問題就是要把參數(shù)化做好。所以第一次錄制腳本,測試工程師要仔細(xì)的觀察程序變化,要看一看哪些地方是需要做參數(shù)化的,以及做參數(shù)化的難易程度問題。

            3、在測試腳本里找不到需要參數(shù)化的那個值

            問題描述:按照測試規(guī)范的要求,需要對一個數(shù)值進(jìn)行參數(shù)化,但是在腳本中沒有發(fā)現(xiàn)這個值,參數(shù)化無法進(jìn)行。

            解決方法:這是屬于廠商實現(xiàn)機(jī)制的問題,測試工程師需要和廠商進(jìn)行溝通,讓廠商修改程序,使被參數(shù)化的值能夠在腳本中顯露出來,這樣,性能測試才可能順利進(jìn)行。

            4、參數(shù)文件里不能有空行

            問題描述:在實際測試中,我們配置了11個參數(shù)文件,跑10個循環(huán)沒有錯誤,很正常,但是跑100個就報錯了。

            解決方法:把報錯的鏈接從IE中打開,發(fā)現(xiàn)有幾個值是空的,因此而報錯。打開腳本,看參數(shù)文件,界面里顯示的確實是11個值,沒有更多的值了,但是從記事本里把參數(shù)文件打開,按Ctrl+A,發(fā)現(xiàn)在后面幾行里有空行,就是因為這個空行才報的錯。所以發(fā)現(xiàn),參數(shù)文件里不能有空行,對于空行,系統(tǒng)也是識別的。

            5、極限測試中測試終止條件必須定義明確

            問題描述:起初,性能測試終止條件定義的是CPU的最高值以及事物通過率的最低值,后來發(fā)現(xiàn)這些條件其實都是很難達(dá)到的。尤其在極限測試的時候,終止條件顯得尤其重要,沒有終止條件就沒有辦法達(dá)到極限了。

            解決方法:需要定義更細(xì)的終止條件,而且在一定的時間內(nèi)能夠達(dá)到,要不然無法進(jìn)行極限測試。

            6、用LoadRunner監(jiān)控Linux及Unix資源不穩(wěn)定

            問題描述:用LR監(jiān)控Linux及Unix資源,有時監(jiān)控會斷掉,就無法監(jiān)控資源了

            解決方法:有時候確實會出現(xiàn)這個問題,所以在實際測試中首先要用LR對服務(wù)器進(jìn)行監(jiān)控,同時使用服務(wù)器自身的NMON函數(shù)來收集數(shù)據(jù),把應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器的CPU、內(nèi)存、硬盤IO等的值都收集下來。

            7、使用NMON函數(shù)要注意的事項

            第一,NMON函數(shù)是在服務(wù)器端本地啟動的,所以每次使用都需要登陸到服務(wù)器把NMON打開。查看NMON是否打開的命令是:ps –ef|grep nmon。

            第二,NMON函數(shù)的原理是把每次收集的數(shù)據(jù)都放到了一個文件里,所以每次開始新一輪的測試,都需要關(guān)閉上一次開啟的NMON,然后打開一個新的NMON,以便容易區(qū)分?jǐn)?shù)據(jù)。

            第三,要把時間校準(zhǔn)好。作為控制臺的那臺測試機(jī)的時間、應(yīng)用服務(wù)器的時間、數(shù)據(jù)庫服務(wù)器的時間,這三個時間要校準(zhǔn),沒有必要去確認(rèn)哪個時間準(zhǔn)確,需要做的是把這三個時間的差別算出來,要以做控制臺的測試機(jī)的時間為基準(zhǔn)。

          posted on 2011-11-09 16:06 順其自然EVO 閱讀(239) 評論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫

          <2011年11月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 汕尾市| 绵竹市| 延吉市| 连江县| 肥城市| 云安县| 鹰潭市| 乐昌市| 喀喇沁旗| 合江县| 都江堰市| 清苑县| 永新县| 太康县| 鹤山市| 绥宁县| 邓州市| 临沂市| 神池县| 沧州市| 子长县| 泸定县| 天等县| 南安市| 玛曲县| 大悟县| 出国| 常宁市| 彰化县| 新安县| 禄丰县| 农安县| 娄底市| 滦南县| 宣恩县| 堆龙德庆县| 简阳市| 策勒县| 时尚| 景宁| 宁蒗|