本發(fā)明涉及自動(dòng)化測(cè)試領(lǐng)域,具體而言,涉及一種腳本處理方法及裝置。
背景技術(shù):
自動(dòng)化測(cè)試現(xiàn)在已經(jīng)被廣泛應(yīng)用于測(cè)試工作中,使用軟件自動(dòng)配置好需要測(cè)試的設(shè)備、儀表,然后在設(shè)定好的時(shí)間開(kāi)始進(jìn)行測(cè)試,再將測(cè)試的結(jié)果告知測(cè)試人員,大大節(jié)省了測(cè)試人員的時(shí)間和精力。
自動(dòng)化測(cè)試報(bào)告中,如果所有腳本運(yùn)行結(jié)果都是通過(guò),那就不再需要人為參與進(jìn)來(lái)。但是如果測(cè)試報(bào)告中有腳本運(yùn)行結(jié)果是失敗,那么很多時(shí)候還是需要進(jìn)行人工分析的。因?yàn)橛袝r(shí)失敗的原因并不是被測(cè)設(shè)備有故障,可能是環(huán)境問(wèn)題,可能是有些干擾導(dǎo)致,如果只是單純的根據(jù)自動(dòng)化測(cè)試結(jié)果來(lái)進(jìn)行判斷,認(rèn)為這個(gè)腳本對(duì)應(yīng)的功能存在問(wèn)題,未免有些武斷,需要進(jìn)一步人工分析。即使是由于被測(cè)設(shè)備有故障導(dǎo)致的腳本失敗,也需要進(jìn)一步分析一下,故障的原因在哪里,是設(shè)備壓根就沒(méi)反應(yīng),還是反應(yīng)了但是反應(yīng)錯(cuò)了,這些其實(shí)都需要人為進(jìn)行分析。自動(dòng)化測(cè)試一般在測(cè)試人員下班后進(jìn)行,但是這個(gè)失敗腳本的分析工作卻都需要等測(cè)試人員上班以后,逐一進(jìn)行失敗原因的查找,耽誤了時(shí)間,也勢(shì)必影響自動(dòng)化的效率,降低了自動(dòng)化測(cè)試的優(yōu)勢(shì),違背了自動(dòng)化測(cè)試的初衷。
針對(duì)在相關(guān)技術(shù)中,不能自動(dòng)檢測(cè)腳本運(yùn)行失敗原因的問(wèn)題,尚未提出有效的解決方案。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種腳本處理方法及裝置,以至少解決相關(guān)技術(shù)中不能自動(dòng)檢測(cè)腳本運(yùn)行失敗原因的問(wèn)題。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種腳本處理方法,包括:
腳本運(yùn)行失敗時(shí),根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè);
根據(jù)上述檢測(cè)的結(jié)果確定上述腳本運(yùn)行失敗的原因。
進(jìn)一步地,根據(jù)上述檢測(cè)的結(jié)果確定上述腳本運(yùn)行失敗的原因包括:
根據(jù)上述檢測(cè)的檢查項(xiàng)和上述檢查項(xiàng)對(duì)應(yīng)的誤差范圍確定上述腳本運(yùn)行失敗的原因。
進(jìn)一步地,上述方法還包括:
根據(jù)腳本運(yùn)行失敗的原因確定上述腳本運(yùn)行失敗被關(guān)注的等級(jí)。
進(jìn)一步地,在根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè)之前,還包括:
根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型預(yù)置與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)。
進(jìn)一步地,上述檢查項(xiàng)包括:設(shè)備問(wèn)題檢查和/或設(shè)備運(yùn)行環(huán)境問(wèn)題檢查。
根據(jù)本發(fā)明的另一方面,提供了一種腳本處理裝置,包括:
啟動(dòng)模塊,用于當(dāng)腳本運(yùn)行失敗時(shí),根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè);
第一確定模塊,用于根據(jù)上述檢測(cè)的結(jié)果確定上述腳本運(yùn)行失敗的原因。
進(jìn)一步地,上述第一確定模塊包括:
確定單元,用于根據(jù)上述檢測(cè)的檢查項(xiàng)和上述檢查項(xiàng)對(duì)應(yīng)的誤差范圍確定上述腳本運(yùn)行失敗的原因。
進(jìn)一步地,上述裝置還包括:
第二確定模塊,用于根據(jù)上述腳本運(yùn)行失敗的原因確定上述腳本運(yùn)行失敗被關(guān)注的等級(jí)。
進(jìn)一步地,上述裝置還包括:
預(yù)置模塊,用于根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型預(yù)置與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)。
進(jìn)一步地,上述檢查項(xiàng)包括:
設(shè)備問(wèn)題檢查和/或設(shè)備運(yùn)行環(huán)境問(wèn)題檢查。
通過(guò)本發(fā)明,當(dāng)腳本運(yùn)行失敗時(shí),根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè);根據(jù)上述檢測(cè)的結(jié)果確定上述腳本運(yùn)行失敗的原因。解決了現(xiàn)有技術(shù)中不能自動(dòng)檢測(cè)腳本運(yùn)行失敗原因的問(wèn)題,進(jìn)而達(dá)到自動(dòng)化實(shí)現(xiàn)檢測(cè)并確定腳本運(yùn)行失敗原因,提高了自動(dòng)化測(cè)試的效果。
附圖說(shuō)明
此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
圖1是根據(jù)本發(fā)明實(shí)施例的腳本處理方法的流程圖;
圖2是根據(jù)本發(fā)明示例的腳本處理方法的流程圖;
圖3是根據(jù)本發(fā)明實(shí)施例的腳本處理裝置的結(jié)構(gòu)框圖;
圖4是根據(jù)本發(fā)明實(shí)施例的腳本處理裝置的另一結(jié)構(gòu)框圖。
具體實(shí)施方式
下文中將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。
需要說(shuō)明的是,本發(fā)明的說(shuō)明書(shū)和權(quán)利要求書(shū)及上述附圖中的術(shù)語(yǔ)“第一”、“第二”等是用于區(qū)別類(lèi)似的對(duì)象,而不必用于描述特定的順序或先后次序。
在本實(shí)施例中提供了一種腳本處理方法,圖1是根據(jù)本發(fā)明實(shí)施例的腳本處理方法的流程圖,如圖1所示,該流程包括如下步驟:
步驟s102,腳本運(yùn)行失敗時(shí),根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè);
步驟s104,根據(jù)上述檢測(cè)的結(jié)果確定上述腳本運(yùn)行失敗的原因。
通過(guò)上述各個(gè)步驟,當(dāng)腳本運(yùn)行失敗的時(shí)候,系統(tǒng)會(huì)自動(dòng)根據(jù)腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與該業(yè)務(wù)類(lèi)型所對(duì)應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè),該檢查項(xiàng)可以是技術(shù)人員根據(jù)經(jīng)驗(yàn)提前預(yù)置的,根據(jù)上述檢測(cè)的結(jié)果確定腳本運(yùn)行失敗的原因,解決了現(xiàn)有技術(shù)中不能自動(dòng)檢測(cè)腳本運(yùn)行失敗原因的問(wèn)題,進(jìn)而達(dá)到自動(dòng)化實(shí)現(xiàn)檢測(cè)并確定腳本運(yùn)行失敗原因,提高了自動(dòng)化測(cè)試的效率。
在一個(gè)可選示例中,步驟s104還可以通過(guò)以下方案實(shí)現(xiàn):
根據(jù)上述檢測(cè)的檢查項(xiàng)和上述檢查項(xiàng)對(duì)應(yīng)的誤差范圍確定上述腳本運(yùn)行失敗的原因。
檢查項(xiàng)的檢測(cè)過(guò)程可以是首先確定腳本運(yùn)行失敗的原因是否是屬于這一檢查項(xiàng)類(lèi)別下的問(wèn)題,其次在這一檢查項(xiàng)下,根據(jù)該檢查項(xiàng)檢測(cè)結(jié)果對(duì)應(yīng)的誤差結(jié)果是屬于該檢查項(xiàng)對(duì)應(yīng)的誤差范圍的具體位置,來(lái)具體確定該腳本運(yùn)行失敗的原因。一般而言,針對(duì)不同的運(yùn)行腳本類(lèi)型檢查項(xiàng)各不相同,但是將檢查項(xiàng)總體進(jìn)行分類(lèi)的話包括設(shè)備問(wèn)題檢查和設(shè)備運(yùn)行環(huán)境問(wèn)題檢查這兩個(gè)大的范圍內(nèi),具體的檢查項(xiàng)可以是這兩個(gè)大檢查項(xiàng)的細(xì)分。
在一個(gè)優(yōu)選的示例中,確定了腳本運(yùn)行失敗的原因后,可以根據(jù)該原因確定上述腳本運(yùn)行失敗被關(guān)注的等級(jí)。一般而言相關(guān)人員會(huì)根據(jù)經(jīng)驗(yàn)針對(duì)腳本的業(yè)務(wù)類(lèi)型特點(diǎn)對(duì)檢查項(xiàng)進(jìn)行定制。當(dāng)腳本運(yùn)行失敗時(shí),會(huì)根據(jù)上述技術(shù)方案自動(dòng)開(kāi)始自檢,獲得腳本失敗的原因,然后根據(jù)該原因?qū)I(yè)務(wù)影響的重要性將該原因進(jìn)行關(guān)注等級(jí)的歸類(lèi),例如:“重點(diǎn)關(guān)注”,“一般關(guān)注”,“未分析”等幾類(lèi)。當(dāng)自檢結(jié)果為設(shè)備功能問(wèn)題歸為重點(diǎn)關(guān)注,自檢結(jié)果為環(huán)境因素的歸為一般關(guān)注,走其他分支的腳本歸為未分析。這樣將附帶關(guān)注等級(jí)的腳本處理結(jié)果提供給自動(dòng)化測(cè)試人員時(shí)會(huì)自動(dòng)提示其關(guān)注的等級(jí),減少了測(cè)試人員的分析時(shí)間,提高了自動(dòng)化測(cè)試的效率。
基于上述技術(shù)方案,提供一具體示例,圖2是根據(jù)本發(fā)明示例的腳本處理方法的流程圖。如圖2所示,上述流程具體包括如下步驟:
步驟s202:測(cè)試人員根據(jù)測(cè)試需求和腳本的業(yè)務(wù)類(lèi)型定制檢查項(xiàng),當(dāng)腳本業(yè)務(wù)類(lèi)型為以太網(wǎng)lacp(以太網(wǎng)鏈路聚合,linkaggregationcontrolprotocol)時(shí),腳本失敗的原因多為兩種:a、收發(fā)包誤差,b、模塊狀態(tài)不對(duì)。所以該技術(shù)方案主要針對(duì)這兩個(gè)方面進(jìn)行檢測(cè)。
步驟s204:開(kāi)始腳本運(yùn)行檢測(cè)。檢測(cè)腳本運(yùn)行是否失敗,如果是,運(yùn)行步驟s206,如果否,運(yùn)行下一腳本;
步驟s206:?jiǎn)?dòng)檢查項(xiàng)檢測(cè)流程;
步驟s208:確定腳本失敗的原因,如果是a類(lèi)錯(cuò)誤,a類(lèi)收發(fā)包誤差范圍在[-x,y],當(dāng)檢測(cè)的誤差范圍在[-x,0]范圍內(nèi)時(shí),執(zhí)行步驟s210,如果是a類(lèi)錯(cuò)誤誤差范圍在[0,y]時(shí),執(zhí)行步驟s212,如果是b類(lèi)錯(cuò)誤,執(zhí)行步驟s214,如果不是a、b類(lèi)錯(cuò)誤,執(zhí)行步驟s216;
步驟s210:自檢結(jié)果為設(shè)備問(wèn)題,重點(diǎn)關(guān)注,執(zhí)行步驟s218;
步驟s212:自檢結(jié)果為環(huán)境問(wèn)題,一般關(guān)注,執(zhí)行步驟s218;
步驟s214:自檢結(jié)果為時(shí)延問(wèn)題,一般關(guān)注,執(zhí)行步驟s218;
步驟s216:自檢結(jié)果為其他問(wèn)題,未分析,執(zhí)行步驟s218;
步驟s218:運(yùn)行下一個(gè)腳本,執(zhí)行步驟s204,直至運(yùn)行完畢。這時(shí)測(cè)試人員獲得一份匯總為“重點(diǎn)關(guān)注”、“一般關(guān)注”和“未分析”的檢測(cè)報(bào)告,可以有重點(diǎn)的對(duì)失敗腳本進(jìn)行排查。
通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到根據(jù)上述實(shí)施例的方法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如rom/ram、磁碟、光盤(pán))中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例上述的方法。
在本實(shí)施例中還提供了一種腳本處理裝置,如圖3所示,該裝置用于實(shí)現(xiàn)上述實(shí)施例及優(yōu)選實(shí)施方式,已經(jīng)進(jìn)行過(guò)說(shuō)明的不再贅述。如以下所使用的,術(shù)語(yǔ)“模塊”可以實(shí)現(xiàn)預(yù)定功能的軟件和/或硬件的組合。盡管以下實(shí)施例所描述的裝置較佳地以軟件來(lái)實(shí)現(xiàn),但是硬件,或者軟件和硬件的組合的實(shí)現(xiàn)也是可能并被構(gòu)想的。
圖3是根據(jù)本發(fā)明實(shí)施例的腳本處理裝置的結(jié)構(gòu)框圖,如圖3所示,該裝置包括如下模塊:
啟動(dòng)模塊32,用于當(dāng)腳本運(yùn)行失敗時(shí),根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè);
第一確定模塊34,與啟動(dòng)模塊32相連,用于根據(jù)上述檢測(cè)的結(jié)果確定上述腳本運(yùn)行失敗的原因。
通過(guò)上述各個(gè)模塊的綜合作用,當(dāng)腳本運(yùn)行失敗的時(shí)候,啟動(dòng)模塊32會(huì)自動(dòng)根據(jù)腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型啟動(dòng)與該業(yè)務(wù)類(lèi)型所對(duì)應(yīng)的檢查項(xiàng)進(jìn)行檢測(cè),該檢查項(xiàng)可以是技術(shù)人員根據(jù)經(jīng)驗(yàn)提前預(yù)置的,第一確定模塊34根據(jù)上述檢測(cè)的結(jié)果確定腳本運(yùn)行失敗的原因,解決了現(xiàn)有技術(shù)中不能自動(dòng)檢測(cè)腳本運(yùn)行失敗原因的問(wèn)題,進(jìn)而達(dá)到自動(dòng)化實(shí)現(xiàn)檢測(cè)并確定腳本運(yùn)行失敗原因,提高了自動(dòng)化測(cè)試的效率。
在一優(yōu)選實(shí)施例中,上述第一確定模塊32包括:確定單元,用于根據(jù)上述檢測(cè)的檢查項(xiàng)和上述檢查項(xiàng)對(duì)應(yīng)的誤差范圍確定上述腳本運(yùn)行失敗的原因。檢查項(xiàng)可包括:設(shè)備問(wèn)題檢查和/或設(shè)備運(yùn)行環(huán)境問(wèn)題檢查。
圖4是根據(jù)本發(fā)明實(shí)施例的腳本處理裝置的另一結(jié)構(gòu)框圖,如圖4所示,該裝置在啟動(dòng)模塊32和第一確定模塊34之外,還包括:
預(yù)置模塊30,與啟動(dòng)模塊32相連,用于根據(jù)上述腳本對(duì)應(yīng)的業(yè)務(wù)類(lèi)型預(yù)置與上述業(yè)務(wù)類(lèi)型相應(yīng)的檢查項(xiàng)。
第二確定模塊36,與第一確定模塊34相連,用于根據(jù)上述腳本運(yùn)行失敗的原因確定上述腳本運(yùn)行失敗被關(guān)注的等級(jí)。
需要說(shuō)明的是,上述各個(gè)模塊是可以通過(guò)軟件或硬件來(lái)實(shí)現(xiàn)的,對(duì)于后者,可以通過(guò)以下方式實(shí)現(xiàn),但不限于此:上述模塊均位于同一處理器中;或者,上述模塊分別位于多個(gè)處理器中。
綜上所述,本發(fā)明實(shí)施例解決了現(xiàn)有技術(shù)中不能自動(dòng)檢測(cè)腳本運(yùn)行失敗原因的問(wèn)題,進(jìn)而達(dá)到自動(dòng)化實(shí)現(xiàn)檢測(cè)并確定腳本運(yùn)行失敗原因,提高了自動(dòng)化測(cè)試的效率。
顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來(lái)實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來(lái)實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來(lái)執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來(lái)實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。