本申請實施例涉及軟件測試,尤其涉及一種測試場景生成方法、裝置、計算機設(shè)備、計算機可讀存儲介質(zhì)、計算機程序產(chǎn)品。
背景技術(shù):
1、隨著軟件開發(fā)技術(shù)的發(fā)展,編寫測試場景變得愈加重要。通過構(gòu)建針對特定業(yè)務(wù)場景的測試環(huán)境用于系統(tǒng)測試,可以確保系統(tǒng)在真實環(huán)境下的可靠性和穩(wěn)定性。然而,目前已有的測試場景生成仍依賴人工編寫,且容易干擾系統(tǒng)的正常運行。
2、需要說明的是,上述內(nèi)容并不必然是現(xiàn)有技術(shù),也不用于限制本申請的專利保護范圍。
技術(shù)實現(xiàn)思路
1、本申請實施例提供一種測試場景生成方法、裝置、計算機設(shè)備、計算機可讀存儲介質(zhì)、計算機程序產(chǎn)品,以解決或緩解上面提出的一項或更多項技術(shù)問題。
2、本申請實施例的一個方面提供了一種測試場景生成方法,所述方法包括:
3、接收目標(biāo)業(yè)務(wù)場景的數(shù)據(jù)請求,所述目標(biāo)業(yè)務(wù)場景關(guān)聯(lián)一個或多個服務(wù),所述一個或多個服務(wù)預(yù)先配置有染色實例,所述染色實例具有染色標(biāo)識;
4、基于所述數(shù)據(jù)請求確定目標(biāo)數(shù)據(jù)請求,并將所述目標(biāo)數(shù)據(jù)請求轉(zhuǎn)發(fā)到所述一個或多個服務(wù)的染色實例上;其中,所述目標(biāo)數(shù)據(jù)請求攜帶所述染色標(biāo)識;
5、獲取所述一個或多個服務(wù)的染色實例的流量,得到流量集合;其中,所述流量基于所述目標(biāo)數(shù)據(jù)請求生成;
6、基于所述流量集合轉(zhuǎn)換得到多個測試用例,所述多個測試用例用于構(gòu)建針對所述目標(biāo)業(yè)務(wù)場景的測試場景。
7、可選地,接收目標(biāo)業(yè)務(wù)場景的數(shù)據(jù)請求,包括:
8、接收關(guān)聯(lián)所述一個或多個服務(wù)的數(shù)據(jù)請求,所述數(shù)據(jù)請求來自目標(biāo)對象;
9、基于所述數(shù)據(jù)請求,確定所述目標(biāo)對象的類型,所述類型包括:測試類型,或非測試類型;
10、在所述目標(biāo)對象為所述測試類型的情況下,在所述數(shù)據(jù)請求中加入所述染色標(biāo)識。
11、可選地,所述一個或多個服務(wù)還配置有基準(zhǔn)實例;對應(yīng)地,基于所述數(shù)據(jù)請求確定目標(biāo)數(shù)據(jù)請求,將所述目標(biāo)數(shù)據(jù)請求轉(zhuǎn)發(fā)到所述一個或多個服務(wù)的染色實例上,包括:
12、確定所述數(shù)據(jù)請求是否攜帶所述染色標(biāo)識;
13、在所述數(shù)據(jù)請求攜帶所述染色標(biāo)識的情況下,將所述數(shù)據(jù)請求確定為所述目標(biāo)數(shù)據(jù)請求,并將所述目標(biāo)數(shù)據(jù)請求轉(zhuǎn)發(fā)到所述一個或多個服務(wù)的染色實例上;
14、在所述數(shù)據(jù)請求未攜帶所述染色標(biāo)識的情況下,將所述數(shù)據(jù)請求轉(zhuǎn)發(fā)到所述一個或多個服務(wù)的基準(zhǔn)實例上。
15、可選地,每個染色實例具有伴生容器,所述伴生容器用于錄制對應(yīng)染色實例的流量;
16、對應(yīng)地,獲取所述一個或多個服務(wù)的染色實例的流量,得到流量集合,包括:
17、基于每個所述染色實例的伴生容器,獲取所述一個或多個服務(wù)的染色實例的流量。
18、可選地,所述伴生容器還用于:將所述流量與所述染色標(biāo)識關(guān)聯(lián)存儲到預(yù)設(shè)數(shù)據(jù)庫;
19、對應(yīng)地,獲取所述一個或多個服務(wù)的染色實例的流量,得到流量集合,包括:
20、根據(jù)所述染色標(biāo)識,從所述預(yù)設(shè)數(shù)據(jù)庫中獲取所述一個或多個服務(wù)的染色實例的流量。
21、可選地,每個服務(wù)提供一個或多個接口;對應(yīng)地,基于所述流量集合轉(zhuǎn)換得到多個測試用例,所述多個測試用例用于構(gòu)建針對所述目標(biāo)業(yè)務(wù)場景的測試場景,包括:
22、確定各個接口的對應(yīng)服務(wù);
23、從所述流量集合中確定對應(yīng)服務(wù)的染色實例的流量,基于所述對應(yīng)服務(wù)的染色實例的流量確定各個接口的初篩流量;
24、將各個接口的初篩流量轉(zhuǎn)換為對應(yīng)接口的測試用例;
25、根據(jù)各個接口的測試用例,組成針對所述目標(biāo)業(yè)務(wù)場景的測試場景。
26、可選地,所述流量包括所述目標(biāo)數(shù)據(jù)請求以及針對所述目標(biāo)數(shù)據(jù)請求的數(shù)據(jù)響應(yīng),所述測試用例基于所述流量轉(zhuǎn)換得到。
27、本申請實施例的另一個方面提供了一種測試場景生成裝置,所述裝置包括:
28、接收模塊,用于接收目標(biāo)業(yè)務(wù)場景的數(shù)據(jù)請求,所述目標(biāo)業(yè)務(wù)場景關(guān)聯(lián)一個或多個服務(wù),所述一個或多個服務(wù)預(yù)先配置有染色實例,所述染色實例具有染色標(biāo)識;
29、轉(zhuǎn)發(fā)模塊,用于基于所述數(shù)據(jù)請求確定目標(biāo)數(shù)據(jù)請求,并將所述目標(biāo)數(shù)據(jù)請求轉(zhuǎn)發(fā)到所述一個或多個服務(wù)的染色實例上;其中,所述目標(biāo)數(shù)據(jù)請求攜帶所述染色標(biāo)識;
30、獲取模塊,用于獲取所述一個或多個服務(wù)的染色實例的流量,得到流量集合;其中,所述流量基于所述目標(biāo)數(shù)據(jù)請求生成;
31、構(gòu)建模塊,用于基于所述流量集合轉(zhuǎn)換得到多個測試用例,所述多個測試用例用于構(gòu)建針對所述目標(biāo)業(yè)務(wù)場景的測試場景。
32、本申請實施例的另一個方面提供了一種計算機設(shè)備,包括:
33、至少一個處理器;及
34、與所述至少一個處理器通信連接的存儲器;
35、其中:所述存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,所述指令被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行如上所述的方法。
36、本申請實施例的另一個方面提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)內(nèi)存儲有計算機指令,所述計算機指令被處理器執(zhí)行時實現(xiàn)如上所述的方法。
37、本申請實施例的另一個方面提供了一種計算機程序產(chǎn)品,包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)如上所述的方法。
38、本申請實施例采用上述技術(shù)方案可以包括如下優(yōu)勢:
39、預(yù)先為目標(biāo)業(yè)務(wù)場景關(guān)聯(lián)的一個或多個服務(wù)配置具有染色標(biāo)識的染色實例,構(gòu)建一個與正常環(huán)境完全隔離、互不干擾的染色環(huán)境(測試環(huán)境)。接收目標(biāo)業(yè)務(wù)場景的數(shù)據(jù)請求,從數(shù)據(jù)請求中確定攜帶染色標(biāo)識的目標(biāo)數(shù)據(jù)請求。將目標(biāo)數(shù)據(jù)請求轉(zhuǎn)發(fā)到一個或多個服務(wù)的染色實例上。獲取一個或多個服務(wù)的染色實例的流量,得到流量集合。將流量集合轉(zhuǎn)換為多個測試用例,其中,多個測試用例用于構(gòu)建針對目標(biāo)業(yè)務(wù)場景的測試環(huán)境。可知,本申請實施例通過建立一套完整的包含統(tǒng)一標(biāo)識(染色標(biāo)識)的測試環(huán)境(一個或多個服務(wù)的染色實例),目標(biāo)數(shù)據(jù)請求僅在這套測試環(huán)境中流轉(zhuǎn),可以緩解對正常環(huán)境的影響。通過收集每個染色實例的流量,轉(zhuǎn)換得到多個測試用例,可以生成一個包含完整操作鏈的測試場景,節(jié)約手工編寫測試場景的人力成本。
1.一種測試場景生成方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,接收目標(biāo)業(yè)務(wù)場景的數(shù)據(jù)請求,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述一個或多個服務(wù)還配置有基準(zhǔn)實例;對應(yīng)地,基于所述數(shù)據(jù)請求確定目標(biāo)數(shù)據(jù)請求,將所述目標(biāo)數(shù)據(jù)請求轉(zhuǎn)發(fā)到所述一個或多個服務(wù)的染色實例上,包括:
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,每個染色實例具有伴生容器,所述伴生容器用于錄制對應(yīng)染色實例的流量;
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述伴生容器還用于:將所述流量與所述染色標(biāo)識關(guān)聯(lián)存儲到預(yù)設(shè)數(shù)據(jù)庫;
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,每個服務(wù)提供一個或多個接口;對應(yīng)地,基于所述流量集合轉(zhuǎn)換得到多個測試用例,所述多個測試用例用于構(gòu)建針對所述目標(biāo)業(yè)務(wù)場景的測試場景,包括:
7.根據(jù)權(quán)利要求1至6任一項所述的方法,其特征在于,所述流量包括所述目標(biāo)數(shù)據(jù)請求以及針對所述目標(biāo)數(shù)據(jù)請求的數(shù)據(jù)響應(yīng),所述測試用例基于所述流量轉(zhuǎn)換得到。
8.一種測試場景生成裝置,其特征在于,所述裝置包括:
9.?一種計算機設(shè)備,其特征在于,包括:
10.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)內(nèi)存儲有計算機指令,所述計算機指令被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1至7中任一項所述的方法。
11.一種計算機程序產(chǎn)品,包括計算機程序,其特征在于,該計算機程序被處理器執(zhí)行時實現(xiàn)權(quán)利要求1至7所述方法的步驟。