本發(fā)明涉及軟件測試領(lǐng)域,尤其涉及云壓力測試數(shù)據(jù)分配的方法、裝置、計算設(shè)備及壓力測試系統(tǒng)。
背景技術(shù):
:壓力測試就是在模擬網(wǎng)絡(luò)環(huán)境或真實網(wǎng)絡(luò)環(huán)境下,對被測軟件系統(tǒng)發(fā)起線性增長負載測試或者梯形增長負載測試,并記錄測試對被測軟件系統(tǒng)的影響。例如,為了對各種服務(wù)平臺(例如購物網(wǎng)站平臺、訂票平臺等)進行壓測,通常需要多個壓測負載機并行地對服務(wù)平臺進行訪問。例如,壓測系統(tǒng)被配置為模擬100萬用戶量級的壓測。壓測系統(tǒng)為分布式系統(tǒng),可以包括調(diào)度服務(wù)器和多個負載服務(wù)器(負載機)等。取決于本身的硬件配置和調(diào)度服務(wù)器的指示,負載機可以啟動一個或多個進程實例。每個進程實例可以包括至少一個用戶線程。通常,一個用戶線程可以執(zhí)行模擬一個用戶的訪問操作。通常,每個用戶線程執(zhí)行一次測試任務(wù)所需要的數(shù)據(jù)包括多個用戶線程通用的測試腳本數(shù)據(jù)和由本線程獨立使用的信息(例如,用戶名和密碼等)。由于壓測的用戶量級較大,因此如何保證每個用戶線程獲取獨立使用的數(shù)據(jù)是一個亟待解決的問題。技術(shù)實現(xiàn)要素:本發(fā)明提供一種新的測試數(shù)據(jù)分配的技術(shù)方案,有效的解決了上面至少一個問題。根據(jù)本發(fā)明的一個方面,提供一種測試數(shù)據(jù)分配的方法,適于在計算設(shè)備中執(zhí)行測試任務(wù)的線程中執(zhí)行。該計算設(shè)備包括來自調(diào)度服務(wù)器的測試配置信息。每個線程具有由該調(diào)度服務(wù)器所分配的線程編號。該方法包括下述步驟。根據(jù)線程編號,獲取測試配置信息中對應(yīng)本線程的配置信息子集。在每個測試請求的前置處理階段,從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值??蛇x地,在根據(jù)本發(fā)明的測試數(shù)據(jù)分配的方法中,測試請求包括下述中至少一種:http請求、https請求、ftp請求、Java對象請求、JDBC請求、LDAP請求和SOAP請求。線程編號包括計算設(shè)備標識字段、進程標識字段和線程標識字段??蛇x地,在根據(jù)本發(fā)明的測試數(shù)據(jù)分配的方法中,根據(jù)線程編號,獲取測試配置信息中對應(yīng)本線程的配置信息子集的步驟包括:根據(jù)下述公式確定所對應(yīng)配置信息子集的開始地址和結(jié)束地址:StartLine=MaxDataRow/MaxUser*用戶ID*EndLine=MaxDataRow/MaxUser*用戶ID*+BlockSize其中,MaxDataRow表示測試配置信息的總行數(shù),用戶ID*表示線程編號,MaxUser表示調(diào)度服務(wù)器所分配的線程總數(shù),BlockSize表示分配給每個線程的資源塊大小,StartLine表示開始地址,EndLine表示結(jié)束地址;將StartLine和EndLine所指向的區(qū)間存儲到緩沖區(qū)中并作為所對應(yīng)的配置信息子集??蛇x地,在根據(jù)本發(fā)明的測試數(shù)據(jù)分配的方法中,配置信息子集包括每個待賦值的參數(shù)名稱對應(yīng)的取值列表。在每個測試請求的前置處理階段,從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值的步驟包括:對于每個待賦值的參數(shù)名稱,從其所對應(yīng)的取值列表中提取一個未被本線程提取過的值作為相應(yīng)的參數(shù)值??蛇x地,在根據(jù)本發(fā)明的測試數(shù)據(jù)分配的方法中,從其所對應(yīng)的取值列表中提取一個未被本線程提取過的值作為相應(yīng)的參數(shù)值的操作包括:根據(jù)本線程從該取值列表中提取值的已有迭代次數(shù),按存儲順序從該取值列表中取出一個值作為相應(yīng)的參數(shù)值。可選地,在根據(jù)本發(fā)明的測試數(shù)據(jù)分配的方法中,參數(shù)名稱包括第一參數(shù)名和與第一參數(shù)名關(guān)聯(lián)的第二參數(shù)名。在每個測試請求的前置處理階段,從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值的步驟包括:按照位置順序或者隨機順序提取第一參數(shù)名對應(yīng)的第一參數(shù)值;提取與第一參數(shù)值關(guān)聯(lián)的第二參數(shù)值并賦值給第二參數(shù)名。根據(jù)本發(fā)明又一個方面,提供一種測試數(shù)據(jù)分配的裝置,適于駐留在計算設(shè)備中執(zhí)行測試任務(wù)的線程中。該計算設(shè)備包括來自調(diào)度服務(wù)器的測試配置信息。每個線程具有由該調(diào)度服務(wù)器所分配的線程編號。該裝置包括分配單元和提取單元。分配單元適于根據(jù)線程編號,獲取測試配置信息中對應(yīng)本線程的配置信息子集。提取單元適于在每個測試請求的前置處理階段,從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值。根據(jù)本發(fā)明又一個方面,提供一種計算設(shè)備,包括一個或多個執(zhí)行測試任務(wù)的線程。其中每個線程駐留有根據(jù)本發(fā)明的測試數(shù)據(jù)分配的裝置。根據(jù)本發(fā)明又一個方面,提供一種壓力測試系統(tǒng),包括調(diào)度服務(wù)器和根據(jù)本發(fā)明的計算設(shè)備。調(diào)度服務(wù)器適于解析測試任務(wù),并確定執(zhí)行測試任務(wù)的線程總數(shù)。綜上,根據(jù)本發(fā)明的技術(shù)方案,可以獲取執(zhí)行測試任務(wù)的線程所要獨立使用的配置信息子集。在此基礎(chǔ)上,根據(jù)本發(fā)明的技術(shù)方案可以按照順序(隨機)方式對參數(shù)名稱進行賦值,并且可以保證每次取值不重復(fù)。這樣,本發(fā)明的技術(shù)方案可以在壓力測試過程中,高實時性的參數(shù)化請求對象(例如,http請求或ftp請求等),并且能保證依次對不同請求對象中相同參數(shù)名賦以獨立使用的參數(shù)值(即不同請求中所賦值不同)。特別說明的是,本發(fā)明的技術(shù)方案對于高并發(fā)(用戶線程量級較大)的壓力測試,可以保證每個請求對象(即請求事務(wù))中參數(shù)值的唯一性,從而可以更真實地模擬高并發(fā)地訪問被測系統(tǒng)的過程。附圖說明為了實現(xiàn)上述以及相關(guān)目的,本文結(jié)合下面的描述和附圖來描述某些說明性方面,這些方面指示了可以實踐本文所公開的原理的各種方式,并且所有方面及其等效方面旨在落入所要求保護的主題的范圍內(nèi)。通過結(jié)合附圖閱讀下面的詳細描述,本公開的上述以及其它目的、特征和優(yōu)勢將變得更加明顯。遍及本公開,相同的附圖標記通常指代相同的部件或元素。圖1示出了根據(jù)本發(fā)明一些實施例的壓力測試系統(tǒng)100的框圖;圖2示出了根據(jù)本發(fā)明一些實施例的測試數(shù)據(jù)分配分配測試數(shù)據(jù)的方法200的流程圖;以及圖3示出了根據(jù)本發(fā)明一些實施例的測試數(shù)據(jù)分配的裝置300的示意圖。具體實施方式下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達給本領(lǐng)域的技術(shù)人員。圖1示出了根據(jù)本發(fā)明一些實施例的壓力測試系統(tǒng)100的框圖。如圖1所示,壓力測試系統(tǒng)100包括調(diào)度服務(wù)器110和多個執(zhí)行測試任務(wù)的計算設(shè)備120-1、...、120-N,其中N≥2。這里,調(diào)度服務(wù)器110可以對測試腳本進行解析,以確定所需要所要虛擬的用戶總數(shù)和執(zhí)行壓力測試的地理位置。取決于所確定的用戶總數(shù)、地理位置和可選用計算設(shè)備的負載情況,調(diào)度服務(wù)器110可以在多個計算設(shè)備中啟動對應(yīng)用戶總數(shù)的用戶線程。這里,計算設(shè)備也可以被稱為負載服務(wù)器。計算設(shè)備可以是物理獨立的設(shè)備,也可以是分布式云主機,本發(fā)明對此不做限制。另外,壓力測試系統(tǒng)100還適于向計算設(shè)備發(fā)送測試配置信息。這里,測試配置信息例如可以包括線程發(fā)送請求時所需要的用戶名和密碼等參數(shù)值。在根據(jù)本發(fā)明一個實施例中,壓力測試的用戶數(shù)量為1000萬。調(diào)度服務(wù)器110可以在多個計算設(shè)備中啟動1000萬執(zhí)行測試任務(wù)的用戶線程。典型地,按照測試腳本的執(zhí)行流程,壓力測試系統(tǒng)100例如可以劃分3個執(zhí)行階段,但不限于此。例如,3個執(zhí)行階段包括初始階段、運行階段和結(jié)束階段。3個執(zhí)行階段例如均為5分鐘。在初始階段,執(zhí)行測試任務(wù)的線程數(shù)從0線性增長為1000萬。在運行階段,執(zhí)行測試任務(wù)的線程數(shù)保持在1000萬。在結(jié)束階段,執(zhí)行測試任務(wù)的線程總數(shù)從1000萬逐漸降低到0。需要說明的是,上述壓力測試系統(tǒng)100的結(jié)構(gòu)僅僅為示例性說明,但不限于此。通常而言,每個線程在執(zhí)行測試期間,可以向被監(jiān)測軟件(例如為購物平臺服務(wù)器等)發(fā)送請求和接收相應(yīng)的響應(yīng)。每個發(fā)送的請求可以稱之為一個事務(wù)。這里,請求例如可以是http請求、https請求、ftp請求、Java對象請求、JDBC請求、LDAP請求和SOAP請求等,但不限于此。對于每個請求而言,線程可以執(zhí)行前置處理操作、發(fā)送請求操作和后置處理操作。以http為例,前置處理操作可以對待發(fā)送的請求對象進行參數(shù)化。發(fā)送請求操作是將請求發(fā)送到被監(jiān)測的軟件系統(tǒng)。后置處理操作是對相應(yīng)消息進行處理。例如,線程可以在后置處理操作階段提取各種變量值,但不限于此。在前置處理操作階段,線程可以調(diào)度測試配置信息,以便保證線程所獲取的配置信息具有唯一性。下面結(jié)合圖2對線程所執(zhí)行的測試數(shù)據(jù)分配的方法進行示例性說明。圖2示出了根據(jù)本發(fā)明一些實施例的測試數(shù)據(jù)分配的方法200的流程圖。方法200適于在執(zhí)行測試任務(wù)的計算設(shè)備(也可以稱之為負載服務(wù)器)中執(zhí)行。更具體而言,方法200適于在計算設(shè)備上每個執(zhí)行測試任務(wù)的線程中執(zhí)行。如圖2所示,方法200始于步驟S210。在步驟S210中,根據(jù)線程編號,獲取測試配置信息中對應(yīng)本線程的配置信息子集。這里,線程編號例如是由調(diào)度服務(wù)器所分配的標識。測試配置信息為來自調(diào)度服務(wù)器的包含每個線程所需要的參數(shù)信息的資源文件。在根據(jù)本發(fā)明一個實施例中,線程編號可以包括計算設(shè)備標識字段、進程標識字段和線程標識字段。當然,本發(fā)明的實施例也可以采用其他公知方式對線程進行編號,這里不再贅述。步驟S210可以根據(jù)線程編號確定供本線程唯一性使用的配置信息子集。這里,配置信息子集可以包括一個或多個參數(shù)名稱的取值。每個參數(shù)名稱可以對應(yīng)配置信息子集中一個取值列表。在根據(jù)本發(fā)明一個實施例中,步驟S210首先計算配置信息子集的開始地址和結(jié)束地址。具體地,步驟S210可以通過下述公式進行計算開始地址和結(jié)束地址。StartLine=MaxDataRow/MaxUser*用戶ID*EndLine=MaxDataRow/MaxUser*用戶ID*+BlockSize。其中,MaxDataRow表示測試配置信息的總行數(shù),用戶ID*表示線程編號,MaxUser表示調(diào)度服務(wù)器所分配的線程總數(shù),BlockSize表示分配給每個線程的資源塊大小,StartLine表示開始地址,EndLine表示結(jié)束地址。在上述計算的基礎(chǔ)上,步驟S210可以將StartLine和EndLine所指向的區(qū)間存儲到緩沖區(qū)(其為線程級緩沖)中并作為所對應(yīng)的配置信息子集。需要說明的是,取決于配置信息子集的數(shù)據(jù)結(jié)構(gòu),每個地址(可以開始地址和結(jié)束地址所處區(qū)間的任一個)指向的存儲單元可以被配置為包括一個參數(shù)名稱(也可以稱為一個參數(shù)項)的一個取值。另外,每個地址所指向的存儲單元也可以包括多個參數(shù)名稱的取值。這里,在每個地址被配置為存儲一個參數(shù)名稱的值時,該配置信息子集可以被認為是一個參數(shù)名稱的取值列表。在每個地址包括多個參數(shù)名稱的值時,該配置信息子集的每一列可以被認為是相應(yīng)參數(shù)名稱的取值列表。例如表1示出了根據(jù)本發(fā)明一個實施例的配置信息子集的至少一部分。表1用戶名身份證號碼辦公電話密碼問題答案張志峰1101011X101001002139777777笨蛋吳宇1101011X80010101174008305555小說席國柳1101011X80010102134008861888唱響世界李洪學(xué)1101011X800101031X1062782165BabyBaby楊志明1101011X80010103362134206500發(fā)現(xiàn)愛如表1所示,本實施例中配置信息子集包括4個參數(shù)名稱(用戶名、身份證號碼、辦公電話和密碼發(fā)問題答案)的取值列表。在確定配置信息子集的基礎(chǔ)上,方法200可以執(zhí)行步驟S220。在每個測試請求的前置處理階段,步驟S220從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值。根據(jù)本發(fā)明一個實施例,在步驟S220中,對于每個帶賦值的參數(shù)名稱,從相應(yīng)的配置信息子集中提取一個本線程未提取過的值作為相應(yīng)的參數(shù)值。例如,執(zhí)行方法200的線程依次執(zhí)行對第一請求和第二請求的前置處理操作。在對第一請求的前置處理操作中,步驟S220提取第一參數(shù)名稱對應(yīng)取值列表中一個值作為本請求中第一參數(shù)名稱的取值。在對第二請求的前置處理操作中,提取第一參數(shù)名稱對應(yīng)取值列表中另一個值(不同于第一請求中相應(yīng)取值)作為第二請求中第二參數(shù)名稱的取值。以表1為例,第一請求中用戶名例如為“張志峰”,第二請求中用戶名為“吳宇”。需要說明的是,步驟S220每次從一個參數(shù)名稱對應(yīng)取值列表中取值時,可以按照取值列表中值的存儲順序依次取值。根據(jù)本發(fā)明一個實施例,步驟S220對一個參數(shù)名稱賦值時,可以根據(jù)從該參數(shù)名稱的取值列表中取值的已有迭代次數(shù),按存儲順序取值。例如,已有迭代次數(shù)為2,本次對參數(shù)名稱賦值可以取第3個存儲單元(也可以稱為列表中第3行)中值。另外,步驟S220可以隨機從取值列表中取值,但不限于此。在根據(jù)本發(fā)明一個實施例中,執(zhí)行步驟S220的代碼格式示例如下:${DataRandomColumn(paramname,oldvalue,key,getdatatype,finaltype,startline,col,isRef,blockFlag,blockSize,blockStep,custparam)}paramname:參數(shù)名Oldvalue:原值key:數(shù)據(jù)keygetdatatype:iteration,meet,once(獲取數(shù)據(jù)方式:迭代,遇見,一次)finaltype:數(shù)據(jù)用盡處理方式,startline:起始行col:key對應(yīng)數(shù)據(jù)中的列值isRef:是否為引用函數(shù),默認為false,在TableRow中作為內(nèi)嵌函數(shù)設(shè)為trueboolblockFlag是否分塊intblockSize分塊大小intblockStep步長custparam:用戶參數(shù)在根據(jù)本發(fā)明又一個實施例中,至少一部分參數(shù)名稱具有關(guān)聯(lián)關(guān)系(例如登錄用戶名和密碼)。通常而言,配置信息子集中關(guān)聯(lián)參數(shù)的值也關(guān)聯(lián)存放。相應(yīng)地,相關(guān)聯(lián)的參數(shù)名稱(即關(guān)聯(lián)變量)的取值過程也具有關(guān)聯(lián)性。下面以相關(guān)聯(lián)的第一參數(shù)名和第二參數(shù)名為例進行說明。在步驟S220中,首先按照位置順序或者隨機順序提取第一參數(shù)名對應(yīng)的第一參數(shù)值。然后提取與第一參數(shù)值關(guān)聯(lián)的第二參數(shù)值,并賦值給第二參數(shù)名。根據(jù)本發(fā)明一個實施例,提取與第一參數(shù)值關(guān)聯(lián)的第二參數(shù)值的代碼示例如下:${DataRow(paramname,oldvalue,col,preParamName,${preFunctionName(paramname’,oldvalue’,key’,getdatatype’,finaltype’,startline’,col’,isRef’,custparam’)},custparam)}preParamName:被關(guān)聯(lián)參數(shù)名preFunctionName將被關(guān)聯(lián)的參數(shù)函數(shù)名稱:順序取值/隨機取值TableColumn/TableRandomColumnparamname’:參數(shù)名Oldvalue’:原值Key’:數(shù)據(jù)keyGetdatatype’:替換方式:迭代,遇見,一次Finaltype’:數(shù)據(jù)用盡處理方式,(隨機方式中默認送中斷無實際意義,只是為了通用)Startline’:起始行Col’:key對應(yīng)數(shù)據(jù)中的列值Custparam’:用戶參數(shù)以上內(nèi)嵌函數(shù)值軍用被關(guān)聯(lián)參數(shù)設(shè)定的原值。isRef’作為內(nèi)嵌函數(shù)設(shè)為true綜上,根據(jù)本發(fā)明的方法200可以確定執(zhí)行測試任務(wù)的線程所獨立使用的配置信息子集。在此基礎(chǔ)上,方法200可以按照順序(隨機)方式對參數(shù)名稱進行賦值,并且可以保證每次取值不重復(fù)。這樣,本發(fā)明的方法200可以在壓力測試過程中,高實時性地參數(shù)化請求對象(例如,http請求或ftp請求等),并且能保證依次對不同請求對象中相同參數(shù)名賦以唯一參數(shù)值(即不同請求中所賦值不同)。特別說明的是,本發(fā)明的方法200對于高并發(fā)(用戶線程量級較大)的壓力測試場景而言,可以保證請求對象(即請求事務(wù))中參數(shù)值的唯一性,從而可以更真實地模擬高并發(fā)式訪問被測系統(tǒng)的過程。圖3示出了根據(jù)本發(fā)明一些實施例的測試數(shù)據(jù)分配的裝置300的示意圖。裝置300適于駐留在計算設(shè)備中每個執(zhí)行測試任務(wù)的線程中。該計算設(shè)備包括來自調(diào)度服務(wù)器的測試配置信息。每個線程具有由該調(diào)度服務(wù)器所分配的線程編號。這里,線程編號例如可以包括計算設(shè)備標識字段、進程標識字段和線程標識字段,但不限于此。如圖3所示,裝置300包括分配單元310和提取單元320。分配單元310,適于根據(jù)線程編號,獲取測試配置信息中對應(yīng)本線程的配置信息子集。在根據(jù)本發(fā)明一個實施例中,分配單元310根據(jù)下述公式來計算所要確定的配置信息子集的開始地址和結(jié)束地址。StartLine=MaxDataRow/MaxUser*用戶ID*EndLine=MaxDataRow/MaxUser*用戶ID*+BlockSize。其中,MaxDataRow表示測試配置信息的總行數(shù),用戶ID*表示線程編號,MaxUser表示調(diào)度服務(wù)器所分配的線程總數(shù),BlockSize表示分配給每個線程的資源塊大小,StartLine表示開始地址,EndLine表示結(jié)束地址。在上述計算的基礎(chǔ)上,分配單元310可以將StartLine和EndLine所指向的區(qū)間存儲到緩沖區(qū)311中并作為所對應(yīng)的配置信息子集。這里,配置信息子集包括每個待賦值的參數(shù)名稱對應(yīng)的取值列表。提取單元320,適于在每個測試請求的前置處理階段,從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值。這里,測試請求可以是多種類型的請求事務(wù),例如http請求、https請求、ftp請求、Java對象請求、JDBC請求、LDAP請求和SOAP請求等,但不限于此。在根據(jù)本發(fā)明一個實施例中,對于每個待賦值的參數(shù)名稱,提取單元320從其所對應(yīng)的取值列表中提取一個未被本線程提取過的值作為相應(yīng)的參數(shù)值。例如,提取單元320可以根據(jù)本線程從該取值列表中提取值的已有迭代次數(shù),按存儲順序從該取值列表中取出一個值作為相應(yīng)的參數(shù)值。在根據(jù)本發(fā)明又一個實施例中,參數(shù)名稱包括第一參數(shù)名和與第一參數(shù)名關(guān)聯(lián)的第二參數(shù)名。提取單元320適于按照位置順序或者隨機順序提取第一參數(shù)名對應(yīng)的第一參數(shù)值。在此基礎(chǔ)上,提取單元320提取與第一參數(shù)值關(guān)聯(lián)的第二參數(shù)值并賦值給第二參數(shù)名。關(guān)于裝置300更具體的實施方式請參見方法200,這里不再贅述。A9、如A8所述的裝置,其中,所述測試請求包括下述中至少一種:http請求、https請求、ftp請求、Java對象請求、JDBC請求、LDAP請求和SOAP請求。A10、如A8或A9所述的裝置,其中,所述分配單元適于根據(jù)下述方式來根據(jù)線程編號,獲取測試配置信息中對應(yīng)本線程的配置信息子集:根據(jù)下述公式確定所對應(yīng)配置信息子集的開始地址和結(jié)束地址:StartLine=MaxDataRow/MaxUser*用戶ID*EndLine=MaxDataRow/MaxUser*用戶ID*+BlockSize其中,MaxDataRow表示測試配置信息的總行數(shù),用戶ID*表示線程編號,MaxUser表示調(diào)度服務(wù)器所分配的線程總數(shù),BlockSize表示分配給每個線程的資源塊大小,StartLine表示開始地址,EndLine表示結(jié)束地址;將StartLine和EndLine所指向的區(qū)間存儲到緩沖區(qū)中并作為所對應(yīng)的配置信息子集。A11、如A8-A10中任一項所述的裝置,其中,所述線程編號包括計算設(shè)備標識字段、進程標識字段和線程標識字段。A12、如A8-A11中任一項所述的裝置,其中,所述配置信息子集包括每個待賦值的參數(shù)名稱對應(yīng)的取值列表;所述提取單元適于根據(jù)下述方式在每個測試請求的前置處理階段,從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值:對于每個待賦值的參數(shù)名稱,從其所對應(yīng)的取值列表中提取一個未被本線程提取過的值作為相應(yīng)的參數(shù)值。A13、如A12所述的裝置,其中,所述提取單元適于根據(jù)下述方式執(zhí)行從其所對應(yīng)的取值列表中提取一個未被本線程提取過的值作為相應(yīng)的參數(shù)值的操作:根據(jù)本線程從該取值列表中提取值的已有迭代次數(shù),按存儲順序從該取值列表中取出一個值作為相應(yīng)的參數(shù)值。A14、如A8-A11中任一項所述的裝置,其中,所述參數(shù)名稱包括第一參數(shù)名和與第一參數(shù)名關(guān)聯(lián)的第二參數(shù)名,所述提取單元適于根據(jù)下述方式在每個測試請求的前置處理階段,從相應(yīng)的配置信息子集中提取該測試請求中每個待賦值的參數(shù)名稱對應(yīng)的參數(shù)值:按照位置順序或者隨機順序提取第一參數(shù)名對應(yīng)的第一參數(shù)值;提取與第一參數(shù)值關(guān)聯(lián)的第二參數(shù)值并賦值給第二參數(shù)名。在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下被實踐。在一些實例中,并未詳細示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。類似地,應(yīng)當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。本領(lǐng)域那些技術(shù)人員應(yīng)當理解在本文所公開的示例中的設(shè)備的模塊或單元或組件可以布置在如該實施例中所描述的設(shè)備中,或者可替換地可以定位在與該示例中的設(shè)備不同的一個或多個設(shè)備中。前述示例中的模塊可以組合為一個模塊或者此外可以分成多個子模塊。本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。此外,所述實施例中的一些在此被描述成可以由計算機系統(tǒng)的處理器或者由執(zhí)行所述功能的其它裝置實施的方法或方法元素的組合。因此,具有用于實施所述方法或方法元素的必要指令的處理器形成用于實施該方法或方法元素的裝置。此外,裝置實施例的在此所述的元素是如下裝置的例子:該裝置用于實施由為了實施該發(fā)明的目的的元素所執(zhí)行的功能。如在此所使用的那樣,除非另行規(guī)定,使用序數(shù)詞“第一”、“第二”、“第三”等等來描述普通對象僅僅表示涉及類似對象的不同實例,并且并不意圖暗示這樣被描述的對象必須具有時間上、空間上、排序方面或者以任意其它方式的給定順序。盡管根據(jù)有限數(shù)量的實施例描述了本發(fā)明,但是受益于上面的描述,本
技術(shù)領(lǐng)域:
內(nèi)的技術(shù)人員明白,在由此描述的本發(fā)明的范圍內(nèi),可以設(shè)想其它實施例。此外,應(yīng)當注意,本說明書中使用的語言主要是為了可讀性和教導(dǎo)的目的而選擇的,而不是為了解釋或者限定本發(fā)明的主題而選擇的。因此,在不偏離所附權(quán)利要求書的范圍和精神的情況下,對于本
技術(shù)領(lǐng)域:
的普通技術(shù)人員來說許多修改和變更都是顯而易見的。對于本發(fā)明的范圍,對本發(fā)明所做的公開是說明性的,而非限制性的,本發(fā)明的范圍由所附權(quán)利要求書限定。當前第1頁1 2 3