本技術(shù)屬于場景測試腳本生成的,尤其涉及一種場景測試腳本生成方法、裝置、設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)。
背景技術(shù):
1、隨著物聯(lián)網(wǎng)(lot)技術(shù)的發(fā)展,越來越多的物聯(lián)網(wǎng)設(shè)備被廣泛應(yīng)用于各個(gè)領(lǐng)域,如家居自動(dòng)化、工業(yè)自動(dòng)化監(jiān)控和智慧社區(qū),以智慧社區(qū)為例,智慧社區(qū)的門禁、監(jiān)控、煙霧預(yù)警、防偷防盜、緊急呼叫等場景需要多種物聯(lián)網(wǎng)設(shè)備進(jìn)行相互配合,才能實(shí)現(xiàn)智慧社區(qū),而在這些場景中若要采用物聯(lián)網(wǎng)設(shè)備,為了確保物聯(lián)網(wǎng)設(shè)備的穩(wěn)定性、可靠性和安全性,必須要對物聯(lián)網(wǎng)設(shè)備進(jìn)行產(chǎn)品檢測,檢測通過后才能使用。
2、在相關(guān)技術(shù)中,采用自動(dòng)化測試方案對每個(gè)場景的多種物聯(lián)網(wǎng)設(shè)備進(jìn)行測試時(shí),首先需要人工按照使用場景編寫測試腳本,然后隨著軟件的更新,不斷維護(hù)測試用例,更改測試腳本,但是在物聯(lián)網(wǎng)設(shè)備應(yīng)用在上述場景時(shí),通常要求物聯(lián)網(wǎng)設(shè)備具備復(fù)雜的功能,適應(yīng)不斷變化的環(huán)境和需求,而受到測試用例的質(zhì)量以及有效性,通常需要人員手動(dòng)配置和調(diào)整測試用例,以適應(yīng)不同的設(shè)備和場景,再根據(jù)調(diào)整后的測試用例生成腳本,輸入至物聯(lián)網(wǎng)設(shè)備中,實(shí)現(xiàn)物聯(lián)網(wǎng)設(shè)備的測試,但是在測試過程中,需要要大量的人力物力,導(dǎo)致人力成本過高。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例提供一種場景測試腳本生成方法、裝置、設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì),能夠在對物聯(lián)網(wǎng)設(shè)備進(jìn)行測試時(shí),適應(yīng)不同設(shè)備和場景的自動(dòng)測試,自動(dòng)生成測試用例對物聯(lián)網(wǎng)設(shè)備進(jìn)行測試,降低人力成本。
2、一方面,本技術(shù)實(shí)施例提供一種場景測試腳本生成方法,方法包括:
3、獲取待測物聯(lián)網(wǎng)設(shè)備的設(shè)備數(shù)據(jù)和測試需求信息,所述設(shè)備數(shù)據(jù)包括設(shè)備功能數(shù)據(jù)、性能數(shù)據(jù)和穩(wěn)定性需求數(shù)據(jù)中的至少一種;
4、將所述設(shè)備數(shù)據(jù)和測試需求信息輸入至測試用例生成模型內(nèi),得到測試用例;
5、根據(jù)所述測試用例,生成測試腳本。
6、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,所述將所述設(shè)備數(shù)據(jù)輸入至測試用例生成模型內(nèi),得到測試用例之前,所述方法還包括:
7、獲取多個(gè)第一訓(xùn)練樣本,每個(gè)所述第一訓(xùn)練樣本包括歷史物聯(lián)網(wǎng)設(shè)備的第一設(shè)備數(shù)據(jù)樣本和測試場景數(shù)據(jù)樣本及其對應(yīng)的第一測試用例樣本;
8、以所述第一設(shè)備數(shù)據(jù)樣本和測試場景數(shù)據(jù)樣本為預(yù)設(shè)模型的輸入,以所述第一測試用例樣本為預(yù)設(shè)模型的輸出,對預(yù)設(shè)模型進(jìn)行訓(xùn)練,得到測試用例生成模型。
9、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,所述預(yù)設(shè)模型為基礎(chǔ)語言模型,所述以所述第一設(shè)備數(shù)據(jù)樣本和測試場景數(shù)據(jù)樣本為預(yù)設(shè)模型的輸入,以所述第一測試用例樣本為預(yù)設(shè)模型的輸出,對預(yù)設(shè)模型進(jìn)行訓(xùn)練,得到測試用例生成模型,包括:
10、將所述第一設(shè)備數(shù)據(jù)樣本和測試場景數(shù)據(jù)樣本輸入至所述預(yù)設(shè)模型中,得到測試用例的第一預(yù)測結(jié)果;
11、根據(jù)所述第一預(yù)測結(jié)果和所述第一測試用例樣本,確定所述預(yù)設(shè)模型的損失函數(shù);
12、在所述損失函數(shù)不滿足預(yù)設(shè)收斂條件的情況下,根據(jù)反向傳播算法調(diào)整所述預(yù)設(shè)模型的模型參數(shù),并返回所述將所述第一設(shè)備數(shù)據(jù)和測試場景數(shù)據(jù)樣本輸入至所述預(yù)設(shè)模型中,得到測試用例的第一預(yù)測結(jié)果,直至所述損失函數(shù)滿足預(yù)設(shè)收斂條件。
13、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,所述根據(jù)所述第一預(yù)測結(jié)果和所述第一測試用例樣本,確定所述預(yù)設(shè)模型的損失函數(shù),包括:
14、計(jì)算所述第一預(yù)測結(jié)果和所述第一測試用例樣本之間的均方誤差;
15、根據(jù)所述均方誤差,確定所述損失函數(shù)。
16、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,在根據(jù)所述第一設(shè)備數(shù)據(jù)和測試場景數(shù)據(jù)樣本為預(yù)設(shè)模型的輸入,以所述第一測試用例樣本為預(yù)設(shè)模型的輸出,對預(yù)設(shè)模型進(jìn)行訓(xùn)練,得到測試用例生成模型之前,所述方法還包括:
17、獲取多個(gè)第二訓(xùn)練樣本,每個(gè)第二訓(xùn)練樣本包括物聯(lián)網(wǎng)設(shè)備的第二設(shè)備數(shù)據(jù)和測試場景數(shù)據(jù)樣本及對應(yīng)的第二歷史運(yùn)行測試用例樣本;
18、以所述第二設(shè)備基礎(chǔ)數(shù)據(jù)樣本為原始預(yù)設(shè)模型的輸入,以所述第二歷史運(yùn)行測試用例樣本為預(yù)設(shè)模型的輸出,按照預(yù)設(shè)預(yù)訓(xùn)練方法對所述初始預(yù)設(shè)模型進(jìn)行預(yù)訓(xùn)練,得到預(yù)設(shè)模型。
19、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,在得到測試用例生成模型之后,所述方法還包括:
20、獲取多個(gè)第三訓(xùn)練樣本,每個(gè)第三訓(xùn)練樣本包括物聯(lián)網(wǎng)設(shè)備的第三設(shè)備數(shù)據(jù)和測試場景數(shù)據(jù)樣本及對應(yīng)的第三歷史運(yùn)行測試用例樣本;
21、將所述第三設(shè)備數(shù)據(jù)和測試場景數(shù)據(jù)樣本輸入至所述測試用例生成模型,得到測試用例的預(yù)測結(jié)果;
22、根據(jù)所述第三歷史運(yùn)行測試用例樣本和所述預(yù)測結(jié)果,確定所述測試用例生成模型的性能指標(biāo);
23、在所述性能指標(biāo)不滿足預(yù)設(shè)條件的情況下,調(diào)整所述測試用例生成模型的模型參數(shù),并返回所述將所述第三設(shè)備數(shù)據(jù)和測試場景數(shù)據(jù)樣本輸入至所述測試用例生成模型,得到測試用例的預(yù)測結(jié)果,直至所述性能指標(biāo)滿足預(yù)設(shè)條件。
24、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,所述根據(jù)所述測試用例,生成測試腳本之后,所述方法還包括:
25、執(zhí)行所述測試腳本,得到執(zhí)行過程中產(chǎn)生的日志數(shù)據(jù)和測試結(jié)果;
26、將所述日志數(shù)據(jù)和測試結(jié)果存儲(chǔ)到測試用例的測試結(jié)果數(shù)據(jù)集中。
27、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,在所述根據(jù)所述測試用例,生成測試腳本之后,所述方法還包括:
28、將所述測試腳本在所述待測物聯(lián)網(wǎng)設(shè)備上執(zhí)行,測試所述待測物聯(lián)網(wǎng)設(shè)備的功能、性能和穩(wěn)定性,得到所述待測物聯(lián)網(wǎng)設(shè)備的測試結(jié)果。
29、在一個(gè)可以實(shí)現(xiàn)的實(shí)施方式中,在得到所述待測物聯(lián)網(wǎng)設(shè)備的測試結(jié)果之后,所述方法還包括:
30、根據(jù)所述待測物聯(lián)網(wǎng)設(shè)備的測試結(jié)果,優(yōu)化所述測試用例生成模型。
31、另一方面,本技術(shù)實(shí)施例提供了一種場景測試腳本生成裝置,裝置包括:
32、獲取模塊,用于獲取待測物聯(lián)網(wǎng)設(shè)備的設(shè)備數(shù)據(jù)和測試需求信息,所述設(shè)備數(shù)據(jù)包括設(shè)備功能數(shù)據(jù)、性能數(shù)據(jù)和穩(wěn)定性需求數(shù)據(jù)中的至少一種;
33、輸入模塊,用于將所述設(shè)備數(shù)據(jù)和測試需求信息輸入至測試用例生成模型內(nèi),得到測試用例。
34、生成模塊,用于根據(jù)所述測試用例,生成測試腳本。
35、再一方面,本技術(shù)實(shí)施例提供了一種電子設(shè)備,電子設(shè)備包括:處理器以及存儲(chǔ)有計(jì)算機(jī)程序指令的存儲(chǔ)器;
36、所述處理器執(zhí)行所述計(jì)算機(jī)程序指令時(shí)實(shí)現(xiàn)如第一方面所述的場景測試腳本生成方法。
37、再一方面,本技術(shù)實(shí)施例提供了一種計(jì)算機(jī)存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序指令,所述計(jì)算機(jī)程序指令被處理器執(zhí)行時(shí)實(shí)現(xiàn)如第一方面所述的場景測試腳本生成方法。
38、再一方面,本技術(shù)實(shí)施例提供了一種計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述計(jì)算機(jī)程序產(chǎn)品中的指令由電子設(shè)備的處理器執(zhí)行時(shí),使得所述電子設(shè)備執(zhí)行如第一方面所述的場景測試腳本生成方法。
39、本技術(shù)實(shí)施例的場景測試腳本生成方法、裝置、設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì),能夠在利用測試腳本對待測物聯(lián)網(wǎng)設(shè)備進(jìn)行測試時(shí),將待測物聯(lián)網(wǎng)設(shè)備的設(shè)備數(shù)據(jù)和測試需求信息輸入至測試用例生成模型內(nèi),測試用例生成模型能夠?qū)υO(shè)備數(shù)據(jù)和測試需求信息進(jìn)行解析,了解該待測物聯(lián)網(wǎng)設(shè)備在場景下,需要實(shí)現(xiàn)的功能數(shù)據(jù)、性能數(shù)據(jù)和穩(wěn)定性需求數(shù)據(jù),從而自動(dòng)化生成測試用例,以使測試用例生成模型生成的測試用例能夠滿足測試要求,再通過生成的測試腳本對待測物聯(lián)網(wǎng)設(shè)備進(jìn)行自動(dòng)化測試,能夠降低測試的人力成本,進(jìn)而提高測試效率。