本發(fā)明涉及自動(dòng)化測(cè)試技術(shù)領(lǐng)域,更具體地說(shuō),涉及面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行方法及系統(tǒng)。
背景技術(shù):
自動(dòng)化測(cè)試調(diào)度技術(shù)主要是將批量的自動(dòng)化測(cè)試任務(wù)根據(jù)執(zhí)行機(jī)狀態(tài)批量分發(fā)到各個(gè)自動(dòng)化測(cè)試執(zhí)行機(jī)上執(zhí)行。
目前,業(yè)界的自動(dòng)化測(cè)試調(diào)度方案主要步驟是首先監(jiān)測(cè)執(zhí)行機(jī)狀態(tài),然后根據(jù)執(zhí)行機(jī)情況,將批量提交的測(cè)試腳本分配給相應(yīng)的執(zhí)行機(jī),從而實(shí)現(xiàn)分布式執(zhí)行。
由于現(xiàn)有方案的著眼點(diǎn)在于批量分發(fā)功能,主要是針對(duì)單一自動(dòng)化測(cè)試工具進(jìn)行的,針對(duì)于多種不同工具下的自動(dòng)化測(cè)試腳本缺乏調(diào)度功能,同時(shí)缺乏腳本的屬性管理與調(diào)度,使得針對(duì)多工具技術(shù)、多執(zhí)行屬性的腳本執(zhí)行靈活性差,執(zhí)行成本高。因此,在自動(dòng)化測(cè)試集中調(diào)度的過(guò)程中,如何提高執(zhí)行靈活性且降低執(zhí)行成本是一項(xiàng)亟待解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明的目的在于提供一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行方法,通過(guò)整合不同自動(dòng)化測(cè)試工具資源,支持多種自動(dòng)化測(cè)試工具執(zhí)行技術(shù),根據(jù)不同的自動(dòng)化腳本屬性進(jìn)行動(dòng)態(tài)批量調(diào)度,提高執(zhí)行靈活性且降低執(zhí)行成本。
為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行方法,包括:
維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本;
基于所述執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本,并發(fā)送所述自動(dòng)化腳本;
基于接收到的所述自動(dòng)化腳本,解析出所述自動(dòng)化腳本的信息,調(diào)用相應(yīng)的執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志;
保存所述執(zhí)行結(jié)果和執(zhí)行日志。
優(yōu)選地,所述維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本包括:
配置腳本的執(zhí)行屬性,并將配置結(jié)果保存至數(shù)據(jù)庫(kù)中的腳本屬性表中;
配置腳本執(zhí)行機(jī)的屬性。
優(yōu)選地,所述基于所述執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本,并發(fā)送所述自動(dòng)化腳本包括:
將用戶(hù)批量發(fā)起的自動(dòng)化測(cè)試腳本按照先到先服務(wù)的原則放入腳本執(zhí)行隊(duì)列當(dāng)中,逐一對(duì)隊(duì)列中的腳本屬性信息進(jìn)行分析,獲取腳本執(zhí)行所需的屬性;
監(jiān)控腳本執(zhí)行機(jī)的狀態(tài),對(duì)于空閑腳本執(zhí)行機(jī),獲取其所支持的腳本執(zhí)行屬性;
針對(duì)腳本執(zhí)行機(jī)所支持的腳本屬性,從腳本隊(duì)列頭開(kāi)始依次查找適合該腳本執(zhí)行機(jī)執(zhí)行的自動(dòng)化腳本;
查找到對(duì)應(yīng)的自動(dòng)化腳本,將其從隊(duì)列中取出,并發(fā)送到空閑腳本執(zhí)行機(jī)上執(zhí)行。
優(yōu)選地,所述基于接收到的所述自動(dòng)化腳本,解析出所述自動(dòng)化腳本的信息,調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志包括:
接收并解析所述自動(dòng)化腳本,獲取到腳本執(zhí)行信息和執(zhí)行工具信息;
基于所述腳本執(zhí)行信息生成可執(zhí)行的自動(dòng)化測(cè)試腳本文件;
基于腳本執(zhí)行工具信息調(diào)起相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具并執(zhí)行腳本;
返回執(zhí)行的結(jié)果和執(zhí)行日志。
一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行系統(tǒng),包括:
屬性配置模塊,用于維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本;
自動(dòng)化測(cè)試集中調(diào)度模塊,用于基于所述執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本,并發(fā)送所述自動(dòng)化腳本;
自動(dòng)化測(cè)試執(zhí)行引擎,用于基于接收到的所述自動(dòng)化腳本,解析出所述自動(dòng)化腳本的信息,調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志;
所述自動(dòng)化測(cè)試集中調(diào)度模塊,還用于保存所述執(zhí)行結(jié)果和執(zhí)行日志。
優(yōu)選地,所述屬性配置模塊具體用于:
配置腳本的執(zhí)行屬性,并將配置結(jié)果保存至數(shù)據(jù)庫(kù)中的腳本屬性表中;
配置腳本執(zhí)行機(jī)的屬性。
優(yōu)選地,所述自動(dòng)化測(cè)試集中調(diào)度模塊具體用于:
將用戶(hù)批量發(fā)起的自動(dòng)化測(cè)試腳本按照先到先服務(wù)的原則放入腳本執(zhí)行隊(duì)列當(dāng)中,逐一對(duì)隊(duì)列中的腳本屬性信息進(jìn)行分析,獲取腳本執(zhí)行所需的屬性;
監(jiān)控腳本執(zhí)行機(jī)的狀態(tài),對(duì)于空閑腳本執(zhí)行機(jī),獲取其所支持的腳本執(zhí)行屬性;
針對(duì)腳本執(zhí)行機(jī)所支持的腳本屬性,從腳本隊(duì)列頭開(kāi)始依次查找適合該腳本執(zhí)行機(jī)執(zhí)行的自動(dòng)化腳本;
查找到符合屬性的自動(dòng)化腳本,將其從隊(duì)列中取出,并發(fā)送到空閑腳本執(zhí)行機(jī)上執(zhí)行。
優(yōu)選地,所述自動(dòng)化執(zhí)行引擎具體用于:
接收并解析所述自動(dòng)化腳本,獲取到腳本執(zhí)行信息和執(zhí)行工具信息;
基于所述腳本執(zhí)行信息生成可執(zhí)行的自動(dòng)化測(cè)試腳本文件;
基于腳本執(zhí)行工具信息調(diào)起相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具并執(zhí)行腳本;
返回執(zhí)行的結(jié)果和執(zhí)行日志。
由上述技術(shù)方案可知,本實(shí)施例提供了一種網(wǎng)絡(luò)流量特征分析方法,當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本,然后根據(jù)執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本并發(fā)送自動(dòng)化腳本,根據(jù)接收到的自動(dòng)化腳本解析出自動(dòng)化腳本的信息,調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志,最后保存執(zhí)行結(jié)果和執(zhí)行日志,通過(guò)整合不同自動(dòng)化測(cè)試工具資源,支持多種自動(dòng)化測(cè)試工具執(zhí)行技術(shù),根據(jù)不同的自動(dòng)化腳本屬性進(jìn)行動(dòng)態(tài)批量調(diào)度,提高了執(zhí)行靈活性且降低了執(zhí)行成本。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
圖1為本發(fā)明公開(kāi)的一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行方法實(shí)施例1的方法流程圖;
圖2為本發(fā)明公開(kāi)的一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行方法實(shí)施例2的方法流程圖;
圖3為本發(fā)明公開(kāi)的一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行系統(tǒng)實(shí)施例3的結(jié)構(gòu)示意圖;
圖4為本發(fā)明公開(kāi)的一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行系統(tǒng)實(shí)施例4的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
為了更加特定地強(qiáng)調(diào)實(shí)施的獨(dú)立性,本說(shuō)明書(shū)涉及許多模塊或單元。舉例而言,模塊或單元可由硬件電路實(shí)現(xiàn),該硬件電路包括特制vlsi電路或門(mén)陣列,比如邏輯芯片、晶體管,或其它組件。模塊或單元也可在可編程的硬設(shè)備中實(shí)現(xiàn),比如場(chǎng)效可編程門(mén)陣列、可編程陣列邏輯、可編程邏輯設(shè)備等等。
模塊或單元也可在藉由各種形式的處理器所執(zhí)行的軟件中實(shí)現(xiàn)。比如說(shuō),一可執(zhí)行碼模塊可包括一個(gè)或多個(gè)實(shí)體的或邏輯的計(jì)算機(jī)指令區(qū)塊,該區(qū)塊可能形成為,比如說(shuō),對(duì)象、程序或函數(shù)。然而,鑒別模塊或單元的可執(zhí)行部分不需要物理上放置在一起,但可由存于不同位置的不同指令所組成,當(dāng)邏輯上組合在一起時(shí),形成模塊或單元且達(dá)到該模塊或單元所要求的目的。
實(shí)際上,可執(zhí)行碼模塊或單元可以是一單一指令或多個(gè)指令,甚至可以分布在位于不同的程序的數(shù)個(gè)不同的碼區(qū)段,并且橫跨數(shù)個(gè)存儲(chǔ)設(shè)備。同樣地,操作數(shù)據(jù)可被辨識(shí)及顯示于此模塊或單元中,并且可以以任何合適的形式實(shí)施且在任何合適的數(shù)據(jù)結(jié)構(gòu)形式內(nèi)組織。操作數(shù)據(jù)可以集合成單一數(shù)據(jù)集,或可分布在具有不同的存儲(chǔ)設(shè)備的不同的位置,且至少部分地只以電子信號(hào)方式存在于一系統(tǒng)或網(wǎng)絡(luò)。
本說(shuō)明書(shū)所提及的“實(shí)施例”或類(lèi)似用語(yǔ)表示與實(shí)施例有關(guān)的特性、結(jié)構(gòu)或特征,包括在本發(fā)明的至少一實(shí)施例中。因此,本說(shuō)明書(shū)所出現(xiàn)的用語(yǔ)“在一實(shí)施例中”、“在實(shí)施例中”以及類(lèi)似用語(yǔ)可能但不必然都指向相同實(shí)施例。
再者,本發(fā)明所述特性、結(jié)構(gòu)或特征可以以任何方式結(jié)合在一個(gè)或多個(gè)實(shí)施例中。以下說(shuō)明將提供許多特定的細(xì)節(jié),比如編程序、軟件模塊、用戶(hù)選擇、網(wǎng)絡(luò)交易、數(shù)據(jù)庫(kù)查詢(xún)、數(shù)據(jù)庫(kù)結(jié)構(gòu)、硬件模塊、硬件電路、硬件芯片等例子,以提供對(duì)本發(fā)明實(shí)施例的了解。然而相關(guān)領(lǐng)域的普通技術(shù)人員將看出本發(fā)明,即使沒(méi)有利用其中一個(gè)或多個(gè)特定細(xì)節(jié),或利用其它方法、組件、材料等亦可實(shí)施。另一方面,為避免混淆本發(fā)明,公知的結(jié)構(gòu)、材料或操作并沒(méi)有詳細(xì)描述。
如圖1所示,為本發(fā)明公開(kāi)的一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行方法實(shí)施例1的流程圖,本方法包括以下步驟:
s101、維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本;
當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先對(duì)腳本屬性進(jìn)行維護(hù),同時(shí)對(duì)腳本執(zhí)行機(jī)的屬性進(jìn)行維護(hù),并將執(zhí)行腳本進(jìn)行發(fā)送。
s102、基于執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本,并發(fā)送所述自動(dòng)化腳本;
根據(jù)接收到的執(zhí)行腳本對(duì)腳本執(zhí)行機(jī)的運(yùn)行狀態(tài)進(jìn)行監(jiān)控,為空閑執(zhí)行機(jī)匹配相應(yīng)的自動(dòng)化腳本,并將獲得到的自動(dòng)化腳本進(jìn)行發(fā)送。
s103、基于接收到的所述自動(dòng)化腳本,解析出所述自動(dòng)化腳本的信息,調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志;
根據(jù)接收到的自動(dòng)化腳本,解析調(diào)起命令,并調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志,將生成的執(zhí)行結(jié)果和執(zhí)行日志進(jìn)行發(fā)送。
s104、保存所述執(zhí)行結(jié)果和執(zhí)行日志。
將接收到的執(zhí)行結(jié)果和執(zhí)行日志進(jìn)行保存。
綜上所述,在上述實(shí)施例中,當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本,然后根據(jù)執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本并發(fā)送自動(dòng)化腳本,根據(jù)接收到的自動(dòng)化腳本解析出自動(dòng)化腳本的信息,調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志,最后保存執(zhí)行結(jié)果和執(zhí)行日志,通過(guò)整合不同自動(dòng)化測(cè)試工具資源,支持多種自動(dòng)化測(cè)試工具執(zhí)行技術(shù),根據(jù)不同的自動(dòng)化腳本屬性進(jìn)行動(dòng)態(tài)批量調(diào)度,提高了執(zhí)行靈活性且降低了執(zhí)行成本。
如圖2所述,為本發(fā)明公開(kāi)的一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行方法實(shí)施例2的流程圖,本方法包括以下步驟:
s201、配置腳本的執(zhí)行屬性,并將配置結(jié)果保存至數(shù)據(jù)庫(kù)中的腳本屬性表中;
當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先對(duì)腳本屬性進(jìn)行維護(hù),在對(duì)腳本屬性進(jìn)行維護(hù)時(shí),用戶(hù)對(duì)各自腳本的執(zhí)行屬性,如腳本執(zhí)行所需操作系統(tǒng)、瀏覽器、執(zhí)行工具、執(zhí)行時(shí)間等,進(jìn)行配置,并保存到數(shù)據(jù)庫(kù)中的腳本屬性表中。所存儲(chǔ)的數(shù)據(jù)信息可供自動(dòng)化測(cè)試集中調(diào)度模塊作為動(dòng)態(tài)調(diào)度的條件,同時(shí)自動(dòng)化測(cè)試執(zhí)行引擎模塊根據(jù)相關(guān)的腳本屬性信息組織自動(dòng)化測(cè)試腳本并調(diào)起相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具。
s202、配置腳本執(zhí)行機(jī)的屬性;
為使自動(dòng)化測(cè)試集中調(diào)度模塊能夠?yàn)樽詣?dòng)化腳本匹配適合的執(zhí)行機(jī)去執(zhí)行,自動(dòng)化測(cè)試執(zhí)行機(jī)也需要進(jìn)行相應(yīng)的屬性配置,包括執(zhí)行機(jī)ip、執(zhí)行機(jī)所支持的操作系統(tǒng)、瀏覽器、執(zhí)行工具等信息。
s203、將用戶(hù)批量發(fā)起的自動(dòng)化測(cè)試腳本按照先到先服務(wù)的原則放入腳本執(zhí)行隊(duì)列當(dāng)中,逐一對(duì)隊(duì)列中的腳本屬性信息進(jìn)行分析,獲取腳本執(zhí)行所需的屬性;
當(dāng)完成了腳本屬性的維護(hù)和執(zhí)行機(jī)屬性的維護(hù)后,進(jìn)一步將用戶(hù)批量發(fā)起的自動(dòng)化測(cè)試腳本按照先到先服務(wù)的原則放入到腳本執(zhí)行隊(duì)列當(dāng)中,然后逐一的對(duì)隊(duì)列中的腳本屬性信息進(jìn)行分析,獲取到腳本執(zhí)行所需的屬性。
s204、監(jiān)控腳本執(zhí)行機(jī)的狀態(tài),對(duì)于空閑腳本執(zhí)行機(jī),獲取其所支持的腳本執(zhí)行屬性;
然后對(duì)腳本執(zhí)行機(jī)的狀態(tài)進(jìn)行狀態(tài),判斷執(zhí)行機(jī)是否為“空閑”,當(dāng)執(zhí)行機(jī)為空閑時(shí),獲取該空閑執(zhí)行機(jī)的屬性。
s205、針對(duì)腳本執(zhí)行機(jī)所支持的腳本屬性,從腳本隊(duì)列頭開(kāi)始依次查找適合該腳本執(zhí)行機(jī)執(zhí)行的自動(dòng)化腳本;
然后根據(jù)腳本執(zhí)行機(jī)所支持的腳本屬性,從腳本隊(duì)列的頭開(kāi)始依次查找適合該腳本執(zhí)行機(jī)構(gòu)執(zhí)行的自動(dòng)化腳本。
s206、查找到符合屬性的自動(dòng)化腳本,將其從隊(duì)列中取出,并發(fā)送到空閑腳本執(zhí)行機(jī)上執(zhí)行;
s207、接收并解析所述自動(dòng)化腳本,獲取到腳本執(zhí)行信息和執(zhí)行工具信息;
s208、基于所述腳本執(zhí)行信息生成可執(zhí)行的自動(dòng)化測(cè)試腳本文件;
s209、基于腳本執(zhí)行工具信息調(diào)起相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具并執(zhí)行腳本;
s210、返回執(zhí)行的結(jié)果和執(zhí)行日志;
s211、保存所述執(zhí)行結(jié)果和執(zhí)行日志。
將接收到的執(zhí)行結(jié)果保存到數(shù)據(jù)庫(kù)的任務(wù)執(zhí)行表中,將執(zhí)行日志保存到文件服務(wù)器中。
綜上所述,在上述實(shí)施例中,當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本,然后根據(jù)執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本并發(fā)送自動(dòng)化腳本,根據(jù)接收到的自動(dòng)化腳本解析出自動(dòng)化腳本的信息,調(diào)用執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志,最后保存執(zhí)行結(jié)果和執(zhí)行日志,通過(guò)整合不同自動(dòng)化測(cè)試工具資源,支持多種自動(dòng)化測(cè)試工具執(zhí)行技術(shù),根據(jù)不同的自動(dòng)化腳本屬性進(jìn)行動(dòng)態(tài)批量調(diào)度,提高了執(zhí)行靈活性且降低了執(zhí)行成本。
如圖3所示,為本發(fā)明公開(kāi)的一種面向多工具的自動(dòng)化集中調(diào)度執(zhí)行系統(tǒng)實(shí)施例3的結(jié)構(gòu)示意圖,本系統(tǒng)包括:
屬性配置模塊301,用于維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本;
當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先對(duì)腳本屬性進(jìn)行維護(hù),同時(shí)對(duì)腳本執(zhí)行機(jī)的屬性進(jìn)行維護(hù),并將執(zhí)行腳本進(jìn)行發(fā)送。
自動(dòng)化測(cè)試集中調(diào)度模塊302,用于基于執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本,并發(fā)送所述自動(dòng)化腳本;
根據(jù)接收到的執(zhí)行腳本對(duì)腳本執(zhí)行機(jī)的運(yùn)行狀態(tài)進(jìn)行監(jiān)控,為空閑執(zhí)行機(jī)匹配相應(yīng)的自動(dòng)化腳本,并將獲得到的自動(dòng)化腳本進(jìn)行發(fā)送。
自動(dòng)化測(cè)試執(zhí)行引擎303,用于基于接收到的所述自動(dòng)化腳本,解析出所述自動(dòng)化腳本的信息,調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志;
根據(jù)接收到的自動(dòng)化腳本,解析調(diào)起命令,并調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志,將生成的執(zhí)行結(jié)果和執(zhí)行日志進(jìn)行發(fā)送。
自動(dòng)化測(cè)試集中調(diào)度模塊302,還用于保存所述執(zhí)行結(jié)果和執(zhí)行日志。
將接收到的執(zhí)行結(jié)果和執(zhí)行日志進(jìn)行保存。
綜上所述,在上述實(shí)施例中,當(dāng)需要面向多工具進(jìn)行自動(dòng)化集中調(diào)度時(shí),首先維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本,然后根據(jù)執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本并發(fā)送自動(dòng)化腳本,根據(jù)接收到的自動(dòng)化腳本解析出自動(dòng)化腳本的信息,調(diào)用執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志,最后保存執(zhí)行結(jié)果和執(zhí)行日志,通過(guò)整合不同自動(dòng)化測(cè)試工具資源,支持多種自動(dòng)化測(cè)試工具執(zhí)行技術(shù),根據(jù)不同的自動(dòng)化腳本屬性進(jìn)行動(dòng)態(tài)批量調(diào)度,提高了執(zhí)行靈活性且降低了執(zhí)行成本。
如圖4所述,為本發(fā)明公開(kāi)的一種面向多執(zhí)行技術(shù)的自動(dòng)化測(cè)試集中調(diào)度執(zhí)行系統(tǒng)實(shí)施例4的結(jié)構(gòu)示意圖,本系統(tǒng)包括:
屬性配置模塊401,用于配置腳本的執(zhí)行屬性,并將配置結(jié)果保存至數(shù)據(jù)庫(kù)中的腳本屬性表中;
當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先對(duì)腳本屬性進(jìn)行維護(hù),在對(duì)腳本屬性進(jìn)行維護(hù)時(shí),用戶(hù)對(duì)各自腳本的執(zhí)行屬性,如腳本執(zhí)行所需操作系統(tǒng)、瀏覽器、執(zhí)行工具、執(zhí)行時(shí)間等,進(jìn)行配置,并保存到數(shù)據(jù)庫(kù)中的腳本屬性表中。所存儲(chǔ)的數(shù)據(jù)信息可供自動(dòng)化測(cè)試集中調(diào)度模塊作為動(dòng)態(tài)調(diào)度的條件,同時(shí)自動(dòng)化測(cè)試執(zhí)行引擎模塊根據(jù)相關(guān)的腳本屬性信息組織自動(dòng)化測(cè)試腳本并調(diào)起相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具。
屬性配置模塊401,還用于配置腳本執(zhí)行機(jī)的屬性;
為使自動(dòng)化測(cè)試集中調(diào)度模塊能夠?yàn)樽詣?dòng)化腳本匹配適合的執(zhí)行機(jī)去執(zhí)行,自動(dòng)化測(cè)試執(zhí)行機(jī)也需要進(jìn)行相應(yīng)的屬性配置,包括執(zhí)行機(jī)ip、執(zhí)行機(jī)所支持的操作系統(tǒng)、瀏覽器、執(zhí)行工具等信息。
自動(dòng)化測(cè)試集中調(diào)度模塊402,用于將用戶(hù)批量發(fā)起的自動(dòng)化測(cè)試腳本按照先到先服務(wù)的原則放入腳本執(zhí)行隊(duì)列當(dāng)中,逐一對(duì)隊(duì)列中的腳本屬性信息進(jìn)行分析,獲取腳本執(zhí)行所需的屬性;
當(dāng)完成了腳本屬性的維護(hù)和執(zhí)行機(jī)屬性的維護(hù)后,進(jìn)一步將用戶(hù)批量發(fā)起的自動(dòng)化測(cè)試腳本按照先到先服務(wù)的原則放入到腳本執(zhí)行隊(duì)列當(dāng)中,然后逐一的對(duì)隊(duì)列中的腳本屬性信息進(jìn)行分析,獲取到腳本執(zhí)行所需的屬性。
自動(dòng)化測(cè)試集中調(diào)度模塊402,還用于監(jiān)控腳本執(zhí)行機(jī)的狀態(tài),對(duì)于空閑腳本執(zhí)行機(jī),獲取其所支持的腳本執(zhí)行屬性;
然后對(duì)腳本執(zhí)行機(jī)的狀態(tài)進(jìn)行狀態(tài),判斷執(zhí)行機(jī)是否為“空閑”,當(dāng)執(zhí)行機(jī)為空閑時(shí),獲取該空閑執(zhí)行機(jī)的屬性。
自動(dòng)化測(cè)試集中調(diào)度模塊402,還用于針對(duì)腳本執(zhí)行機(jī)所支持的腳本屬性,從腳本隊(duì)列頭開(kāi)始依次查找適合該腳本執(zhí)行機(jī)執(zhí)行的自動(dòng)化腳本;
然后根據(jù)腳本執(zhí)行機(jī)所支持的腳本屬性,從腳本隊(duì)列的頭開(kāi)始依次查找適合該腳本執(zhí)行機(jī)構(gòu)執(zhí)行的自動(dòng)化腳本。
自動(dòng)化測(cè)試集中調(diào)度模塊402,還用于查找到符合屬性的自動(dòng)化腳本,將其從隊(duì)列中取出,并發(fā)送到空閑腳本執(zhí)行機(jī)上執(zhí)行;
自動(dòng)化測(cè)試執(zhí)行引擎403,用于接收并解析所述自動(dòng)化腳本,獲取到腳本執(zhí)行信息和執(zhí)行工具信息;
自動(dòng)化測(cè)試執(zhí)行引擎403,還用于基于所述腳本執(zhí)行信息生成可執(zhí)行的自動(dòng)化測(cè)試腳本文件;
自動(dòng)化測(cè)試執(zhí)行引擎403,還用于基于腳本執(zhí)行工具信息調(diào)起相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具并執(zhí)行腳本;
自動(dòng)化測(cè)試執(zhí)行引擎403,還用于返回執(zhí)行的結(jié)果和執(zhí)行日志;
自動(dòng)化測(cè)試集中調(diào)度模塊402,還用于保存所述執(zhí)行結(jié)果和執(zhí)行日志。
將接收到的執(zhí)行結(jié)果保存到數(shù)據(jù)庫(kù)的任務(wù)執(zhí)行表中,將執(zhí)行日志保存到文件服務(wù)器中。
綜上所述,在上述實(shí)施例中,當(dāng)需要面向多工具執(zhí)行技術(shù)進(jìn)行自動(dòng)化測(cè)試集中調(diào)度時(shí),首先維護(hù)自動(dòng)化腳本和腳本執(zhí)行機(jī)的執(zhí)行屬性,并發(fā)送執(zhí)行腳本,然后根據(jù)執(zhí)行屬性監(jiān)控腳本執(zhí)行機(jī)的運(yùn)行狀態(tài),獲取自動(dòng)化腳本并發(fā)送自動(dòng)化腳本,根據(jù)接收到的自動(dòng)化腳本解析出自動(dòng)化腳本的信息,調(diào)用相應(yīng)的自動(dòng)化測(cè)試執(zhí)行工具生成執(zhí)行結(jié)果和執(zhí)行日志,最后保存執(zhí)行結(jié)果和執(zhí)行日志,通過(guò)整合不同自動(dòng)化測(cè)試工具資源,支持多種自動(dòng)化測(cè)試工具執(zhí)行技術(shù),根據(jù)不同的自動(dòng)化腳本屬性進(jìn)行動(dòng)態(tài)批量調(diào)度,提高了執(zhí)行靈活性且降低了執(zhí)行成本。
本說(shuō)明書(shū)中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其它實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見(jiàn)即可。
對(duì)所公開(kāi)的實(shí)施例的上述說(shuō)明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專(zhuān)業(yè)技術(shù)人員來(lái)說(shuō)將是顯而易見(jiàn)的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開(kāi)的原理和新穎特點(diǎn)相一致的最寬的范圍。