本發(fā)明涉及軟件測(cè)試自動(dòng)化技術(shù),尤其是涉及一種軟件測(cè)試方法及裝置。
背景技術(shù):
1、軟件行業(yè)在軟件開發(fā)好以后往往要經(jīng)過多輪測(cè)試,包括開發(fā)階段的測(cè)試,以及成品階段的第三方功能性測(cè)試,而成品階段的第三方功能性測(cè)試由于其環(huán)境和開發(fā)階段的環(huán)境不同,能夠排查更多的問題。
2、為了提高測(cè)試的充分性,現(xiàn)有技術(shù)中,針對(duì)軟件的成品階段的第三方功能性測(cè)試,測(cè)試用的計(jì)算機(jī)都部署有大量的虛擬機(jī)可以模擬各類環(huán)境,可以模擬不同的軟件環(huán)境來進(jìn)行測(cè)試,然而,現(xiàn)有技術(shù)中,通常是通過手動(dòng)修改的方式來修改軟件環(huán)境對(duì)待測(cè)試軟件進(jìn)行測(cè)試,一來效率低下,二來,人工切換也會(huì)導(dǎo)致測(cè)試人員的工作強(qiáng)度過大。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的就是為了提供一種軟件測(cè)試方法及裝置,通過待測(cè)試軟件的運(yùn)行環(huán)境信息,自動(dòng)生成多個(gè)測(cè)試環(huán)境,并在一個(gè)環(huán)境測(cè)試結(jié)束后,自動(dòng)加載下一個(gè)環(huán)境,可以極大地降低測(cè)試人員的工作量,提高軟件的測(cè)試效率。
2、本發(fā)明的目的可以通過以下技術(shù)方案來實(shí)現(xiàn):
3、一種軟件測(cè)試方法,包括:
4、步驟s1:讀取待測(cè)試軟件的運(yùn)行環(huán)境信息;
5、步驟s2:基于所述運(yùn)行環(huán)境信息,獲得多個(gè)測(cè)試環(huán)境;
6、步驟s3:讀取第一個(gè)測(cè)試環(huán)境,并部署此測(cè)試環(huán)境和待測(cè)試軟件;
7、步驟s4:提示進(jìn)行軟件測(cè)試,并在收到軟件測(cè)試完成指令后,判斷是否完成所有測(cè)試環(huán)境的遍歷,若為是,則完成測(cè)試,反之,則執(zhí)行步驟s5:
8、步驟s5:讀取下一個(gè)測(cè)試環(huán)境,并部署此測(cè)試環(huán)境和待測(cè)試軟件,并返回步驟s4。
9、所述步驟s2具體包括:
10、步驟s21:提取所述運(yùn)行環(huán)境信息中的各環(huán)境軟件的字段,并解析得到各環(huán)境軟件的全稱和版本號(hào)向量,其中,環(huán)境軟件的全稱和版本號(hào)向量構(gòu)成該環(huán)境的屬性信息;
11、步驟s22:基于各環(huán)境軟件的屬性信息,基于測(cè)試環(huán)境庫(kù)針對(duì)每一個(gè)環(huán)境軟件得到一個(gè)或多個(gè)待部署軟件版本;
12、步驟s23:基于對(duì)應(yīng)于各環(huán)境軟件的待部署軟件版本,進(jìn)行隨機(jī)組合得到多個(gè)測(cè)試環(huán)境。
13、所述版本號(hào)向量為多維向量,其生成過程如下:
14、步驟s211:判斷環(huán)境軟件的字段中版本號(hào)是否存在用于表征區(qū)間范圍的預(yù)配置的特征字符,若為是,則執(zhí)行步驟s212,反之,則執(zhí)行步驟s213;
15、步驟s212:基于區(qū)間的端值生成版本號(hào)向量;
16、步驟s213:基于所有出現(xiàn)的版本號(hào)生成版本號(hào)向量。
17、所述步驟s213具體為:將所有出現(xiàn)的版本號(hào)分別作為版本號(hào)向量的一個(gè)元素以生成版本號(hào)向量。
18、所述步驟s212具體包括:
19、步驟s2121:將所有區(qū)間的端值,按照從小到大排序;
20、步驟s2122:在對(duì)應(yīng)于同一個(gè)區(qū)間的兩個(gè)端值之間添加第一標(biāo)記符號(hào),在對(duì)應(yīng)于不同區(qū)間的兩個(gè)端值之間添加第二標(biāo)記符號(hào),若最后一個(gè)端值對(duì)應(yīng)的區(qū)間是射線區(qū)間,則在最后一個(gè)端值之后添加第一標(biāo)記符號(hào),得到版本號(hào)序列;
21、步驟s2123:將得到的版本號(hào)序列作為版本號(hào)向量。
22、一種軟件測(cè)試裝置,包括存儲(chǔ)器、處理器,以及存儲(chǔ)于所述存儲(chǔ)器中的程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)以下步驟:
23、步驟s1:讀取待測(cè)試軟件的運(yùn)行環(huán)境信息;
24、步驟s2:基于所述運(yùn)行環(huán)境信息,獲得多個(gè)測(cè)試環(huán)境;
25、步驟s3:讀取第一個(gè)測(cè)試環(huán)境,并部署此測(cè)試環(huán)境和待測(cè)試軟件;
26、步驟s4:提示進(jìn)行軟件測(cè)試,并在收到軟件測(cè)試完成指令后,判斷是否完成所有測(cè)試環(huán)境的遍歷,若為是,則完成測(cè)試,反之,則執(zhí)行步驟s5:
27、步驟s5:讀取下一個(gè)測(cè)試環(huán)境,并部署此測(cè)試環(huán)境和待測(cè)試軟件,并返回步驟s4。
28、與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:
29、1、通過待測(cè)試軟件的運(yùn)行環(huán)境信息,自動(dòng)生成多個(gè)測(cè)試環(huán)境,并在一個(gè)環(huán)境測(cè)試結(jié)束后,自動(dòng)加載下一個(gè)環(huán)境,可以極大地降低測(cè)試人員的工作量,提高軟件的測(cè)試效率。
30、2、基于版本號(hào)向量的表達(dá)方式來確定待部署軟件版本,并采用獨(dú)特設(shè)計(jì)的版本號(hào)向量的格式,可以提高版本號(hào)篩選的效率。
31、3、采用隨機(jī)組合的方式生成多個(gè)測(cè)試環(huán)境,可以在版本數(shù)量過多時(shí),減小測(cè)試的工作量的同時(shí)不降低代表性。
1.一種軟件測(cè)試方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的一種軟件測(cè)試方法,其特征在于,所述步驟s2具體包括:
3.根據(jù)權(quán)利要求2所述的一種軟件測(cè)試方法,其特征在于,所述版本號(hào)向量為多維向量,其生成過程如下:
4.根據(jù)權(quán)利要求3所述的一種軟件測(cè)試方法,其特征在于,所述步驟s213具體為:將所有出現(xiàn)的版本號(hào)分別作為版本號(hào)向量的一個(gè)元素以生成版本號(hào)向量。
5.根據(jù)權(quán)利要求3所述的一種軟件測(cè)試方法,其特征在于,所述步驟s212具體包括:
6.一種軟件測(cè)試裝置,包括存儲(chǔ)器、處理器,以及存儲(chǔ)于所述存儲(chǔ)器中的程序,其特征在于,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)以下步驟:
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述步驟s2具體包括:
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述版本號(hào)向量為多維向量,其生成過程如下:
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述步驟s213具體為:將所有出現(xiàn)的版本號(hào)分別作為版本號(hào)向量的一個(gè)元素以生成版本號(hào)向量。
10.根據(jù)權(quán)利要求3所述的裝置,其特征在于,所述步驟s212具體包括: