一種網關產品壓力測試方法及裝置制造方法【專利摘要】本發明公開了一種網關產品壓力測試方法及裝置,該方法通過利用測試終端經過被測網關訪問互聯網,在測試終端上連續不斷地開啟網頁,通過檢測網頁的正確開啟率獲得壓力測試指標,在測試終端上設置網址文件,在網址文件中保存有網址列表和對應的檢測元素,利用瀏覽器自動開啟網頁,訪問互聯網,自動開啟網頁、停止加載網頁、檢測是否正常開啟網頁等步驟本發明的有益效果是,節省人力,節省自動化工具在無法完整加載網頁時的停滯時間,避免后續自動化用例因網頁加載為而無法繼續運行的問題。【專利說明】一種網關產品壓力測試方法及裝置【
技術領域:
】[0001]本發明涉及網關產品壓力測試領域,特別涉及一種通過測試終端利用被測網關產品瀏覽INTERNET上的網頁,在測試終端上通過自動開啟網頁實現被測網關產品壓力測試的方法及測試裝置。【
背景技術:
】[0002]壓力測試,是確立系統穩定性的一種測試方法,在軟件工程、金融風險管理等領域應用比較普遍。通常在系統正常運作范圍之外進行,以考察其功能極限和隱患。[0003]網關(Gateway)又稱網間連接器、協議轉換器。網關在傳輸層上以實現網絡互連,是最復雜的網絡互連設備,僅用于兩個高層協議不同的網絡互連。網關的結構也和路由器類似,不同的是互連層。網關既可以用于廣域網互連,也可以用于局域網互連。網關是一種充當轉換重任的計算機系統或設備。在使用不同的通信協議、數據格式或語言,甚至體系結構完全不同的兩種系統之間,網關是一個翻譯器。[0004]對網關進行壓力測試是網關產品出廠檢測的重要一環,目前,網關產品進行壓力穩定性測試:在選定的壓力值下,持續運行24小時以上進行穩定性測試。客戶端通常由測試工具模擬真實用戶不停地進行各種操作。監視服務器和真實客戶端的必要性能指標。通過壓力測試的標準使各項性能指標在指定范圍內無內存泄漏、無系統崩潰、無功能性故障等。[0005]在對網關產品進行壓力測試時,通過通過一個測試終端利用被測網關產品瀏覽網頁,不斷地開啟網頁,并通過檢查網頁開啟率來獲得被測網關產品的壓力測試情況。但目前測試工具存在這樣的問題:在開啟網頁遇到網絡情況不穩定時網頁加載不完整工具就會長時間停止在等待網頁加載的過程不能繼續運行,需要人工干預。【
發明內容】[0006]本發明的目的在提供一種測試終端利用被測網關產品瀏覽網頁而實現壓力測試的方法,該方法在測試終端上自動開啟網頁無需人工干預。[0007]本發明通過下述技術方案實現:一種網關產品壓力測試方法,該方法通過利用測試終端經過被測網關訪問互聯網,在測試終端上連續不斷地開啟網頁,通過檢測網頁的正確開啟率獲得壓力測試指標,在測試終端上設置網址文件,在網址文件中保存有網址列表和對應的檢測元素,利用瀏覽器自動開啟網頁,包括以下步驟:步驟1、測試終端通過被測網關連接到INTERNET中;步驟2、啟動測試終端的瀏覽器,從網址文件中選擇一個網址,加載該網頁;步驟3、在約定時間后停止加載,保留已加載的網頁內容,通過檢測網頁內容與該網頁的網址對應的檢測元素比較,判斷該網頁是否開啟成功;步驟4、重復步驟2和步驟3設定次數;步驟5、記錄每次操作的日志,將網頁開啟成功的總數換算為百分比,并顯示。[0008]本發明的有益效果是,節省人力,節省自動化工具在無法完整加載網頁時的停滯時間,避免后續自動化用例因網頁加載為而無法繼續運行的問題。[0009]本發明的優選方案包括:網址文件中僅僅保存有一個網址和該網址的檢測元素或者網址文件中至少保存有兩個網址和對應網址的檢測元素。[0010]步驟2中是隨機獲取網址文件的一個網址,并加載網頁步驟4設定次數為200次。[0011]網關產品可以是有線的,也可以是無線的網關。[0012]本發明還提供一種網關產品壓力測試的裝置,包括測試終端,所述的測試終端通過被測網關產品連接互聯網,在所述的測試終端中包括:瀏覽器,存儲有網址列表和對應的檢測元素的網址文件,讀取所述的網址文件中的網址并將該網址加載到所述的瀏覽器的網頁加載模塊,計時模塊,退出網頁模塊,保存模塊,判斷模塊,計數模塊。[0013]所述的計時模塊在將網址加載到瀏覽器開啟網頁時計時開始,計時結束時觸發退出網頁模塊停止加載所述的網頁;所述的保存模塊保存已加載的網頁內容;判斷模塊檢測網頁內容中是否有所述的網址文件中的檢測元素,如果有則判斷網頁加載正常,否則判斷網頁加載不正常。計數模塊對所述的判斷模塊判斷網頁加載正常或者不正常進行計數,并計算出網頁開啟成功的百分比。[0014]本發明實現自動開啟網頁并停留一段時間后(可根據需要設置停留時間長短)再判斷網頁是否成功開啟,該方法可以自動等待設置的時間后停止網頁加載,通過判斷已加載的元素來檢測網頁是否成功開啟,效果非常明顯,節約了大量自動化運行等待網頁加載的時間。本發明所用工具是基于開源軟件robotframework2.8.1開發的。【專利附圖】【附圖說明】[0015]圖1是本發明中測試終端通過被測網關連接互聯網組網圖。[0016]圖2是本發明的流程圖。【具體實施方式】[0017]下面結合實施例對本發明作進一步地詳細說明,但本發明的實施方式不限于此。[0018]在圖1中,作為測試終端的是一臺計算機,該計算機上設有網卡和瀏覽器,通過被測網關DUT可以拉入到互聯網,被測的網關產品可以是有線的網關產品也可以是無線網關產品,如果是無線網關產品,則在計算機中加入無線網卡,計算機通過無線網卡以及網關產品訪問互聯網。[0019]在計算機機中有網址文件(weburltable.xls),保存了網址和與其相對應的檢測元素,在開啟網頁時,如果接收到這些檢測元素,則可以判斷網頁開啟正常。網址文件中可以只保存一個常用的網址以及該網址對應的檢測元素,這樣以下的檢測過程中,計算機每次開啟同樣的網頁,在幾秒以后退出,可以通過檢測接收到該網頁的內容與檢測元素相比對,如果有這些元素,則可以認為該網頁本次開啟完成,否則可以認為開啟不成功。[0020]當然在網址文件中也可以有很多搜集的其它網址和相應的檢測元素,在開啟網頁時可以隨機選擇這些網址,當然,也可以依排列的順序選擇這些網址開啟網頁。[0021]在圖2中,具體實施流程如下:5101:在計算機上運行主程序,提供給用戶兩種連接模式選擇。模式1,有線網卡方式連接(對有線網卡配置DHCP方式獲取地址);模式2,無線網卡方式連接(通過SSID連接到被測網關廣品);5102:主程序讀取計算機上存放的網址文件(weburltable.xls)獲得網址列表和對應的檢測元素。檢測元素通常為網頁LOGO在網頁中的Xpath,通過robotframework2.8.1中Selenium庫來判斷(指定的元素來自于S102獲取的網址所對應的檢查元素)元素是否存在,并返回判斷結果。[0022]具體訪問方法是:主程序通過正確的路徑找到對應的文件和需要讀取的工作表,通過列標識獲取當前工作表指定列數據。[0023]具體代碼如下:Log${EXECDIR}#打印自動化用例目錄FileShouldExist${EXECDIR}\\${URL_TABLE}#確認測試用例存在。${excel-file-path}SetVariable${EXECDIR}\\${URL-TABLE}#初始化ExcelInitExcelexcel_custom-alias${excel-file-path}ExcelLoadBookExcelSwitchSheet變量表${datal}ExcelGetSheetRowValues1CommentLog${datal}#取"網址"${lstl-index}GetIndexFromList${datal}網址${col-no}Evaluate${lstl_index}+1${URL-values}ExcelGetSheetColValues${col-no}Log${URL-values}#取"元素檢查"${lst2-index}GetIndexFromList${datal}兀素檢查${col2_no}Evaluate${lst2-index}+1${Element_values}ExcelGetSheetColValues${col2-no}${col-index}Evaluate${lst2-index}+2#結果${col-mark-index}Evaluate${col_index}+1#備注SetGlobalVariable${col_index}SetGlobalVariable${col-mark-index}Log${Element_values}5103:使用FOR循環算法,將用戶要求測試打開網頁測試作為循環最大次數如200次,達到用戶要求次數即跳出循環。[0024]S104:計算機上需要預裝IE瀏覽器或火狐瀏覽器,可以根據需要選擇想要使用的瀏覽器。目前測試工具支持較好的是IE瀏覽器和火狐瀏覽器。測試工具自動控制PC打開網頁(這里傳進來S102獲取的網址中的隨機的一個網址),數秒后停止加載數秒后停止加載的方法是,采用VB腳本模擬數秒的時延再模擬鍵盤按下"ESC",按鍵Runasyncrun.vbs〃${CURDIR}\\${vbactivesendkey}${active-window-name}${inputstr_or_delaytime_or_inputkey}〃激活窗口,并輸入制定按鍵(帶自定義延時)【可選】當inputstr_or_delaytime_or_inputkey不為空時,關鍵字本身會有一個100(次)*1000(毫秒)的嘗試,等待active_window_name所指定的窗體出現。[0025]出現之后,才會執行輸入按鍵的動作。[0026]active_window_name:被激活窗口的標題,如果是火狐瀏覽器,則可以填入${EMPTY},IE必須填如正確的IP地址inputstr_or_delaytime_or_inputkey:當這個值為空或者不填時,關鍵字本身僅僅只是激活一個制定的窗體到前端而已。比如當這個值填入?1000表示自定義延遲1秒。填入{ENTER}表示按下ENTER組合使用廣500{ESC}?1000表示:先延時500毫秒,再按下ESC鍵,再延時1秒asyncrun.vbs的寫法dimCommandStrSetoArgs=WScript.ArgumentsForEachsInoArgsCommandStr=CommandStr&sNextSetoArgs=NothingSetobjShell=CreateObject("Wscript.Shell")objShell.RunCommandStrSetobjShell=NothingS105:判斷網頁是否開啟成功,通過檢查網頁中是否存在指定元素,通常為網頁LOGO在網頁中的Xpath,通過robotframework2.8.1中Selenium庫來判斷(指定的元素來自于S102獲取的網址所對應的檢查元素)元素是否存在,并返回判斷結果。5秒后關閉Firefox,并清除PC的DNS緩存。[0027]S106:測如果網頁開啟成功,將統計成功開啟網頁的參數加+1,測試的次數隨循環自增,在循環完后將最后得出的成功開啟網頁的參數除以總次數就算出了網頁開啟成功率的百分比;S107:測試結束,打印測試報告。【權利要求】1.一種網關產品壓力測試方法,該方法通過利用測試終端經過被測網關訪問互聯網,在測試終端上連續不斷地開啟網頁,通過檢測網頁的正確開啟率獲得壓力測試指標,其特征在于:在測試終端上設置網址文件,在網址文件中保存有網址列表和對應的檢測元素,利用瀏覽器自動開啟網頁,包括以下步驟:步驟1、測試終端通過被測網關連接到INTERNET中;步驟2、啟動測試終端的瀏覽器,從網址文件中選擇一個網址,加載該網頁;步驟3、在約定時間后停止加載,保留已加載的網頁內容,通過檢測網頁內容與該網頁的網址對應的檢測元素比較,判斷該網頁是否開啟成功;步驟4、重復步驟2和步驟3設定次數;步驟5、記錄每次操作的日志,將網頁開啟成功的總數換算為百分比,并顯示。2.根據權利要求1所述的網關產品壓力測試方法,其特征在于:所述的網址文件中僅僅保存有一個網址和該網址的檢測元素。3.根據權利要求1所述的網關產品壓力測試方法,其特征在于:所述的網址文件中至少保存有兩個網址和對應網址的檢測元素。4.根據權利要求3所述的網關產品壓力測試方法,其特征在于:所述的步驟2中是隨機獲取網址文件的一個網址,并加載網頁。5.根據權利要求1至4中任一所述的網關產品壓力測試方法,其特征在于:所述的步驟4設定次數為200次。6.-種網關產品壓力測試的裝置,包括測試終端,所述的測試終端通過被測網關產品連接互聯網,其特征在于:在所述的測試終端中包括:瀏覽器,存儲有網址列表和對應的檢測元素的網址文件,讀取所述的網址文件中的網址并將該網址加載到所述的瀏覽器的網頁加載模塊,計時模塊,退出網頁模塊,保存模塊,判斷模塊;所述的計時模塊在將網址加載到瀏覽器開啟網頁時計時開始,計時結束時觸發退出網頁模塊停止加載所述的網頁;所述的保存模塊保存已加載的網頁內容;判斷模塊檢測網頁內容中是否有所述的網址文件中的檢測元素,如果有則判斷網頁加載正常,否則判斷網頁加載不正常。7.根據權利要求6所述的網關產品壓力測試的裝置,其特征在于:還包括計數模塊,對所述的判斷模塊判斷網頁加載正常或者不正常進行計數,并計算出網頁開啟成功的百分比。8.根據權利要求6所述的網關產品壓力測試的裝置,其特征在于:所述的瀏覽器為:IE瀏覽器或火狐瀏覽器。【文檔編號】G06F17/30GK104156461SQ201410414282【公開日】2014年11月19日申請日期:2014年8月20日優先權日:2014年8月20日【發明者】羅淑芬申請人:深圳市共進電子股份有限公司