軟件測試的方法、設備及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種軟件測試的方法、設備及系統(tǒng),屬于軟件測試【技術領域】。所述方法包括:根據用戶數量確定各個測試設備的測試執(zhí)行器數量,并形成各個測試設備對應的ID組;將測試指令分發(fā)給各個測試設備,使各個測試設備通過各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令;接收并分析各個測試設備返回的執(zhí)行結果。本發(fā)明通過根據用戶數量確定各個測試設備的測試執(zhí)行器數量,使各個測試設備根據測試執(zhí)行器數量創(chuàng)建測試執(zhí)行器,并通過創(chuàng)建的測試執(zhí)行器同時執(zhí)行測試腳本,在多用戶同時操作的測試時,各個測試設備中創(chuàng)建的至少一個測試執(zhí)行器的和與用戶數量相同,減少了測試設備的數量,從而減少了軟件測試的成本,降低了軟件測試的實現(xiàn)復雜度。
【專利說明】軟件測試的方法、設備及系統(tǒng)
【技術領域】
[0001]本發(fā)明涉及軟件測試【技術領域】,特別涉及一種軟件測試的方法、設備及系統(tǒng)。
【背景技術】
[0002]軟件測試是模擬的軟件應用的真實環(huán)境,并在模擬的真實環(huán)境中對程序進行操作,以發(fā)現(xiàn)程序錯誤,衡量軟件質量,并對其是否能滿足設計要求進行評估的過程。軟件測試過程時所模擬的真實環(huán)境與軟件應用的真實環(huán)境越相似,越能發(fā)現(xiàn)軟件在實際應用中出現(xiàn)的程序錯誤,得到的軟件測試結果越能準確的衡量軟件的質量。因此,軟件測試的方法,是保證軟件測試結果能準確的衡量軟件質量的關鍵。
[0003]目前,軟件測試的方法為:獲取測試設備對應的測試腳本,該測試腳本是按測試內容的測試先后順序創(chuàng)建的,測試內容是根據被測試系統(tǒng)的真實應用環(huán)境確定的;測試設備以被測試系統(tǒng)的一個用戶的身份按照被測試系統(tǒng)的協(xié)議和應用程序編程接口訪問被測試系統(tǒng),依次執(zhí)行測試腳本中的測試內容對被測試系統(tǒng)進行測試。如果需要進行多用戶同時操作的測試,則根據用戶數量n,配置η臺相同的測試設備,且將測試腳本復制η份,使每臺測試設備均對應一份測試腳本,η臺測試設備同時執(zhí)行各自的測試腳本對被測試系統(tǒng)進行測試。
[0004]在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術至少存在以下問題:
[0005]對于需要進行多用戶同時操作的測試,則需要配置數量與同時操作的用戶數量相同的多臺相同的測試設備,增加了測試設備的數量,提升了軟件測試的成本,提高了軟件測試的實現(xiàn)復雜度。
【發(fā)明內容】
[0006]為了解決現(xiàn)有技術的問題,本發(fā)明實施例提供了一種軟件測試的方法、設備及系統(tǒng)。所述技術方案如下:
[0007]第一方面,提供了一種軟件測試的方法,所述方法包括:
[0008]獲取測試腳本,所述測試腳本至少包含測試操作的用戶數量及至少一條測試指令;
[0009]根據所述用戶數量確定各個測試設備的測試執(zhí)行器數量,并為各個測試設備分配測試執(zhí)行器數量個不同的ID(Identity,標識),形成各個測試設備對應的ID組;
[0010]將各個測試設備的測試執(zhí)行器數量及ID組發(fā)送給各個測試設備,使各個測試設備獲取所述測試執(zhí)行器數量個測試執(zhí)行器,并為每個測試執(zhí)行器分配ID組中的一個ID ;[0011 ] 將所述測試指令分發(fā)給各個測試設備,使各個測試設備通過各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,獲取并返回執(zhí)行結果;
[0012]接收并分析各個測試設備返回的執(zhí)行結果,得到測試結果。
[0013]結合第一方面,在第一方面的第一種可能的實現(xiàn)方式中,所述根據所述用戶數量確定各個測試設備的測試執(zhí)行器數量,包括:[0014]獲取測試設備的數量;
[0015]將所述用戶數量與所述測試設備的數量的商進行下取整的結果作為第一數量,并將所述第一數量與所述測試設備的數量的積作為第二數量;
[0016]確定所述用戶數量與所述第二數量是否相同;
[0017]如果所述用戶數量與所述第二數量相同,則將所述第一數量作為各個測試設備的測試執(zhí)行器數量。
[0018]結合第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,所述確定所述用戶數量與所述第二數量是否相同之后,還包括:
[0019]如果所述用戶數量與所述第二數量不相同,則將所述用戶數量與所述第二數量的差作為第三數量;
[0020]從所述測試設備中選擇所述第三數量個測試設備,將所述第一數量與預設數量的和作為選擇的各個測試設備的測試執(zhí)行器數量,并將所述第一數量作為未選擇的各個測試設備的測試執(zhí)行器數量。
[0021]第二方面,提供了一種軟件測試的設備,所述設備包括:
[0022]獲取模塊,用于獲取測試腳本,所述測試腳本至少包含測試操作的用戶數量及至少一條測試指令;
[0023]確定模塊,用于根據所述用戶數量確定各個測試設備的測試執(zhí)行器數量;
[0024]分配模塊,用于為各個測試設備分配測試執(zhí)行器數量個不同的標識ID,形成各個測試設備對應的ID組;
[0025]發(fā)送模塊,用于將各個測試設備的測試執(zhí)行器數量及ID組發(fā)送給各個測試設備,使各個測試設備獲取所述測試執(zhí)行器數量個測試執(zhí)行器,并為每個測試執(zhí)行器分配ID組中的一個ID ;
[0026]分發(fā)模塊,用于將所述測試指令分發(fā)給各個測試設備,使各個測試設備通過各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,獲取并返回執(zhí)行結果;
[0027]分析模塊,用于接收并分析各個測試設備返回的執(zhí)行結果,得到測試結果。
[0028]結合第二方面,在第二方面的第一種可能的實現(xiàn)方式中,所述確定模塊,包括:
[0029]獲取單元,用于獲取測試設備的數量;
[0030]第一確定單元,用于將所述用戶數量與所述獲取設備獲取的測試設備的數量的商進行下取整的結果作為第一數量;
[0031]第二確定單元,用于將所述第一確定單元確定的第一數量與所述獲取單元獲取的測試設備的數量的積作為第二數量;
[0032]第三確定單元,用于確定所述用戶數量與所述第二確定單元確定的第二數量是否相同;
[0033]第四確定單元,用于當所述第三確定單元確定所述用戶數量與所述第二數量相同,則將所述第一數量作為各個測試設備的測試執(zhí)行器數量。
[0034]結合第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,所述確定模塊,還包括:
[0035]第五確定單元,用于當所述用戶數量與所述第二數量不相同時,將所述用戶數量與所述第二數量的差作為第三數量;[0036]選擇單元,用于從所述測試設備中選擇所述第三數量個測試設備;
[0037]第六確定單元,用于將所述第一數量與預設數量的和作為選擇的各個測試設備的測試執(zhí)行器數量;
[0038]第七確定單元,用于將所述第一數量作為未選擇的各個測試設備的測試執(zhí)行器數量。
[0039]第三方面,提供了一種軟件測試的方法,所述方法包括:
[0040]接收測試控制設備發(fā)送的測試執(zhí)行器數量及ID組;
[0041 ] 獲取所述測試執(zhí)行器數量個測試執(zhí)行器;
[0042]為每個測試執(zhí)行器分配一個所述ID組中的ID ;
[0043]接收所述測試控制設備分發(fā)的測試指令,并將所述測試指令分發(fā)給各個測試執(zhí)行器,使各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,并返回執(zhí)行結果;
[0044]獲取各個測試執(zhí)行器返回的執(zhí)行結果,并將執(zhí)行結果返回給所述測試控制設備。
[0045]結合第三方面,在第三方面的第一種可能的實現(xiàn)方式中,所述獲取所述測試執(zhí)行器數量個測試執(zhí)行器,包括:
[0046]獲取測試執(zhí)行器的配置,根據所述配置獲取所述測試執(zhí)行器數量個測試執(zhí)行器。
[0047]第四方面,提供了一種軟件測試的設備,所述設備包括:
[0048]第一接收模塊,用于接收測試控制設備發(fā)送的測試執(zhí)行器數量及ID組;
[0049]第一獲取模塊,用于獲取所述測試執(zhí)行器數量個測試執(zhí)行器;
[0050]分配模塊,用于為每個測試執(zhí)行器分配一個所述ID組中的ID ;
[0051]第二接收模塊,用于接收所述測試控制設備分發(fā)的測試指令;
[0052]分發(fā)模塊,用于將所述第二接收模塊接收到的測試指令分發(fā)給各個測試執(zhí)行器,使各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,并返回執(zhí)行結果;
[0053]第二獲取模塊,用于獲取各個測試執(zhí)行器返回的執(zhí)行結果;
[0054]發(fā)送模塊,用于將所述第二獲取模塊獲取到的執(zhí)行結果返回給所述測試控制設備。
[0055]結合第四方面,在第四方面的第一種可能的實現(xiàn)方式中,所述第一獲取模塊,用于獲取測試執(zhí)行器的配置,根據所述配置獲取所述測試執(zhí)行器數量個測試執(zhí)行器。
[0056]第五方面,提供了一種軟件測試的系統(tǒng),所述系統(tǒng)包括:一個測試控制設備和至少一個測試設備;
[0057]所述測試控制設備,如第二方面所述的軟件測試的設備;
[0058]所述測試設備,如第四方面所述的軟件測試的設備。
[0059]本發(fā)明實施例提供的技術方案帶來的有益效果是:
[0060]通過根據用戶數量確定各個測試設備的測試執(zhí)行器數量,使各個測試設備根據測試執(zhí)行器數量創(chuàng)建測試執(zhí)行器,并通過創(chuàng)建的測試執(zhí)行器同時執(zhí)行測試腳本,使得在多用戶同時操作的測試時,各個測試設備中創(chuàng)建的至少一個測試執(zhí)行器的和與用戶數量相同,減少了測試設備的數量,從而減少了軟件測試的成本,降低了軟件測試的實現(xiàn)復雜度。
【專利附圖】
【附圖說明】
[0061]為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。
[0062]圖1是本發(fā)明實施例提供的軟件測試的方法的實施環(huán)境示意圖;
[0063]圖2是本發(fā)明實施例一提供的一種軟件測試的方法流程圖;
[0064]圖3是本發(fā)明實施例一提供的另一種軟件測試的方法流程圖;
[0065]圖4是本發(fā)明實施例二提供的一種軟件測試的方法流程圖;
[0066]圖5是本發(fā)明實施例三提供的一種軟件測試的設備結構示意圖;
[0067]圖6是本發(fā)明實施例三提供的一種確定模塊的結構示意圖;
[0068]圖7是本發(fā)明實施例三提供的另一種確定模塊的結構示意圖;
[0069]圖8是本發(fā)明實施例四提供的一種軟件測試的設備結構示意圖;
[0070]圖9是本發(fā)明實施例五提供的一種軟件測試的系統(tǒng)結構示意圖。
【具體實施方式】
[0071]為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合附圖對本發(fā)明實施方式作進一步地詳細描述。
[0072]本發(fā)明實施例提供了 一種軟件測試的方法,請參考圖1,其展示出了本發(fā)明實施例提供的軟件測試的方法所涉及的實施環(huán)境的結構示意圖。該實施環(huán)境包括:測試控制設備101、測試設備102及被測試設備103。
[0073]其中,測試控制設備101上運行有下述實施例三所述的軟件測試的設備。另外,該測試控制設備101可以是服務器,用于與被測試設備103及測試設備102結合來為用戶提供軟件測試的服務。
[0074]測試設備102上運行有如下面實施例四所述的軟件測試的設備。另外,該測試設備102可以是服務器,且測試設備102包含測試執(zhí)行器。測試設備102在接收到測試控制設備101分發(fā)的測試指令后,通過該測試執(zhí)行器訪問被測試設備103并執(zhí)行測試指令,以為用戶提供軟件測試的服務。
[0075]被測試設備103可以是運行有被測試系統(tǒng)的服務器。
[0076]上述測試控制設備101與測試設備102之間,測試設備102與被測試設備103之間均可以通過無線網絡或者有線網絡進行通信。
[0077]實施例一
[0078]結合上述實施環(huán)境,本實施例提供了一種軟件測試方法,參見圖2,本實施例提供的方法流程具體如下:
[0079]201:獲取測試腳本,測試腳本至少包含測試操作的用戶數量及至少一條測試指令;
[0080]202:根據用戶數量確定各個測試設備的測試執(zhí)行器數量,并為各個測試設備分配測試執(zhí)行器數量個不同的ID,形成各個測試設備對應的ID組;
[0081]進一步地,根據用戶數量確定各個測試設備的測試執(zhí)行器數量,包括:
[0082]獲取測試設備的數量;
[0083]將用戶數量與測試設備的數量的商進行下取整的結果作為第一數量,并將第一數量與測試設備的數量的積作為第二數量;
[0084]確定用戶數量與第二數量是否相同;
[0085]如果用戶數量與第二數量相同,則將第一數量作為各個測試設備的測試執(zhí)行器數量。
[0086]進一步地,確定用戶數量與第二數量是否相同之后,還包括:
[0087]如果用戶數量與第二數量不相同,則將用戶數量與第二數量的差作為第三數量;
[0088]從測試設備中選擇第三數量個測試設備,將第一數量與預設數量的和作為選擇的各個測試設備的測試執(zhí)行器數量,并將第一數量作為未選擇的各個測試設備的測試執(zhí)行器數量。
[0089]203:將各個測試設備的測試執(zhí)行器數量及ID組發(fā)送給各個測試設備,使各個測試設備獲取測試執(zhí)行器數量個測試執(zhí)行器,并為每個測試執(zhí)行器分配ID組中的一個ID ;
[0090]204:將測試指令分發(fā)給各個測試設備,使各個測試設備通過各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,獲取并返回執(zhí)行結果;
[0091]205:接收并分析各個測試設備返回的執(zhí)行結果,得到測試結果。
[0092]本實施例還提供了另一種軟件測試方法,參見圖3,本實施例提供的方法流程具體如下:
[0093]301:接收測試控制設備發(fā)送的測試執(zhí)行器數量及ID組;
[0094]302:獲取測試執(zhí)行器數量個測試執(zhí)行器;
[0095]進一步地,獲取測試執(zhí)行器數量個測試執(zhí)行器,包括:
[0096]獲取測試執(zhí)行器的配置,根據配置獲取測試執(zhí)行器數量個測試執(zhí)行器。
[0097]303:為每個測試執(zhí)行器分配一個ID組中的ID ;
[0098]304:接收測試控制設備分發(fā)的測試指令,并將測試指令分發(fā)給各個測試執(zhí)行器,使各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,并返回執(zhí)行結果;
[0099]305:獲取各個測試執(zhí)行器返回的執(zhí)行結果,并將執(zhí)行結果返回給測試控制設備。
[0100]本發(fā)明實施例提供的方法,通過根據用戶數量確定各個測試設備的測試執(zhí)行器數量,使各個測試設備根據測試執(zhí)行器數量創(chuàng)建測試執(zhí)行器,并通過創(chuàng)建的測試執(zhí)行器同時執(zhí)行測試腳本,使得在多用戶同時操作的測試時,各個測試設備中創(chuàng)建的至少一個測試執(zhí)行器的和與用戶數量相同,減少了測試設備的數量,從而減少了軟件測試的成本,降低了軟件測試的實現(xiàn)復雜度。
[0101]為了更加清楚地闡述上述實施例提供的一種軟件測試的方法,結合上述實施例的內容,以如下實施例二為例,對一種軟件測試的方法進行詳細說明,詳見如下實施例二:
[0102]實施例二
[0103]本發(fā)明實施例提供了一種軟件測試的方法,為了便于理解,結合上述實施例一的內容,以測試控制設備為服務器A,測試設備為2個服務器,分別是服務器BI和服務器B2,測試腳本I中包含三條測試指令,分別是指令Cl:往緩存添加信息A、指令C2:緩存讀取信息A和指令C3:以順序執(zhí)行的方式執(zhí)行指令C2為例,對本實施例提供的方法進行詳細地舉例說明。參見圖4,本實施例提供的方法流程包括:
[0104]401:測試控制設備獲取測試腳本;
[0105]其中,測試腳本至少包含測試操作的用戶數量及至少一條測試指令。[0106]本實施例不對測試控制設備獲取測試腳本的具體方法進行限定。包括但不限于:如果用戶通過輸入設備輸入測試腳本,則測試控制設備獲取用戶輸入的測試腳本;如果用戶通過其它存儲設備傳入測試腳本,則測試控制設備獲取用戶傳入的測試腳本。
[0107]402:測試控制設備根據用戶數量確定各個測試設備的測試執(zhí)行器數量;
[0108]本實施例不對測試控制設備根據用戶數量確定各個測試設備的測試執(zhí)行器數量的具體方法進行限定。例如,通過如下五個步驟確定各個測試設備的測試執(zhí)行器數量。
[0109]步驟一:獲取測試設備的數量;
[0110]由于在通過本實施例提供的軟件測試的方法進行軟件測試之前會配置各個測試設備及測試控制設備,在配置測試控制設備時,會設置該測試控制設備對應的各個測試設備的ID,以讓測試控制設備根據各個測試設備的ID與各個測試設備進行通信,實施本實施例提供的軟件測試的方法。因此,將測試控制設備中設置的測試設備ID的數量確定為測試設備的數量。除此之外,還可以通過其它方式獲取測試設備的數量,本實施例不對獲取測試設備的數量的具體方法進行限定。
[0111]步驟二:將用戶數量與測試設備的數量的商進行下取整的結果作為第一數量,并將第一數量與測試設備的數量的積作為第二數量;
[0112]例子一:以用戶數量為10個,測試設備的數量為2個為例,將^10/2」=5作為第一
數量,將5X2 = 10作為第二數量。
[0113]例子二:以用戶數量為9個,測試設備的數量為2個為例,將p/2」= 4作為第一數
量,將4X2 = 8作為第二數量。
[0114]步驟三:確定用戶數量與第二數量是否相同,如果用戶數量與第二數量相同,則執(zhí)行步驟四,如果用戶數量與第二數量不相同,則執(zhí)行步驟五;
[0115]為了便于描述,本實施例及后續(xù)實施例將用戶數量與測試設備的數量的商作為第四數量為例。由于步驟二中第一數量是對第四數量進行下取整得到的,如果第四數量為整數,則第一數量與第四數量相同,以至第一數量與測試設備的數量的積即為第四數量與測試設備的數量的積,而第四數量與測試設備的數量的積為用戶數量,因此,使得此種情況下,作為第一數量與測試設備的數量的積的第二數量與用戶數量相同。
[0116]如果第四數量為非整數,則第一數量與第四數量不相同,以至第一數量與測試設備的數量的積與第四數量與測試設備的數量的積不相同,而第四數量與測試設備的數量的積為用戶數量,因此,使得此種情況下,作為第一數量與測試設備的數量的積的第二數量與用戶數量不相同。
[0117]以步驟二中的兩個例子為例,對于例子一,用戶數量與第二數量相同,均為10,執(zhí)行步驟三之后執(zhí)行步驟四。對于例子二,用戶數量為10,而第二數量為9,執(zhí)行步驟三之后執(zhí)行步驟五。
[0118]步驟四:將第一數量 作為各個測試設備的測試執(zhí)行器數量;
[0119]以步驟二中的例子一為例,將5作為服務器BI和服務器B2的測試執(zhí)行器數量。
[0120]需要說明的是,由于每個測試設備的測試執(zhí)行器數量均為第一數量,因此,測試執(zhí)行器的總數量為測試設備的數量與第一數量的積。而第一數量與第四數量相同,且第四數量與測試設備的數量的積為用戶數量,因此測試執(zhí)行器的總數量與用戶數量相同。從而,在不增加測試設備的情況下,通過本發(fā)明實施例提供的軟件測試方法進行測試時,實際執(zhí)行測試操作的測試執(zhí)行器數量與測試腳本中包含的測試操作的用戶數量相同。
[0121]步驟五:將用戶數量與第二數量的差作為第三數量,從測試設備中選擇第三數量個測試設備,將第一數量與預設數量的和作為選擇的各個測試設備的測試執(zhí)行器數量,并將第一數量作為未選擇的各個測試設備的測試執(zhí)行器數量。
[0122]本實施例不對從測試設備中選擇第三數量個測試設備的具體選擇標準進行限定。例如,從測試設備中隨機選擇第三數量個測試設備。
[0123]以步驟二中的例子二,預設數量為I為例,將10-9 = I作為第三數量,從測試設備中隨機選擇I個測試設備,如服務器BI,將4+1 = 5作為服務器BI的測試執(zhí)行器數量,將4作為服務器B2的數量。
[0124]當然,預設數量還可以為其它數值,只要保證根據預設數量確定的各個測試設備的測試執(zhí)行器數量的總和與用戶數量相同即可,本實施例不對預設數量的具體數值進行限定。
[0125]403:測試控制設備為各個測試設備分配測試執(zhí)行器數量個不同的ID,形成各個測試設備對應的ID組;
[0126]以用戶數量為10個,各個測試設備分配測試執(zhí)行器數量均為5為例,服務器A為服務器BI分配2個不同的ID,即IDU ID2、ID3、ID4和ID5,形成服務器BI對應的ID組:ID組I。為服務器B2分配2個不同的ID,即ID6、ID7、ID8、ID9和ID10,形成服務器B2對應的ID組:ID組2。
[0127]當然,測試控制設備為各個測試設備分配的ID的具體名稱還可以為其它名稱,本實施例不對測試控制設備為各個測試設備分配的ID的具體名稱進行限定。測試設備對應的ID組的具體名稱還可以為其它名稱,本實施例不對測試設備對應的ID組的具體名稱進行限定。
[0128]404:測試控制設備將各個測試設備的測試執(zhí)行器數量及ID組發(fā)送給各個測試設備;
[0129]以步驟403中的例子為例,服務器A將為服務器BI分配的測試執(zhí)行器數量5和ID組I發(fā)送給服務器BI ;將為服務器B2分配的測試執(zhí)行器數量5和ID組2發(fā)送給服務器B2。
[0130]405:測試設備接收測試控制設備發(fā)送的測試執(zhí)行器數量及ID組;
[0131]由于本實施例提供的軟件測試的方法中,測試設備為至少一個,為了便于說明,本實施例及后續(xù)實施例中針對測試設備在本發(fā)明實施例提供的軟件測試的方法中具體執(zhí)行過程,均以任一測試設備為例進行解釋說明,如服務器BI。對于其它測試設備,如服務器B2,在具體實施時可以按照本實施例及后續(xù)實施例提供的實施過程進行實施,以完成本實施例提供的軟件測試的方法。
[0132]例如,服務器BI接收服務器A發(fā)送的測試執(zhí)行器數量:5及ID組I。
[0133]406:測試設備獲取測試執(zhí)行器數量個測試執(zhí)行器;
[0134]由于在通過本實施例提供的軟件測試的方法進行軟件測試之前會軟件測試相關人員根據被測試系統(tǒng)的協(xié)議、被測試系統(tǒng)的API (Application Programming Interface,應用程序編程接口)等確定測試執(zhí)行器的配置,以方便測試執(zhí)行器根據該配置與被測試系統(tǒng)連接進行軟件測試。因此,測試設備可以獲取預先確定的測試執(zhí)行器的配置,根據測試執(zhí)行器的配置獲取測試執(zhí)行器數量個測試執(zhí)行器。除此之外,還可以通過其它方式獲取測試執(zhí)行器數量個測試執(zhí)行器,本實施例不對獲取測試執(zhí)行器數量個測試執(zhí)行器具體方法進行限定。
[0135]由于測試執(zhí)行器是根據預先確定的測試執(zhí)行器的配置獲取的,因此,測試執(zhí)行器具有被測試系統(tǒng)客戶端的通信、讀取、顯示等應用功能,但不具有被測試系統(tǒng)客戶端的字體、顯示方式等功能,因此測試執(zhí)行器可以作為被測試系統(tǒng)的簡化版客戶端。同時也由于測試執(zhí)行器具有被測試系統(tǒng)客戶端的通信、讀取等核心應用功能,減少了測試執(zhí)行器所需的資源,使得一臺測試設備可以獲取多個測試執(zhí)行器。例如,一臺測試設備獲取幾百個測試執(zhí)行器。
[0136]另外,測試執(zhí)行器具有的功能除上述功能之外,還可以根據軟件測試的測試內容不同進行調整,使得測試執(zhí)行器能夠具有被測試系統(tǒng)真實客戶端具有的功能。例如,軟件測試內容中需要測試讀取功能,但不需要測試顯示功能,則在測試執(zhí)行器中添加讀取功能,刪除顯示功能。也由于測試執(zhí)行器具有上述功能“定制”特性,使得本實施例提供的測試執(zhí)行器可以針對性的測試各種功能,擴展了通過本實施例提供軟件測試的方法進行軟件測試的實施環(huán)境。本實施例不對測試執(zhí)行器具有的具體功能進行限定。
[0137]此外,對于根據測試執(zhí)行器的配置獲取測試執(zhí)行器數量個測試執(zhí)行器的具體實現(xiàn)方式,可以開啟測試執(zhí)行器數量個進程,每個進程對應一個測試執(zhí)行器,且各個測試執(zhí)行器的配置均為獲取到的測試執(zhí)行器的配置,通過進程控制測試執(zhí)行器執(zhí)行測試指令,完成軟件測試。
[0138]例如,服務器BI開啟5個進程,每個進程對應一個測試執(zhí)行器。
[0139]407:測試設備為每個測試執(zhí)行器分配一個ID組中的ID ;
[0140]例如,服務器BI為測試執(zhí)行器I分配ID1,為測試執(zhí)行器2分配ID2,為測試執(zhí)行器3分配ID3,為測試執(zhí)行器4分配ID4,為測試執(zhí)行器5分配ID5。當然,還可以根據其它分配原則為測試執(zhí)行器分配ID組中的ID,本實施例不對為測試執(zhí)行器分配ID組中的ID的具體分配原則進行限定。測試執(zhí)行器的名稱還可以為其它名,本實施例不對測試執(zhí)行器的具體名稱進行限定。
[0141]408:測試控制設備將測試指令分發(fā)給各個測試設備;
[0142]其中,測試指令包括操作指令和元指令。操作指令用于描述對被測系統(tǒng)發(fā)起什么操作,而元指令用于描述按什么規(guī)則執(zhí)行操作指令。
[0143]例如:指令Cl和指令C2為操作指令,指令C3為元指令。
[0144]由于測試指令是包含在測試腳本中的,因此,測試控制設備先解析測試腳本得到測試指令,再將解析出的測試指令分發(fā)給各個測試設備。
[0145]以測試腳本I為例,服務器A解析出測試腳本I中的指令Cl、指令C2和指令C3,并將指令Cl、指令C2和指令C3分發(fā)給服務器BI和服務器B2。
[0146]另外,如果測試腳本中還包含測試指令的分發(fā)方式,則測試控制設備解析出測試指令后按照測試指令的分發(fā)方式將測試指令分發(fā)給滿足測試指令的分發(fā)方式的各個測試設備。除此之外,測試控制設備還可以通過其它方法將測試指令分發(fā)給各個測試設備,本實施例不對測試控制設備將測試指令分發(fā)給各個測試設備的具體方法進行限定。[0147]以測試腳本2中包含指令C4、指令C5和測試指令的分發(fā)方式:C4由IDl和ID3執(zhí)行為例,服務器A解析出測試腳本I中的指令C4和指令C5,確定滿足測試指令的分發(fā)方式的測試設備為I個,即包含IDl和ID3的ID組I對應的服務器BI,并將指令C4分發(fā)給服務器BI,將指令C5分發(fā)給服務器BI和B2。即將指令C4和C5分發(fā)給服務器BI,將指令C5分發(fā)給服務器B2。
[0148]其中,測試指令的分發(fā)方式還可以為其它內容,本實施例不對測試指令的分發(fā)方式的具體內容進行限定。滿足測試指令的分發(fā)方式的測試設備還可以為其它測試設備,本實施例不對滿足測試指令的分發(fā)方式的具體測試設備進行限定。滿足測試指令的分發(fā)方式的測試設備的數量還可以為其它數量,本實施例不對滿足測試指令的分發(fā)方式的測試設備的具體數量進行限定。
[0149]此外,對于測試腳本中還包含測試指令的分發(fā)方式的情況,為了使測試設備能夠按照測試指令的分發(fā)方式執(zhí)行指令,測試控制設備除了將測試指令分發(fā)給各個測試設備之夕卜,還會將測試指令的分發(fā)方式一并分發(fā)給測試設備,使測試設備根據測試指令的分發(fā)方式將指令分發(fā)給各個測試執(zhí)行器。
[0150]本實施例不對測試控制設備將測試指令的分發(fā)方式分發(fā)給測試設備的具體方式進行限定。例如:將測試指令的分發(fā)方式分發(fā)給各個測試設備,或者將測試指令的分發(fā)方式分發(fā)給滿足該分發(fā)方式的測試設備。
[0151 ] 仍以測試腳本2為例,服務器A除將指令C4和C5分發(fā)給服務器BI,將指令C5分發(fā)給服務器B2之外,還將測試指令的分發(fā)方式:C4由IDl和ID3執(zhí)行分發(fā)給服務器BI和服務器B2。
[0152]或者,服務器A除將指令C4和C5分發(fā)給服務器BI,將指令C5分發(fā)給服務器B2之夕卜,僅將測試指令的分發(fā)方式:C4由IDl和ID3執(zhí)行分發(fā)給滿足該分發(fā)方式的服務器BI。
[0153]409:測試設備接收測試控制設備分發(fā)的測試指令,并將測試指令分發(fā)給各個測試執(zhí)行器;
[0154]以服務器BI接收到服務器A分發(fā)的指令Cl、指令C2和指令C3為例,BI將指令Cl、指令C2和指令C3分發(fā)給測試執(zhí)行器I至測試執(zhí)行器5。
[0155]另外,如果測試設備除接收測試控制設備分發(fā)的測試指令之外,還接收到測試指令的分發(fā)方式,則測試設備按照測試指令的分發(fā)方式將測試指令分發(fā)給滿足測試指令的分發(fā)方式的各個測試執(zhí)行器。除此之外,測試控制設備還可以通過其它方法將測試指令分發(fā)給各個測試設備,本實施例不對測試控制設備將測試指令分發(fā)給各個測試設備的具體方法進行限定。
[0156]以服務器BI接收到服務器A分發(fā)的指令C4、指令C5和測試指令的分發(fā)方式:C4由IDl和ID3執(zhí)行為例,BI將指令C4分發(fā)給ID為IDl的測試執(zhí)行器I和ID為ID3的測試執(zhí)行器3,將指令C5分發(fā)給測試執(zhí)行器I至測試執(zhí)行器5。
[0157]410:測試執(zhí)行器執(zhí)行分發(fā)的測試指令,并返回執(zhí)行結果。
[0158]測試執(zhí)行器將接收到的測試指令放入對應的緩存中,根據預先配置的被測試系統(tǒng)的API向被測試系統(tǒng)發(fā)起請求操作,在成功發(fā)起請求后從緩存中讀取并執(zhí)行測試指令。
[0159]以測試執(zhí)行器I接收到服務器BI分發(fā)的指令Cl、指令C2和指令C3為例,測試執(zhí)行器I根據預先配置的被測試系統(tǒng)的API向被測試系統(tǒng)發(fā)起請求操作,執(zhí)行緩存中的指令Cl、指令C2和指令C3,并將執(zhí)行結果返回給服務器BI。
[0160]411:測試設備獲取各個測試執(zhí)行器返回的執(zhí)行結果,并將執(zhí)行結果返回給測試控制設備;
[0161]測試設備獲取各個測試執(zhí)行器返回的執(zhí)行結果后,會將各個執(zhí)行結果做統(tǒng)計,再將統(tǒng)計結果返回給測試控制設備。本實施例不對將各個執(zhí)行結果做統(tǒng)計的具體內容進行限定,例如,做累加統(tǒng)計。
[0162]例如,服務器BI將測試執(zhí)行器I至測試執(zhí)行器5返回的測試結果,將各個測試結果做累加統(tǒng)計,并將累加結果返回給服務器A。
[0163]412:測試控制設備接收并分析各個測試設備返回的執(zhí)行結果,得到測試結果。
[0164]本實施例不對測試控制設備對各個測試設備返回的執(zhí)行結果的具體分析內容進行限定,例如:分析各個測試指令的執(zhí)行成功次數、各個測試指令的執(zhí)行失敗次數、各個測試指令的最小響應時長、各個測試指令的最大響應時長、各個測試指令的平均響應時長、所有測試指令的最小總響應時長等。
[0165]本實施例也不對得到的測試結果的具體表現(xiàn)形式進行限定。例如:根據測試結果形成統(tǒng)計報表,或者根據測試結果形成分析報告。
[0166]上述內容僅以測試控制設備為服務器A,測試設備為2個服務器,分別是服務器BI和服務器B2,測試腳本I中包含三條測試指令,分別是指令Cl:往緩存添加信息A、指令C2:緩存讀取信息A和指令C3:以順序執(zhí)行的方式執(zhí)行指令C2為例,對如何應用本實施例提供的軟件測試的方法進行軟件測試做出解釋說明。其中,測試該控制設備的名稱還可以為其它名稱,本實施例不對測試該控制設備的具體名稱進行限定;測試設備的數量還可以為其它數量,本實施例不對測試設備的具體數量進行限定;測試設備的名稱還可以為其它名稱,本實施例不對測試設備的具體名稱進行限定;測試腳本名稱還可以為其它名稱,本實施例不對測試腳本的具體名稱進行限定;測試腳本中包含的測試指令的數量還可以為其它數量,本實施例不對測試腳本中包含的測試指令的具體數量進行限定;測試指令的名稱還可以為其它名稱,本實施例不對測試指令的具體名稱進行限定;測試指令的具體內容還可以為其它內容,本實施例不對測試指令的具體內容進行限定。
[0167]另外,本實施例提供的軟件測試的方法是通過二級控制的方式完成軟件測試,SP應用本實施例提供的軟件測試方法的測試控制設備控制至少一個測試設備,再由各個測試設備控制其內的至少一個測試執(zhí)行器執(zhí)行測試指令,完成軟件測試。由于二級控制的方式具有實現(xiàn)簡單、容易擴展的特點,因此擴展了本實施例提供的軟件測試的方法的實施環(huán)境。
[0168]此外,由于測試執(zhí)行器執(zhí)行測試指令的方式可以為接收到測試指令后立即執(zhí)行;也可以為接收到測試指令后將測試指令存儲到緩存中,再從緩存中讀取測試指令并執(zhí)行。根據測試執(zhí)行器執(zhí)行測試指令的不同方法還可以構造出除上述環(huán)境之外,其它實施環(huán)境,本實施例不對應用本實施例提供的軟件測試的方法進行軟件測試的具體實施環(huán)境進行限定。
[0169]例如第一種實施環(huán)境:構造高并發(fā)的壓力測試環(huán)境。
[0170]以壓力測試環(huán)境為群組聊天,在群組里同時收到1000條“你好”的消息為例,構造方法可以為:配置5個測試設備,測試操作的用戶數量為1000個,測試指令為發(fā)送一條“你好”消息。測試控制設備確定每個測試設備的測試執(zhí)行器數量為200個,并將測試指令分別發(fā)送給5個測試設備,則每個測試設備控制200個測試執(zhí)行器在加入同一群組后,同時發(fā)送一條“你好”消息。此時被測試群組同一時刻會收到分別來自5個測試設備中1000個測試執(zhí)行器發(fā)送的1000條“你好”消息,實現(xiàn)對被測系統(tǒng)的服務器和客戶端的高并發(fā)的壓力測試。
[0171]除此之外,還可以通過其它構造方法構造高并發(fā)的壓力測試環(huán)境,本實施例不對構造高并發(fā)的壓力測試環(huán)境的具體構造方法進行限定。
[0172]例如第二種實施環(huán)境:構建復雜的測試環(huán)境。
[0173]以復雜的測試環(huán)境為有200個用戶在群組里隨機發(fā)各種不同的消息為例,構造方法可以為:配置I個測試設備,測試操作的用戶數量為200個,測試指令為200條各種操作的操作指令,如:測試指令I為“每隔30秒發(fā)送文字:你好”,測試指令2為“每隔40秒發(fā)送一個表情”,等等。測試控制設備將200條測試指令發(fā)送給測試設備,測試設備在獲取到200個測試執(zhí)行器后,將測試指令I轉發(fā)給執(zhí)行器1,將測試指令2轉發(fā)給執(zhí)行器2,依次類推。每個測試執(zhí)行器均在各自的緩存中存儲測試設備轉發(fā)的測試指令,并執(zhí)行測試指令。例如:測試執(zhí)行器I執(zhí)行緩存中的測試指令1:等待30秒后發(fā)送文字:你好,發(fā)送完成后再執(zhí)行緩存中的測試指令1,如此執(zhí)行下去。此時200個測試執(zhí)行器讀取緩存中的指令,執(zhí)行多次之后,則可構建一個多用戶隨機對被測試系統(tǒng)進行操作的測試環(huán)境。
[0174]除此之外,還可以通過其它構造方法構建復雜的測試環(huán)境,本實施例不對構建復雜的測試環(huán)境的具體構建方法進行限定。
[0175]本實施例提供的方法,通過根據用戶數量確定各個測試設備的測試執(zhí)行器數量,使各個測試設備根據測試執(zhí)行器數量創(chuàng)建測試執(zhí)行器,并通過創(chuàng)建的測試執(zhí)行器同時執(zhí)行測試腳本,使得在多用戶同時操作的測試時,各個測試設備中創(chuàng)建的至少一個測試執(zhí)行器的和與用戶數量相同,減少了測試設備的數量,從而減少了軟件測試的成本,降低了軟件測試的實現(xiàn)復雜度。
[0176]實施例三
[0177]本發(fā)明實施例提供了一種軟件測試的設備,參見圖5,該設備包括:
[0178]獲取模塊501,用于獲取測試腳本,測試腳本至少包含測試操作的用戶數量及至少一條測試指令;
[0179]確定模塊502,用于根據用戶數量確定各個測試設備的測試執(zhí)行器數量;
[0180]分配模塊503,用于為各個測試設備分配測試執(zhí)行器數量個不同的ID,形成各個測試設備對應的ID組;
[0181]發(fā)送模塊504,用于將各個測試設備的測試執(zhí)行器數量及ID組發(fā)送給各個測試設備,使各個測試設備獲取測試執(zhí)行器數量個測試執(zhí)行器,并為每個測試執(zhí)行器分配ID組中的一個ID ;
[0182]分發(fā)模塊505,用于將測試指令分發(fā)給各個測試設備,使各個測試設備通過各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,獲取并返回執(zhí)行結果;
[0183]分析模塊506,用于接收并分析各個測試設備返回的執(zhí)行結果,得到測試結果。
[0184]參見圖6,確定模塊502,包括:
[0185]獲取單元5021,用于獲取測試設備的數量;
[0186]第一確定單元5022,用于將用戶數量與獲取設備獲取的測試設備的數量的商進行下取整的結果作為第一數量;
[0187]第二確定單元5023,用于將第一確定單元5022確定的第一數量與獲取單元獲取的測試設備的數量的積作為第二數量;
[0188]第三確定單元5024,用于確定用戶數量與第二確定單元5023確定的第二數量是否相同;
[0189]第四確定單元5025,用于當第三確定單元5024確定用戶數量與第二數量相同,則將第一數量作為各個測試設備的測試執(zhí)行器數量。
[0190]參見圖7,確定模塊502,還包括:
[0191]第五確定單元5026,用于當用戶數量與第二數量不相同時,將用戶數量與第二數量的差作為第三數量;
[0192]選擇單元5027,用于從測試設備中選擇第三數量個測試設備;
[0193]第六確定單元5028,用于將第一數量與預設數量的和作為選擇的各個測試設備的測試執(zhí)行器數量;
[0194]第七確定單元5029,用于將第一數量作為未選擇的各個測試設備的測試執(zhí)行器數量。
[0195]綜上所述,本發(fā)明實施例所述設備,通過根據用戶數量確定各個測試設備的測試執(zhí)行器數量,使各個測試設備根據測試執(zhí)行器數量創(chuàng)建測試執(zhí)行器,并通過創(chuàng)建的測試執(zhí)行器同時執(zhí)行測試腳本,使得在多用戶同時操作的測試時,各個測試設備中創(chuàng)建的至少一個測試執(zhí)行器的和與用戶數量相同,減少了測試設備的數量,從而減少了軟件測試的成本,降低了軟件測試的實現(xiàn)復雜度。
[0196]實施例四
[0197]本發(fā)明實施例提供了一種軟件測試的設備,參見圖8,該設備包括:
[0198]第一接收模塊801,用于接收測試控制設備發(fā)送的測試執(zhí)行器數量及標識ID組;
[0199]第一獲取模塊802,用于獲取測試執(zhí)行器數量個測試執(zhí)行器;
[0200]分配模塊803,用于為每個測試執(zhí)行器分配一個ID組中的ID ;
[0201]第二接收模塊804,用于接收測試控制設備分發(fā)的測試指令;
[0202]分發(fā)模塊805,用于將第二接收模塊804接收到的測試指令分發(fā)給各個測試執(zhí)行器,使各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,并返回執(zhí)行結果;
[0203]第二獲取模塊806,用于獲取各個測試執(zhí)行器返回的執(zhí)行結果;
[0204]發(fā)送模塊807,用于將第二獲取模塊806獲取到的執(zhí)行結果返回給測試控制設備。
[0205]其中,第一獲取模塊802,用于獲取測試執(zhí)行器的配置,根據配置獲取測試執(zhí)行器數量個測試執(zhí)行器。
[0206]綜上所述,本發(fā)明實施例所述設備,通過根據測試控制設備確定的測試執(zhí)行器數量創(chuàng)建測試執(zhí)行器,并通過創(chuàng)建的測試執(zhí)行器同時執(zhí)行測試腳本,使得在多用戶同時操作的測試時,各個測試設備中創(chuàng)建的至少一個測試執(zhí)行器的和與用戶數量相同,減少了測試設備的數量,從而減少了軟件測試的成本,降低了軟件測試的實現(xiàn)復雜度。
[0207]實施例五
[0208]本發(fā)明實施例提供了一種軟件測試的系統(tǒng),參見圖9,該系統(tǒng)包括:一個測試控制設備901和至少一個測試設備902 ;[0209]測試控制設備901,如上述實施例三描述的軟件測試的設備,詳見實施例三;
[0210]測試設備,如上述實施例四描述的軟件測試的設備,詳見實施例四。
[0211]綜上所述,本發(fā)明實施例所述設備,通過根據用戶數量確定各個測試設備的測試執(zhí)行器數量,使各個測試設備根據測試執(zhí)行器數量創(chuàng)建測試執(zhí)行器,并通過創(chuàng)建的測試執(zhí)行器同時執(zhí)行測試腳本,使得在多用戶同時操作的測試時,各個測試設備中創(chuàng)建的至少一個測試執(zhí)行器的和與用戶數量相同,減少了測試設備的數量,從而減少了軟件測試的成本,降低了軟件測試的實現(xiàn)復雜度。
[0212]需要說明的是:上述實施例提供的軟件測試的設備在軟件測試時,僅以上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據需要而將上述功能分配由不同的功能模塊完成,即將設備的內部結構劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實施例提供的軟件測試的設備、系統(tǒng)與實現(xiàn)軟件測試的方法實施例屬于同一構思,其具體實現(xiàn)過程詳見方法實施例,這里不再贅述。
[0213]上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
[0214]本領域普通技術人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等。
[0215]以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
【權利要求】
1.一種軟件測試的方法,其特征在于,所述方法包括: 獲取測試腳本,所述測試腳本至少包含測試操作的用戶數量及至少一條測試指令;根據所述用戶數量確定各個測試設備的測試執(zhí)行器數量,并為各個測試設備分配測試執(zhí)行器數量個不同的標識ID,形成各個測試設備對應的ID組; 將各個測試設備的測試執(zhí)行器數量及ID組發(fā)送給各個測試設備,使各個測試設備獲取所述測試執(zhí)行器數量個測試執(zhí)行器,并為每個測試執(zhí)行器分配ID組中的一個ID ; 將所述測試指令分發(fā)給各個測試設備,使各個測試設備通過各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,獲取并返回執(zhí)行結果; 接收并分析各個測試設備返回的執(zhí)行結果,得到測試結果。
2.根據權利要求1所述的方法,其特征在于,所述根據所述用戶數量確定各個測試設備的測試執(zhí)行器數量,包括: 獲取測試設備的數量; 將所述用戶數量與所述測試設備的數量的商進行下取整的結果作為第一數量,并將所述第一數量與所述測試設備的數量的積作為第二數量; 確定所述用戶數量與所述第二數量是否相同; 如果所述用戶數量 與所述第二數量相同,則將所述第一數量作為各個測試設備的測試執(zhí)行器數量。
3.根據權利要求2所述的方法,其特征在于,所述確定所述用戶數量與所述第二數量是否相同之后,還包括: 如果所述用戶數量與所述第二數量不相同,則將所述用戶數量與所述第二數量的差作為第三數量; 從所述測試設備中選擇所述第三數量個測試設備,將所述第一數量與預設數量的和作為選擇的各個測試設備的測試執(zhí)行器數量,并將所述第一數量作為未選擇的各個測試設備的測試執(zhí)行器數量。
4.一種軟件測試的設備,其特征在于,所述設備包括: 獲取模塊,用于獲取測試腳本,所述測試腳本至少包含測試操作的用戶數量及至少一條測試指令; 確定模塊,用于根據所述用戶數量確定各個測試設備的測試執(zhí)行器數量; 分配模塊,用于為各個測試設備分配測試執(zhí)行器數量個不同的標識ID,形成各個測試設備對應的ID組; 發(fā)送模塊,用于將各個測試設備的測試執(zhí)行器數量及ID組發(fā)送給各個測試設備,使各個測試設備獲取所述測試執(zhí)行器數量個測試執(zhí)行器,并為每個測試執(zhí)行器分配ID組中的一個 ID ; 分發(fā)模塊,用于將所述測試指令分發(fā)給各個測試設備,使各個測試設備通過各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,獲取并返回執(zhí)行結果; 分析模塊,用于接收并分析各個測試設備返回的執(zhí)行結果,得到測試結果。
5.根據權利要求4所述的設備,其特征在于,所述確定模塊,包括: 獲取單元,用于獲取測試設備的數量; 第一確定單元,用于將所述用戶數量與所述獲取設備獲取的測試設備的數量的商進行下取整的結果作為第一數量; 第二確定單元,用于將所述第一確定單元確定的第一數量與所述獲取單元獲取的測試設備的數量的積作為第二數量; 第三確定單元,用于確定所述用戶數量與所述第二確定單元確定的第二數量是否相同; 第四確定單元,用于當所述第三確定單元確定所述用戶數量與所述第二數量相同,則將所述第一數量作為各個測試設備的測試執(zhí)行器數量。
6.根據權利要求5所述的設備,其特征在于,所述確定模塊,還包括: 第五確定單元,用于當所述用戶數量與所述第二數量不相同時,將所述用戶數量與所述第二數量的差作為第三數量; 選擇單元,用于從所述測試設備中選擇所述第三數量個測試設備; 第六確定單元,用于將所 述第一數量與預設數量的和作為選擇的各個測試設備的測試執(zhí)行器數量; 第七確定單元,用于將所述第一數量作為未選擇的各個測試設備的測試執(zhí)行器數量。
7.一種軟件測試的方法,其特征在于,所述方法包括: 接收測試控制設備發(fā)送的測試執(zhí)行器數量及標識ID組; 獲取所述測試執(zhí)行器數量個測試執(zhí)行器; 為每個測試執(zhí)行器分配一個所述ID組中的ID ; 接收所述測試控制設備分發(fā)的測試指令,并將所述測試指令分發(fā)給各個測試執(zhí)行器,使各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,并返回執(zhí)行結果; 獲取各個測試執(zhí)行器返回的執(zhí)行結果,并將執(zhí)行結果返回給所述測試控制設備。
8.根據權利要求7所述的方法,其特征在于,所述獲取所述測試執(zhí)行器數量個測試執(zhí)行器,包括: 獲取測試執(zhí)行器的配置,根據所述配置獲取所述測試執(zhí)行器數量個測試執(zhí)行器。
9.一種軟件測試的設備,其特征在于,所述設備包括: 第一接收模塊,用于接收測試控制設備發(fā)送的測試執(zhí)行器數量及標識ID組; 第一獲取模塊,用于獲取所述測試執(zhí)行器數量個測試執(zhí)行器; 分配模塊,用于為每個測試執(zhí)行器分配一個所述ID組中的ID ; 第二接收模塊,用于接收所述測試控制設備分發(fā)的測試指令; 分發(fā)模塊,用于將所述第二接收模塊接收到的測試指令分發(fā)給各個測試執(zhí)行器,使各個測試執(zhí)行器執(zhí)行分發(fā)的測試指令,并返回執(zhí)行結果; 第二獲取模塊,用于獲取各個測試執(zhí)行器返回的執(zhí)行結果; 發(fā)送模塊,用于將所述第二獲取模塊獲取到的執(zhí)行結果返回給所述測試控制設備。
10.根據權利要求9所述的設備,其特征在于,所述第一獲取模塊,用于獲取測試執(zhí)行器的配置,根據所述配置獲取所述測試執(zhí)行器數量個測試執(zhí)行器。
11.一種軟件測試的系統(tǒng),其特征在于,所述系統(tǒng)包括:一個測試控制設備和至少一個測試設備; 所述測試控制設備如權利要求4至6任一權利要求所述的軟件測試的設備; 所述測試設備如權利要求9或10所述的軟件測試的設備。
【文檔編號】G06F11/36GK104008055SQ201410240378
【公開日】2014年8月27日 申請日期:2014年5月30日 優(yōu)先權日:2014年5月30日
【發(fā)明者】莊旭暉, 柳孫明, 鄭海棠 申請人:廣州華多網絡科技有限公司