国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于軟件測試的自動化測試裝置的制作方法

      文檔序號:6338042閱讀:604來源:國知局
      專利名稱:用于軟件測試的自動化測試裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及軟件測試領(lǐng)域,尤其涉及一種用于軟件測試的自動化測試裝置。
      技術(shù)背景
      隨著計算機軟件的規(guī)模越來越大,軟件測試成為了軟件質(zhì)量保障的關(guān)鍵環(huán)節(jié),軟件測試自動化的發(fā)展也成為了軟件測試領(lǐng)域所無法逾越的發(fā)展階段。
      軟件測試就是在軟件投入運行前,對軟件需求分析、設(shè)計規(guī)格說明書和編碼的最終復(fù)審,是軟件質(zhì)量保障的關(guān)鍵步驟。其定義可簡略概括為為了發(fā)現(xiàn)錯誤而運行程序的過程。隨著軟件規(guī)模的不斷擴大,軟件質(zhì)量問題已成為制約計算機發(fā)展的主要因素之一。作為保證軟件質(zhì)量和可靠性的手段,軟件測試起著不可替代的作用。
      隨著信息化的發(fā)展和技術(shù)的進步,信息化軟件的架構(gòu)也由C/S結(jié)構(gòu)發(fā)展到了現(xiàn)在的B/S架構(gòu),如今信息化軟件的主流正是通過hternet訪問,基于Web的應(yīng)用程序。
      和以往的軟件相比,基于Web的信息化軟件有著不同于以往軟件的特點
      1)集中包括數(shù)據(jù)庫集中,信息系統(tǒng)管理集中,業(yè)務(wù)管理集約化。
      2)大分布按照地域廣泛分布,這與“集中”的特點是對立統(tǒng)一的。
      3)大量包括數(shù)據(jù)量大,業(yè)務(wù)量大。
      正是由于以上的特點,基于Web的信息化軟件相比傳統(tǒng)軟件,帶來了非常大的優(yōu)越性,但同時也帶來了很多挑戰(zhàn),這是因為基于Web的信息系統(tǒng)的大分布,決定了 Web服務(wù)器要同時接受大量的數(shù)據(jù)請求。這樣一旦Web服務(wù)器癱瘓即將造成巨大的損失。這就對 Web系統(tǒng)的性能提出了要求,要求產(chǎn)品在上線前必須接受嚴(yán)格的性能測試。發(fā)明內(nèi)容
      有鑒于此,本發(fā)明主要針對基于Web的性能測試,對自動化測試腳本進行設(shè)計、錄制和完善,提出了一套新穎的用于軟件測試的自動化測試裝置。
      具體地,本發(fā)明提出了一種用于軟件測試的自動化測試裝置,該裝置包括虛擬用戶生成器,用于創(chuàng)建虛擬用戶和系統(tǒng)負(fù)載;控制器,用于組織所述虛擬用戶生成器所創(chuàng)建的系統(tǒng)負(fù)載,設(shè)定虛擬用戶數(shù)量,并生成和運行測試腳本;分析組件,保存運行所述測試腳本的所有數(shù)據(jù),并對所得到的數(shù)據(jù)進行分析。
      根據(jù)本發(fā)明的一個優(yōu)選實施例,在上述自動化測試裝置中,所述虛擬用戶模擬真實用戶的業(yè)務(wù)操作行為。
      根據(jù)本發(fā)明的一個優(yōu)選實施例,在上述自動化測試裝置中,所述控制器根據(jù)所述系統(tǒng)負(fù)載的業(yè)務(wù)流程和所設(shè)定的虛擬用戶數(shù)量生成所述測試腳本。
      根據(jù)本發(fā)明的一個優(yōu)選實施例,在上述自動化測試裝置中,所述控制器在生成測試腳本時在所述測試腳本中插入事務(wù),以便在所述分析組件進行分析時查看到該事務(wù)的響應(yīng)時間。
      根據(jù)本發(fā)明的一個優(yōu)選實施例,在上述自動化測試裝置中,所述控制器在生成測試腳本時在該測試腳本中插入一集合點。
      根據(jù)本發(fā)明的一個優(yōu)選實施例,在上述自動化測試裝置中,在運行該測試腳本時, 在所述集合點處使多個虛擬用戶執(zhí)行同一操作,以提高并發(fā)程度。
      根據(jù)本發(fā)明的一個優(yōu)選實施例,在上述自動化測試裝置中,所述控制器為所述測試腳本設(shè)定迭代次數(shù)。
      應(yīng)當(dāng)理解,本發(fā)明以上的一般性描述和以下的詳細(xì)描述都是示例性和說明性的, 并且旨在為如權(quán)利要求所述的本發(fā)明提供進一步的解釋。


      附圖主要是用于提供對本發(fā)明進一步的理解。附圖示出了本發(fā)明的實施例,并與本說明書一起起到解釋本發(fā)明原理的作用。附圖中
      圖1示意性地示出了根據(jù)本發(fā)明的用于軟件測試的自動化測試裝置的結(jié)構(gòu)圖。
      圖2示意性地示出了根據(jù)本發(fā)明的自動化軟件測試方法的流程圖。
      具體實施方式
      以下結(jié)合附圖詳細(xì)描述本發(fā)明的技術(shù)方案。
      現(xiàn)有技術(shù)的手工測試至少存在以下的局限性
      A、無法覆蓋所有代碼路徑,功能性測試用例在每輪測試中都是必不可少的,具有一定的機械性、重復(fù)性。
      B、一些與時序、死鎖、資源沖突、多線程相關(guān)的錯誤,手工測試很難捕捉。
      C、進行系統(tǒng)負(fù)載、性能測試時,一些模擬大量數(shù)據(jù)或大量并發(fā)用戶等各種場合很難用手工進行測試。
      D、進行系統(tǒng)可靠性測試,需要模擬系統(tǒng)運行多久時間的時候能穩(wěn)定運行,這些都是手工測試很難進行的。
      E、手工測試速度相對比較慢,如果一天進行幾百個測試用例,在一天內(nèi)用手工進行測試很難完成。
      相對地,本發(fā)明的自動化測試裝置至少具備以下優(yōu)勢
      A、縮短軟件開發(fā)的測試周期,進度快。
      B、測試效率高(充分利用硬件資源)。
      C、節(jié)省人力資源,降低測試成本。
      D、增強測試的穩(wěn)定性、可靠性,提高測試的準(zhǔn)確度和精確度,增加軟件信任度。
      E、使用測試工具相對比較容易,能提高測試結(jié)果。
      F、能進行負(fù)載、性能測試,這些手工都無法完成。
      當(dāng)然,在實際工作中要確保能用自動化測試的事情決不用手工測試,同時要做到適合手工測試的內(nèi)容決不要花費高昂的成本做自動化測試。另外,不要因為某方面不能自動化測試而不做測試。本發(fā)明的自動測試裝置尤其適合于單元測試、集成測試、系統(tǒng)負(fù)載測試、性能測試、穩(wěn)定性測試、可靠性測試等。
      圖1示意性地示出了根據(jù)本發(fā)明的用于軟件測試的自動化測試裝置的結(jié)構(gòu)圖。如圖所示,本發(fā)明的用于軟件測試的自動化測試裝置100包括用于創(chuàng)建虛擬用戶和系統(tǒng)負(fù)載的虛擬用戶生成器101 ;用于組織虛擬用戶生成器101所創(chuàng)建的系統(tǒng)負(fù)載、設(shè)定虛擬用戶數(shù)量并生成和運行測試腳本的控制器102 ;以及保存運行測試腳本的所有數(shù)據(jù)并對所得到的數(shù)據(jù)進行分析的分析組件103。
      通過虛擬用戶生成器101,用戶可簡便創(chuàng)建起虛擬用戶和系統(tǒng)負(fù)載。該虛擬用戶生成器101能生成虛擬用戶,以虛擬用戶的方式模擬真實用戶的業(yè)務(wù)操作行為。后續(xù)的組件將其轉(zhuǎn)化為測試腳本。
      控制器102根據(jù)系統(tǒng)負(fù)載的業(yè)務(wù)流程和所設(shè)定的虛擬用戶數(shù)量生成所述測試腳本。例如,通過控制器102,測試人員可以快速地組織起多用戶的測試方案(負(fù)載方案、業(yè)務(wù)流程組合與虛擬用戶數(shù)量),使測試過程自動化。同時,控制器102也可以用來限定負(fù)載方案。此外,控制器102還可以在生成測試腳本時在測試腳本中插入事務(wù),以便在分析組件 103進行分析時查看到該事務(wù)的響應(yīng)時間?;蛘撸刂破?02也可以在生成測試腳本時在該測試腳本中插入一集合點。在運行該測試腳本時,在集合點處使多個虛擬用戶執(zhí)行同一操作,以提高并發(fā)程度。此外,控制器102還可以為測試腳本設(shè)定迭代次數(shù)。
      控制器102使用虛擬用戶生成器101生成的腳本對目標(biāo)軟件進行模擬場景測試, 場景運行后,所有的數(shù)據(jù)將由分析組件103保留并對所得的數(shù)據(jù)進行分析。
      圖2示意性地示出了根據(jù)本發(fā)明的自動化軟件測試方法的流程圖。如圖2所示,本發(fā)明的自動化軟件測試方法包括創(chuàng)建測試腳本201 ;部署測試場景并運行測試腳本202 ; 以及分析測試結(jié)果203。
      在創(chuàng)建測試腳本201的步驟之中,用戶可以選擇適當(dāng)?shù)膮f(xié)議,web服務(wù)器一般選擇 http協(xié)議。錄制方式一般選擇基于HTML的腳本,但有下列情況選擇基于URL的腳本。不是基于瀏覽器的應(yīng)用程序,應(yīng)用程序中包含jav必cript腳本且產(chǎn)生了請求,基于瀏覽器的應(yīng)用程序使用了 https協(xié)議。在錄制過程中不要后退頁面。如果想測定某個操作的響應(yīng)時間,可以在腳本中插入事務(wù),使用事務(wù)把該操作包裝起來。分析執(zhí)行結(jié)果的時候可以查看到該事務(wù)的響應(yīng)時間。此外,在該步驟201中還可以插入集合點,以使多個用戶并發(fā)進行同一操作,提高操作的并發(fā)程度,以對服務(wù)器增加負(fù)載,測試并發(fā)能力。此外,用戶還可以設(shè)置網(wǎng)絡(luò)帶寬以模擬不同帶寬的網(wǎng)絡(luò),設(shè)置迭代次數(shù)。此外,該步驟還包括對腳本進行參數(shù)化,設(shè)置參數(shù)變更方式,以及關(guān)聯(lián)腳本。
      在部署測試場景并運行測試腳本202的步驟之中,部署測試場景主要包含選擇腳本,設(shè)定執(zhí)行用戶數(shù),選擇測試負(fù)載機,設(shè)置腳本執(zhí)行的方式,設(shè)置集合點點,設(shè)置運行時間設(shè)定。如果要模擬的用戶數(shù)比較多,應(yīng)該設(shè)置多臺測試負(fù)載機,一般主流的PC機至少能模擬100個用戶對服務(wù)器的訪問。此外,設(shè)置腳本的執(zhí)行方式包括設(shè)置用戶的啟動方式和設(shè)置用戶的終止方式。此外,該步驟還可以設(shè)置集合點,并可以設(shè)置用戶通過集合點的方式。當(dāng)瀏覽web頁面較大時,在測試的時候可能出現(xiàn)超時(timeout)錯誤。針對該問題,可以適當(dāng)修正超時數(shù)值。
      此外,還可以設(shè)置IP欺騙。如果服務(wù)器對用戶的IP有限制(安全原因),則需要啟用IP欺騙。設(shè)置IP欺騙應(yīng)該注意1)測試負(fù)載機應(yīng)該使用靜態(tài)IP ;2)在選擇測試負(fù)載機之前開啟IP欺騙開關(guān)。
      此外,還可以設(shè)置服務(wù)器監(jiān)控計數(shù)器。包含內(nèi)存,CPU,線程,進程,網(wǎng)絡(luò),磁盤。
      在分析測試結(jié)果203的步驟之中,可以查看分析結(jié)果、查看事務(wù)的響應(yīng)時間、服務(wù)器的平均吞吐量,執(zhí)行用戶人數(shù)等。此外,還可以查看線程圖,用戶變化圖,響應(yīng)時間圖,吞吐量圖;查看服務(wù)器監(jiān)控的計數(shù)器圖;分析各個性能指標(biāo)是否符合需求,比如可用內(nèi)存曲線是否正常,是否存在內(nèi)存泄漏;CPU利用率曲線是否平緩,平均利用率是否低于90% ;線程數(shù)是否正常,而不是一直在增長;網(wǎng)絡(luò)帶寬是否滿足流量需求;磁盤是否滿足用戶操作要求等等;分析各個曲線圖是否存在異常情況,比如響應(yīng)時間是否滿足需求;系統(tǒng)是否支持要求的并發(fā);隨著負(fù)載的增加,吞吐量是否同樣增加,吞吐量是否存在瓶頸等等。
      有時候分析單個要素并不能反映存在的問題,需要多個要素聯(lián)系起來進行分析。 比如,可以把用戶數(shù)的變化圖和吞吐量圖聯(lián)系起來進行分析。本發(fā)明的裝置支持把兩個表合并進行分析,把用戶數(shù)變化圖和吞吐量變化圖合并,就可以觀察吞吐量是否隨著用戶數(shù)的變化而相應(yīng)時間。如果隨著用戶數(shù)的增加,吞吐量持平或者下降,說明此時系統(tǒng)吞吐量達(dá)到了最大值,系統(tǒng)達(dá)到了瓶頸。
      權(quán)利要求
      1.一種用于軟件測試的自動化測試裝置,其特征在于,包括虛擬用戶生成器,用于創(chuàng)建虛擬用戶和系統(tǒng)負(fù)載;控制器,用于組織所述虛擬用戶生成器所創(chuàng)建的系統(tǒng)負(fù)載,設(shè)定虛擬用戶數(shù)量,并生成和運行測試腳本;分析組件,保存運行所述測試腳本的所有數(shù)據(jù),并對所得到的數(shù)據(jù)進行分析。
      2.如權(quán)利要求1所述的自動化測試裝置,其特征在于,所述虛擬用戶模擬真實用戶的業(yè)務(wù)操作行為。
      3.如權(quán)利要求1所述的自動化測試裝置,其特征在于,所述控制器根據(jù)所述系統(tǒng)負(fù)載的業(yè)務(wù)流程和所設(shè)定的虛擬用戶數(shù)量生成所述測試腳本。
      4.如權(quán)利要求1所述的自動化測試裝置,其特征在于,所述控制器在生成測試腳本時在所述測試腳本中插入事務(wù),以便在所述分析組件進行分析時查看到該事務(wù)的響應(yīng)時間。
      5.如權(quán)利要求1所述的自動化測試裝置,其特征在于,所述控制器在生成測試腳本時在該測試腳本中插入一集合點。
      6.如權(quán)利要求5所述的自動化測試裝置,其特征在于,在運行該測試腳本時,在所述集合點處使多個虛擬用戶執(zhí)行同一操作,以提高并發(fā)程度。
      7.如權(quán)利要求1所述的自動化測試裝置,其特征在于,所述控制器為所述測試腳本設(shè)定迭代次數(shù)。
      全文摘要
      本發(fā)明提出了一種用于軟件測試的自動化測試裝置,該裝置包括虛擬用戶生成器,用于創(chuàng)建虛擬用戶和系統(tǒng)負(fù)載;控制器,用于組織所述虛擬用戶生成器所創(chuàng)建的系統(tǒng)負(fù)載,設(shè)定虛擬用戶數(shù)量,并生成和運行測試腳本;分析組件,保存運行所述測試腳本的所有數(shù)據(jù),并對所得到的數(shù)據(jù)進行分析。本發(fā)明可以縮短軟件開發(fā)的測試周期、進度快、測試效率高且充分利用硬件資源。
      文檔編號G06F11/36GK102541723SQ20101057940
      公開日2012年7月4日 申請日期2010年12月8日 優(yōu)先權(quán)日2010年12月8日
      發(fā)明者陸晨, 陳楠生 申請人:上海杉達(dá)學(xué)院
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1