一種自動化測試方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機(jī)測試領(lǐng)域,具體說涉及一種自動化測試方法。
【背景技術(shù)】
[0002]隨著目前國內(nèi)企業(yè)軟件的復(fù)雜度日漸增加,對軟件的測試也越來越得到重視。自動化測試作為軟件測試的重要組成部分,是重點研宄的對象。
[0003]傳統(tǒng)的自動化測試需要使用一定的資源完成測試任務(wù)。包括:測試計算機(jī)、各種第三方自動化測試工具以及其他輔助資源等。在實際的工作中,由于公司環(huán)境參差不齊,以及某些偶然因素的存在,經(jīng)常會導(dǎo)致任務(wù)需要的資源和公司環(huán)境提供的資源不匹配的情況的發(fā)生。從而使得測試人員在完成任務(wù)的時候需要消耗大量人力去對資源進(jìn)行重新分配。例如常用的測試計算機(jī)被其他部門的人員臨時征用、有些硬件測試(DEMO)樣板數(shù)量非常少、有些第三方自動化測試工具只能在性能較好的計算機(jī)上才能運(yùn)行等。
[0004]另外,在每次測試完成后測試人員需要對結(jié)果行進(jìn)整合、歸檔。但是當(dāng)下一次執(zhí)行類似測試任務(wù)(迭代測試、回歸測試)時,測試人員仍然需要花費大量人力去做相同的工作。不僅工作內(nèi)容繁瑣,效率低下,而且易出錯。
[0005]因此,針對現(xiàn)有的自動化測試存在的問題,需要一種新的自動化測試方法以提高測試效率減少測試人力消耗并獲取更為理想的測試結(jié)果。
【發(fā)明內(nèi)容】
[0006]針對現(xiàn)有的自動化測試存在的問題,本發(fā)明提供了一種自動化測試方法,所述方法包含以下步驟:
[0007]資源配置步驟,針對執(zhí)行當(dāng)前測試的子節(jié)點生成相應(yīng)的子節(jié)點資源文件以及子節(jié)點任務(wù)腳本;
[0008]測試步驟,發(fā)送所述子節(jié)點資源文件以及所述子節(jié)點任務(wù)腳本到相應(yīng)的子節(jié)點,所述子節(jié)點根據(jù)獲取到的所述子節(jié)點資源文件以及所述子節(jié)點任務(wù)腳本執(zhí)行子節(jié)點測試任務(wù);
[0009]獲取測試結(jié)果步驟,獲取所述子節(jié)點測試任務(wù)的執(zhí)行結(jié)果并根據(jù)所述執(zhí)行結(jié)果獲取所述當(dāng)前測試的測試結(jié)果。
[0010]在一實施例中,所述資源配置步驟包含節(jié)點配置步驟,分別針對不同的所述子節(jié)點分配不同的所述子節(jié)點測試任務(wù)以獲取子節(jié)點測試任務(wù)分配結(jié)果,從而根據(jù)所述子節(jié)點測試任務(wù)分配結(jié)果生成相應(yīng)的所述子節(jié)點資源文件以及所述子節(jié)點任務(wù)腳本。
[0011]在一實施例中,調(diào)用自學(xué)習(xí)型算法為不同的所述子節(jié)點分配不同的所述子節(jié)點測試任務(wù)。
[0012]在一實施例中,所述節(jié)點配置步驟包含以下步驟:
[0013]收集并記錄所述子節(jié)點上的性能參數(shù)、所述子節(jié)點支持的終端集合、所述子節(jié)點執(zhí)行歷史子節(jié)點測試任務(wù)的時間消耗和/或所述子節(jié)點的占用情況;
[0014]根據(jù)所述性能參數(shù)、所述終端集合、所述時間消耗和/或所述占用情況為不同的所述子節(jié)點分配不同的所述子節(jié)點測試任務(wù)。
[0015]在一實施例中,在所述節(jié)點配置步驟中,根據(jù)其他工作人員對所述子節(jié)點的登陸次數(shù)來分析獲取所述子節(jié)點的占用情況。
[0016]在一實施例中,當(dāng)所述子節(jié)點被判定為經(jīng)常被占用時,不為所述子節(jié)點分配所述子節(jié)點測試任務(wù)。
[0017]在一實施例中,在所述節(jié)點配置步驟中,把所述子節(jié)點測試任務(wù)中耗時相對較長的所述子節(jié)點測試任務(wù),分配到所述子節(jié)點中處理能力相對較強(qiáng)的所述子節(jié)點。
[0018]在一實施例中,所述資源配置步驟包含腳本加載步驟,加載所述當(dāng)前測試的測試腳本,從而根據(jù)所述測試腳本生成所述當(dāng)前測試需要的資源與輸出指標(biāo)。
[0019]在一實施例中,所述資源配置步驟還包含通信檢測步驟,檢測所有預(yù)訂參加當(dāng)前測試的所述子節(jié)點的通信質(zhì)量。
[0020]在一實施例中,在所述測試步驟中,在所述子節(jié)點上安裝相應(yīng)的所述子節(jié)點資源文件從而根據(jù)所述子節(jié)點任務(wù)腳本開啟一個或多個終端執(zhí)行所述子節(jié)點測試任務(wù)。
[0021]在一實施例中,所述方法還包括存檔步驟,對所述測試結(jié)果進(jìn)行保存以便以后調(diào)用。
[0022]與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點:
[0023]本發(fā)明的測試方法可以基于當(dāng)前的硬件環(huán)境靈活調(diào)整測試流程,大大的調(diào)高了方法的應(yīng)用靈活性,減少了測試所需的硬件成本;
[0024]基于本發(fā)明的方法可以自動對測試結(jié)果進(jìn)行歸檔整理,從而減少了每次測試之后的人工設(shè)整理操作,大大減少了測試人員的工作量。
[0025]本發(fā)明的其它特征或優(yōu)點將在隨后的說明書中闡述。并且,本發(fā)明的部分特征或優(yōu)點將通過說明書而變得顯而易見,或者通過實施本發(fā)明而被了解。本發(fā)明的目的和部分優(yōu)點可通過在說明書、權(quán)利要求書以及附圖中所特別指出的步驟來實現(xiàn)或獲得。
【附圖說明】
[0026]附圖用來提供對本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實施例共同用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中:
[0027]圖1是根據(jù)本發(fā)明一實施例測試系統(tǒng)結(jié)構(gòu)簡圖;
[0028]圖2是根據(jù)本發(fā)明一實施例的方法執(zhí)行流程圖。
【具體實施方式】
[0029]以下將結(jié)合附圖及實施例來詳細(xì)說明本發(fā)明的實施方式,借此本發(fā)明的實施人員可以充分理解本發(fā)明如何應(yīng)用技術(shù)手段來解決技術(shù)問題,并達(dá)成技術(shù)效果的實現(xiàn)過程并依據(jù)上述實現(xiàn)過程具體實施本發(fā)明。需要說明的是,只要不構(gòu)成沖突,本發(fā)明中的各個實施例以及各實施例中的各個特征可以相互結(jié)合,所形成的技術(shù)方案均在本發(fā)明的保護(hù)范圍之內(nèi)。
[0030]在執(zhí)行傳統(tǒng)的自動化測試時,由于公司環(huán)境參差不齊,以及某些偶然因素的存在,經(jīng)常會導(dǎo)致任務(wù)需要的資源和公司環(huán)境提供的資源不匹配的情況的發(fā)生。從而使得測試人員在完成任務(wù)的時候需要消耗大量人力去對資源進(jìn)行重新分配。例如常用的測試計算機(jī)被其他部門的人員臨時征用、有些硬件測試樣板數(shù)量非常少、有些第三方自動化測試工具只能在性能較好的計算機(jī)上才能運(yùn)行等。
[0031]為了解決上述問題,本發(fā)明提出了一種新的自動化測試方法。本發(fā)明的自動化測試方法采用了管理分布式網(wǎng)絡(luò)。如圖1所示,本發(fā)明的測試系統(tǒng)包含調(diào)度服務(wù)器100,調(diào)度服務(wù)器100下屬包含多個子節(jié)點(圖1中子節(jié)點110、120以及130)。
[0032]每個子節(jié)點包含獨立的監(jiān)控管理模塊、腳本管理模塊、資源管理模塊以及輸出管理模塊。以子節(jié)點110為例,其包含監(jiān)控管理模塊111、腳本管理模塊112、資源管理模塊113以及輸出管理模塊114。
[0033]同時根據(jù)實際情況每個子節(jié)點下屬一個或多個不同的終端。例如圖1中子節(jié)點110下屬終端115、116以及117 ;子節(jié)點120下屬終端125以及126 ;子節(jié)點130下屬終端125、126、127 以及 128。
[0034]這里需要指出的是,圖1只是本發(fā)明的系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)示意圖。圖1所示的子節(jié)點數(shù)目以及終端數(shù)目并不代表系統(tǒng)的實際情況。
[0035]當(dāng)測試人員建立測試任務(wù)后,調(diào)度服務(wù)器100將測試任務(wù)分割并分配給各個子節(jié)點(110、120以及130)執(zhí)行。從而大大縮短了測試任務(wù)的執(zhí)行耗時,提高了測試效率。
[0036]在分配過程中,根據(jù)各個子節(jié)點的實際情況生成相應(yīng)的子節(jié)點資源文件以及子節(jié)點任務(wù)腳本。從而達(dá)到根據(jù)現(xiàn)有資源狀況優(yōu)化分配執(zhí)行自動化測試所需的資源。避免了任務(wù)需要的資源和公司環(huán)境提供的資源不匹配的情況的發(fā)生。本發(fā)明的測試系統(tǒng)可以基于當(dāng)前的硬件環(huán)境實現(xiàn),減少了測試所需的硬件成本。
[0037]接下來,基于流程圖來詳細(xì)描述本發(fā)明的自動化測試方法的詳細(xì)執(zhí)行過程。附圖的流程圖中示出的步驟可以在包含諸如一組計算機(jī)可執(zhí)行指令的計算機(jī)系統(tǒng)中執(zhí)行。雖然在流程圖中示出了各步驟的邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
[0038]如圖2所示,執(zhí)行本發(fā)明的自動化測試方法首先要執(zhí)行步驟S210資源配置步驟,針對執(zhí)行當(dāng)前測試的子節(jié)點生成相應(yīng)的子節(jié)點資源文件以及子節(jié)點任務(wù)腳本。
[0039]在本實施例中,首先進(jìn)行步驟S211,腳本加載步驟,加載當(dāng)前測試的測試腳本,從而根據(jù)測試腳本生成當(dāng)前測試需要的資源與輸出指標(biāo)。
[0040]然后就可以根據(jù)當(dāng)前測試需要的資源與輸出指標(biāo)為執(zhí)行當(dāng)前測試的每個子節(jié)點生成相應(yīng)的子節(jié)點資源文件以及子節(jié)點任務(wù)腳本。在實際運(yùn)行中,通常會基于當(dāng)前測試系統(tǒng)理想狀態(tài)來確定執(zhí)行測試任務(wù)的子節(jié)點。但是預(yù)訂要執(zhí)行測試任務(wù)的子節(jié)點的實際情況與理想情況有差別,不能保證所有預(yù)訂要執(zhí)行測試任務(wù)的子節(jié)點都可以正常執(zhí)行測試任務(wù)。因此在本實施例中,在生成子節(jié)點資源文件以及子節(jié)點任務(wù)腳本之前還要執(zhí)行步驟S212,通信檢測步驟,檢測所有預(yù)訂參加當(dāng)前測試的子節(jié)點的通信質(zhì)量。將通信質(zhì)量不達(dá)標(biāo)的子節(jié)點從預(yù)訂參加當(dāng)前測試的子節(jié)點序列中去除,從而保證測試的順利完成,提高整個自動化測試的穩(wěn)定性。
[0041]通信檢測(S212)完成后就可以對通信質(zhì)量達(dá)標(biāo)的子節(jié)點執(zhí)行節(jié)點配置步驟,分別針對不同的子節(jié)點分配不同的子節(jié)點測試任務(wù)以獲取子節(jié)點測試任務(wù)分配結(jié)果,從而根據(jù)子節(jié)點測試任務(wù)分配結(jié)果生