專利名稱:測試系統(tǒng)及方法
技術領域:
本發(fā)明涉及一種測試系統(tǒng)及方法,具體說涉及一種分布式自動化測試管理系統(tǒng)及方法。
背景技術:
目前測試的發(fā)展中,測試流程管理和自動化測試是兩大熱點,前者解決了測試工作的規(guī)范性問題,后者則直接提升了測試效率。對于這兩大方向,持續(xù)升溫的熱情直接導致眾多工具和方法的涌現(xiàn),測試流程管理的常用手段是測試管理系統(tǒng),而自動化測試的常用工具則是自動化測試系統(tǒng)。
測試流程管理系統(tǒng),是一個測試計劃、測試例、測試結果的集中管理服務器,配備有強大的查詢引擎,以滿足用戶對任意測試資料的查詢和檢索。
自動化測試系統(tǒng),它與手動測試相比,最大的區(qū)別在于測試操作、預期測試結果都固化在測試腳本中。測試人員事先根據(jù)測試例定制好測試腳本,然后使用自動化測試系統(tǒng)自動將腳本下發(fā)到被測設備,并捕獲設備側的輸出,通過將輸出與固化在腳本中預期結果比較從而得出測試結論。考慮到整個測試過程無人值守,人力的釋放導致了效率的提升。運行的測試腳本數(shù)越多,效率越高。
目前,業(yè)界主流的自動化測試管理體系通常由兩部分組成,一部分是基于Web的測試流程管理系統(tǒng),另一部分則是自動化測試系統(tǒng)。測試資料管理系統(tǒng)提供測試計劃、自動測試例、測試執(zhí)行結果的管理功能。自動化測試系統(tǒng)則是由標準配置的組網(wǎng)環(huán)境和測試腳本運行引擎組成。
該系統(tǒng)典型的操作流程如下1.用戶先根據(jù)欲測試的功能從Web頁面上選擇適合的自動化環(huán)境;
2.指定需要執(zhí)行的自動測試例集合;3.系統(tǒng)將對應的測試腳本集下發(fā)到執(zhí)行自動化測試的主機上;4.自動化系統(tǒng)逐一運行腳本集中的每一腳本,并將運行結果填寫到數(shù)據(jù)庫中;5.用戶從Web頁面查詢到下發(fā)測試集的運行結果。
這種技術方案的缺點是●割裂了自動測試和手工測試,使測試管理不能成為閉環(huán)這種自動化測試管理系統(tǒng)僅能管理測試工作中能夠自動化的那部分,其它的手動測試部分被排除在外,所以無法根據(jù)其產(chǎn)生的結果給出產(chǎn)品版本評價。如測試經(jīng)理在出版本測試報告時,必然要綜合自動的功能測試結果和手動的系統(tǒng)測試結果,才能給出公正客觀的評價。
●自動化測試系統(tǒng)采用標準組網(wǎng),設備利用率不高倘若待測的設備類型多,標準的自動化組網(wǎng)很難搭建,即便是硬搭建起來,環(huán)境的利用率也不會高,例如某公司有十種類型產(chǎn)品設備,則需要搭建十個標準自動化環(huán)境,而事實上對于一些設備的某些測試任務,環(huán)境是可以重復利用的,例如測試路由器和交換機的Ping功能,并不一定需要兩個環(huán)境,或者說當測試多個型號的交換機時,某些空閑的環(huán)境本身也是可以利用的,但現(xiàn)有技術并沒有考慮到這一點,更沒有考慮到將這些環(huán)境統(tǒng)一管理,達到資源優(yōu)化配置的目的。
●僅適合于專業(yè)自動化測試實驗室集中管理倘若公司的組織結構決定不能走專職自動化工程師集中測試的道路,本系統(tǒng)顯然不能滿足要求。
●不同的特性與不同的環(huán)境綁定,不夠友好
●要求使用本系統(tǒng)測試的用戶必須熟悉自動化系統(tǒng)的組網(wǎng)環(huán)境以及與之對應的特性集,否則無法順利完成執(zhí)行任務。
發(fā)明內容
本發(fā)明所要解決的技術問題是提供一種測試系統(tǒng)及其方法,能較好的解決了測試過程中的手動測試和自動化測試統(tǒng)一管理的問題。
為此,本發(fā)明提供一種測試系統(tǒng),該系統(tǒng)包括一個測試管理系統(tǒng)和至少一個自動化測試系統(tǒng),其中測試管理系統(tǒng)和自動化測試系統(tǒng)通過網(wǎng)絡相連接,所述測試管理系統(tǒng)包括自動化環(huán)境管理模塊,用于接收和注銷自動化測試系統(tǒng)中的包括自動化測試主機及測試設備屬性的相關信息;所述自動化測試系統(tǒng)包括啟動注冊模塊,用來向所述測試管理系統(tǒng)發(fā)送本地的包括自動化測試主機及測試設備屬性的信息。
本發(fā)明的另一方面是提供一個通過網(wǎng)絡連接自動化測試系統(tǒng)的測試管理系統(tǒng),包括測試點、測試用例和腳本管理模塊;測試任務管理模塊,用于創(chuàng)建、管理測試任務;自動化環(huán)境管理模塊,用于接收和注銷所述自動化測試系統(tǒng)中的包括自動化測試主機及測試設備屬性的信息。
進一步的,該系統(tǒng)還可以包括作狀態(tài)查詢模塊,用于周期性的查詢自動化測試系統(tǒng)的忙或閑狀態(tài);測試結果存儲模塊,用于接收自動化測試系統(tǒng)主機提交的測試結果并存儲。
本發(fā)明的又一方面是提供一個通過網(wǎng)絡連接測試管理系統(tǒng)的自動化測試系統(tǒng),包括腳本執(zhí)行模塊,用來執(zhí)行測試腳本;日志管理模塊,用來記錄每一測試腳本的詳細執(zhí)行過程;啟動注冊模塊,用于向所述測試管理系統(tǒng)發(fā)送包括主機IP地址、忙閑信息注冊消息。
另外,所述系統(tǒng)還可以包括測試任務接收模塊,用于在測試過程中從所述測試管理系統(tǒng)接收測試任務信息;測試腳本查詢模塊,用于按測試點編號檢索自動化主機本地存儲的測試腳本,篩選出本次執(zhí)行的腳本對象集;結果回填模塊,用于測試腳本執(zhí)行完畢后,將測試結果信息回傳給所述測試管理系統(tǒng)。
本發(fā)明的另一目的是提供一種測試方法,應用在包含測試管理系統(tǒng)服務器和與之相連接的至少一個自動化測試系統(tǒng)的測試環(huán)境中,所述自動化測試系統(tǒng)具有自動化測試系統(tǒng)主機和自動化環(huán)境,該方法包括如下步驟創(chuàng)建測試任務;從自動化測試系統(tǒng)主機列表中選擇設備類型適合的自動化測試主機;下發(fā)測試任務到所述自動化測試系統(tǒng)主機;所述自動化測試系統(tǒng)執(zhí)行測試腳本;回填測試結果給所述測試管理系統(tǒng)服務器。
其中,所述自動化測試系統(tǒng)主機啟動時向所述測試管理系統(tǒng)服務器發(fā)送包括本機IP地址、所述自動化測試系統(tǒng)忙/閑信息和連接的自動化環(huán)境支持的被測設備類型相關信息;所述自動化測試系統(tǒng)主機注銷時,所述測試管理系統(tǒng)服務器從本地數(shù)據(jù)庫中刪除所述主機的注冊信息。
其中,所述自動化測試管理系統(tǒng)的用戶端采用WEB界面。
本發(fā)明的另一目的是提供一種測試系統(tǒng),其特征在于該系統(tǒng)包括測試管理系統(tǒng),用以管理測試系統(tǒng),并提供人機交互接口;自動化測試系統(tǒng),用以完成測試管理系統(tǒng)下發(fā)的至少一個測試任務,并向測試管理系統(tǒng)提供自身的資源信息;所述測試管理系統(tǒng)通過人機交互接口輸出所述資源信息。
其中,所述自身的資源信息包括自動化測試系統(tǒng)主機的IP地址、所述自動化測試系統(tǒng)忙/閑信息和連接的自動化環(huán)境支持的被測設備類型相關信息;所述自動化測試系統(tǒng)周期性的發(fā)送所述自身資源信息。
另外,所述系統(tǒng)還包括報告生成模塊,用于根據(jù)所述自動測試系統(tǒng)的測試結果和/或手動測試結果自動生成一份測試報告。
本發(fā)明提供的測試系統(tǒng)由于具有一個測試管理系統(tǒng)和至少一個自動化測試系統(tǒng),所述測試管理系統(tǒng)中的自動化環(huán)境管理模塊能夠自動接收和注銷自動化測試系統(tǒng)中的包括自動化測試主機及測試設備屬性的相關信息;所述自動化測試系統(tǒng)中的啟動注冊模塊,能夠在自動化測試系統(tǒng)啟動時,向所述測試管理系統(tǒng)發(fā)送本地的包括自動化測試主機及測試設備屬性的信息,從而較好的將測試管理系統(tǒng)和自動化測試系統(tǒng)融合在一起,特別是可以同時管理多個自動化測試系統(tǒng),協(xié)同工作。使得所提供的測試系統(tǒng)既具有自動化測試系統(tǒng)的自動化測試的方便,也能實現(xiàn)自動化測試和手動測試的統(tǒng)一管理。
另外,由于自動化環(huán)境的選擇由系統(tǒng)自動完成,所以用戶只需按自己的需要選擇合適的測試例,完全不用關心自動化環(huán)境的組網(wǎng),使用方便。由于自動化測試腳本集是部署在自動化測試系統(tǒng)主機上的,所以自動化測試系統(tǒng)本身可以脫離測試管理系統(tǒng)單獨運行,從而提高了自動化測試環(huán)境的利用率。
本發(fā)明提供的測試方法中,由于測試管理系統(tǒng)能夠將測試任務自動得下發(fā)到自動化測試系統(tǒng)中執(zhí)行,自動化測試系統(tǒng)在測試腳本執(zhí)行完畢后也能將測試結果回填到測試管理系統(tǒng),因而能夠將測試過程中的所有包括測試任務、測試用例、測試腳本及測試結果等統(tǒng)一管理,使得測試過程更加方便、快捷。
通過以下結合附圖對本發(fā)明所進行的詳細描述,本發(fā)明的優(yōu)點將更加清楚。
圖1是本發(fā)明提供的測試系統(tǒng)的概要組成示意圖。
圖2是本發(fā)明的一個具體實施例中提供的測試管理系統(tǒng)結構的示意圖。
圖3是本發(fā)明的一個具體實施例中提供的自動化測試系統(tǒng)結構的示意圖。
圖4是本發(fā)明提供的測試方法的流程圖。
具體實施例方式
本發(fā)明的實質是將測試流程管理系統(tǒng)和自動化測試系統(tǒng)相組合成一個完整的測試系統(tǒng),組合后的測試系統(tǒng)很好的融合了管理系統(tǒng)和自動化系統(tǒng)的各自優(yōu)勢,并使得測試過程的管理、測試結果的運用分析更加簡便、快捷。進一步地說,本發(fā)明的精神在于,讓自動化測試系統(tǒng)的把完成各種測試任務所需要的信息上傳到測試管理系統(tǒng)上來,讓測試人員直觀地看到當前自動化測試系統(tǒng)的基本信息(如注冊信息、腳本信息,主機忙閑信息,環(huán)境是否占用信息等),我們將這些基本信息定義為自動化測試系統(tǒng)的自身資源信息,根據(jù)這些資源信息,就能方便地選擇自動化測試系統(tǒng)中的自動化測試主機和相應的測試環(huán)境;提高測試環(huán)境利用效率,另外由于本發(fā)明采用基于Web的管理方式,加上將腳本相關功能信息在管理系統(tǒng)中對測試人員是可見的;這大大降低了對測試人員專業(yè)知識的要求,實現(xiàn)的傻瓜化的操作,甚至普通的開發(fā)人員都可以勝任相應的測試任務。
需要說明的是,雖然本發(fā)明能有多種不同形式的實施方案,但是在了解本公開內容只是被用作發(fā)明原理的示范,而不意味著將本發(fā)明的廣泛特征局限于在此說明的具體實施方案的基礎上,本發(fā)明的優(yōu)選實施方案將在圖示中加以顯示并對其進行具體描述。
通常,本申請說明書中的陳述不是必然限定任何不同的已要求權利的發(fā)明。而且,一些說明可以應用到某些發(fā)明特征而沒有應用到其他特征。除非特別指出,否則為了不失通用性,通常模塊可包含多個模塊,反之亦然。
本發(fā)明將按照示范系統(tǒng)框圖和程序流程圖來進行適當描述。雖然這些項目足以指導本領域內普通技術人員領會本發(fā)明的意圖,但它們不能被嚴格地解釋為本發(fā)明范圍的限制。本領域的普通技術人員會認識到系統(tǒng)框圖可以在不失通用性的情況下可被重新組合和安排,并且程序步驟也可添加或刪減并重新安排,以便在不失示教通用性的情況下達到相同的效果。因此,應該理解本領域內的技術人員可以根據(jù)想要達到的目的應用而對本發(fā)明所附示范系統(tǒng)框圖和程序流程圖進行修改。同時,本發(fā)明示范了可以達到所有發(fā)明目的的多種程序和流程,這些步驟可以同步或異步執(zhí)行。因此,本發(fā)明的范圍也就不只局限于已知流程的特定順序。
圖1示出了本發(fā)明的一個具體實施例中所提供的測試系統(tǒng)的概要組成示意圖。在圖1中,測試管理系統(tǒng)被部署在測試管理服務器2上,測試管理服務器2維護一個存儲測試用例、測試腳本信息以及測試結果數(shù)據(jù)的數(shù)據(jù)庫5,并和至少一個的自動化測試系統(tǒng)主機3通過網(wǎng)絡進行了物理連接,每一個自動化測試主機連接到自己所屬的自動化環(huán)境4,在這里自動化測試系統(tǒng)主機理論上可以是無限多。自動化測試系統(tǒng)(包括自動化測試系統(tǒng)主機3和相應的自動化環(huán)境4)可以只針對一個測試用例進行構建,也可以針對一個測試集進行構建。在本實施中,我們將每一個自動化測試系統(tǒng)分解對應最小的測試點,例如,自動化測試系統(tǒng)1用來測試交換機的性能而自動化測試系統(tǒng)2用來測試路由器的性能,這樣使得系統(tǒng)的管理更加統(tǒng)一、方便。當然,本領域中的普通技術人員會毫無困難的知道,我們也可以將每一個自動化測試系統(tǒng)對應到N個測試點即N個測試例,組成一個測試集,從而完成一組功能,例如對交換機、路由器的同時測試。因此,不消說,這些簡單的變化和組合都是包含在本發(fā)明保護范圍之內的。
本領域中的普通技術人員已經(jīng)對背景技術中所提到的測試管理系統(tǒng)非常熟悉。根據(jù)測試管理系統(tǒng)要實現(xiàn)的功能,常見的測試管理系統(tǒng)通常具備以下功能模塊,即●產(chǎn)品數(shù)據(jù)配置模塊用來配置需要被測試產(chǎn)品名稱、產(chǎn)品各角色人員等。
●測試任務管理模塊即用來部署測試的任務,簡單說來,其過程就是測試經(jīng)理下發(fā)測試策略,測試工程師填寫測試結果的過程。
●測試點、測試用例管理模塊用來管理實施要測試的目標和運用的測試手段的模塊,這一般是測試管理系統(tǒng)的靈魂所在。
●度量分析模塊是以測試任務所產(chǎn)生的測試結果為依據(jù)進行評價,一般包含測試效率的衡量和測試質量分析兩個方面。
參考圖2,圖2示出了本發(fā)明的一個具體實施例中所提供的測試管理系統(tǒng)的框架結構示意圖。該系統(tǒng)除具備上述較為通用的功能模塊如產(chǎn)品數(shù)據(jù)配置模塊201、測試任務管理模塊203及度量分析模塊204外,最重要的是添加了自動化環(huán)境管理模塊205以及對測試腳本的統(tǒng)一管理模塊??梢缘弥覀儗y試腳本的統(tǒng)一管理納入了測試點、測試用例管理模塊形成了新的管理模塊測試點、測試用例、測試腳本管理模塊202,并增加了新的模塊即自動化環(huán)境注冊模塊205、工作狀態(tài)查詢模塊206和測試結果存儲模塊207。
自動化環(huán)境管理模塊205的引入是很容易理解的,其主要作用就是系統(tǒng)啟動時和自動化測試系統(tǒng)相聯(lián)系并取得其注冊信息以便納入統(tǒng)一管理,以使得自動化測試系統(tǒng)所包含的各種信息在管理系統(tǒng)上是可見的,方便選擇;同時在系統(tǒng)注銷時取消已經(jīng)注冊的注冊信息。
該模塊的主要功能包括兩個方面●接收自動化測試系統(tǒng)主機的注冊信息在自動化測試系統(tǒng)主機啟動后,會主動向自動化管理模塊發(fā)送注冊消息,注冊消息包含自動化測試系統(tǒng)主機IP地址、與主機直連的自動化測試環(huán)境支持的被測設備類型,這里通常用設備名稱來命名。
例如參數(shù)為(192.168.3.117,8040)注冊消息表達的含義是IP為192.168.3.117的測試主機直連的環(huán)境是路由器測試環(huán)境,適合測試型號為8040的路由器產(chǎn)品。
自動化環(huán)境管理模塊將接收到的注冊消息存儲在圖1的數(shù)據(jù)庫5中。
●接收自動化測試系統(tǒng)主機退出時發(fā)送的注銷信息這里的注銷信息與前述的注冊信息是成對出現(xiàn)的。但注銷消息中僅包含自動化測試系統(tǒng)主機IP地址。自動化環(huán)境管理模塊接收到的主機注銷消息后,直接將其從圖1的數(shù)據(jù)庫5中刪除。
工作狀態(tài)查詢模塊206主要用來接收自動化測試系統(tǒng)主機周期性的忙/閑通告;測試結果存儲模塊207主要用來接收自動化測試系統(tǒng)主機提交的測試結果,并將其存入數(shù)據(jù)庫;測試點、測試用例、測試腳本模塊202中新增加了對測試腳本的統(tǒng)一管理功能。該功能的實現(xiàn)使得原來分散存放在各個不同自動化測試系統(tǒng)本地的測試腳本的信息能夠被本系統(tǒng)所識別。其中的關鍵點是腳本版本的同步更新問題,在本發(fā)明的一個具體實施例中,每臺自動化測試系統(tǒng)主機上都部署了與直連的自動化測試環(huán)境配套的自動化測試腳本。在本地的腳本更新后,測試主機會定期(例如每2個小時)向測試管理系統(tǒng)發(fā)送腳本更新消息,一個有效的更新消息可以是形如(192.168.3.117,8040,{腳本1,腳本2,腳本5,...})其中,192.168.3.117為測試主機IP,8040是自動化測試環(huán)境支持的被測設備類型,{...}中記錄則是測試主機上部署的、全部的腳本名稱集合。
測試管理系統(tǒng)收到主機發(fā)送的腳本更新報文后,將其保存在圖1的數(shù)據(jù)庫5中,以主機IP和腳本名稱作為關鍵字。
以上即是本發(fā)明所提供測試管理系統(tǒng)的概要闡述,總結上述測試管理系統(tǒng)的一般特征,可以得知,一般來說,本發(fā)明所提供的測試管理系統(tǒng)具備以下結構特征
測試點、測試用例和腳本管理模塊;測試任務管理模塊,用于創(chuàng)建、管理測試任務;自動化環(huán)境管理模塊,用于接收和注銷所述自動化測試系統(tǒng)中的包括自動化測試主機及測試設備屬性的信息。簡單地說,測試人員在測試管理系統(tǒng)上就可以得知,自動化測試系統(tǒng)剩下哪些資源(這是自動化環(huán)境管理模塊提供的),在這些資源上能做些什么(也就是說可以運行哪些腳本),更進一步地說,可以采用Web動態(tài)顯示技術,讓某些腳本的功能動態(tài)顯示,讓測試人員一目了然。需要說明的是,自動化環(huán)境管理模塊和腳本管理模塊只是邏輯上的劃分,其完全可以集成在一個模塊中,但邏輯上仍然是兩個。
在背景技術中,我們也提到了自動化測試系統(tǒng)的一般組成及其原理。一般來說,自動化測試系統(tǒng)提供以下功能及其對應的模塊,即●腳本執(zhí)行模塊用來執(zhí)行測試腳本,一般是順次執(zhí)行自動化任務中指定的腳本對象集。
●日志管理模塊用來記錄每一腳本的詳細執(zhí)行過程,包括但不限于測試例中每一步驟對設備的配置,設備側終端響應等,它的主要作用在于腳本執(zhí)行異常時的調試跟蹤。
本發(fā)明所提供的自動化測試系統(tǒng)的概要組成結構可以參考圖3。根據(jù)圖3可以得知,該自動化測試系統(tǒng)(300)除包括腳本執(zhí)行模塊305和日志管理模塊306外,為了和測試管理系統(tǒng)相協(xié)調,還增加了啟動注冊模塊301和測試任務接收模塊302、測試腳本查詢模塊303及結果回填模塊304。
啟動注冊模塊負責在系統(tǒng)啟動時,向測試管理系統(tǒng)的自動化環(huán)境管理模塊發(fā)送注冊消息,告知測試管理系統(tǒng)有關本系統(tǒng)的自動化測試系統(tǒng)主機的信息,例如IP地址、連接的自動化環(huán)境支持的被測設備類型,以及環(huán)境是否已經(jīng)被占用即本系統(tǒng)的忙/閑等信息。
測試任務接收模塊302的主要功能是在測試過程中完成和測試管理系統(tǒng)的通訊,相關測試任務信息的收集,其主要功能可以概括先負責接收從測試管理系統(tǒng)下發(fā)的測試腳本執(zhí)行任務信息,包括任務ID、待測的測試點編號等。
測試腳本查詢模塊303根據(jù)測試任務接收模塊接收的測試任務信息,按測試點編號檢索自動化主機本地存儲的測試腳本,篩選出本次執(zhí)行的腳本對象集。
結果回填模塊304在每一特性的腳本執(zhí)行完畢后,將結果信息回傳給測試管理系統(tǒng),以便讓用戶隨時了解到自動化任務的進度。
總之,本領域中普通技術人員可以看出,一般來說,本發(fā)明所提供的自動化測試系統(tǒng)具備以下結構特征腳本執(zhí)行模塊,用來執(zhí)行測試腳本;日志管理模塊,用來記錄每一測試腳本的詳細執(zhí)行過程;啟動注冊模塊,用于向所述測試管理系統(tǒng)發(fā)送包括主機IP地址、忙閑信息注冊消息。
以上我們簡要介紹了本發(fā)明所提供的測試系統(tǒng)中的測試管理系統(tǒng)及自動化系統(tǒng)的概要組成及其結合的關鍵點和方法,由以上的描述可以看出,本發(fā)明所描述的測試系統(tǒng)由于融合了測試管理系統(tǒng)和自動化測試系統(tǒng),因此實現(xiàn)了對測試的靈活、統(tǒng)一管理。
繼續(xù)結合圖1,本發(fā)明提供的測試系統(tǒng)的工作原理為,自動化測試系統(tǒng)啟動后,會周期性的向測試管理系統(tǒng)發(fā)送注冊消息,告知所在自動化測試系統(tǒng)的諸如主機IP、連接的環(huán)境支持的被測設備類型,以及環(huán)境是否已經(jīng)被占用等信息。測試系統(tǒng)實施對測試任務的統(tǒng)一管理,用戶先指定被測設備類型,然后按測試策略選擇測試例集合(不區(qū)分自動還是手動),系統(tǒng)會根據(jù)用戶提供的被測設備類型,選擇一個空閑的、設備類型匹配的自動化環(huán)境,并將測試例集合下發(fā)到與環(huán)境相連的自動化測試主機上,自動化測試系統(tǒng)會從本地的測試腳本中篩選與下發(fā)測試例對應的形成本次任務的自動化測試腳本集,再下發(fā)到自動化環(huán)境中運行,并將運行結果回傳給測試管理系統(tǒng),由測試管理系統(tǒng)完成測試結果的入庫工作。自動化測試完成后,再安排測試人員對沒有填寫結果的用例作一個覆蓋,就圓滿完成了一次產(chǎn)品版本測試工作。在此,本發(fā)明可選擇提供一個報告生成模塊,如果本次測試是全自動的,那報告直接自動生成;如果本次測試還需要加入手動的部分,只需要把結果填入測試管理系統(tǒng)(在Web頁上即可),測試管理系統(tǒng)根據(jù)手動和自動的測試結果自動生成一份測試報告,從而省去了測試人員手動創(chuàng)建測試報告的過程。
需要提醒的是,本發(fā)明管理的自動化環(huán)境在地域上可以是分散的,只要測試管理系統(tǒng)服務器和自動化測試系統(tǒng)主機是連通的即可。
以下結合圖4來簡要描述本發(fā)明所提供的測試系統(tǒng)的具體工作流程。
在步驟S1,用戶訪問測試管理系統(tǒng)提供的測試任務管理界面,并創(chuàng)建一個產(chǎn)品測試任務。在本發(fā)明的一個實施例中,用戶對測試管理系統(tǒng)服務器的訪問是通過WEB頁面進行的,也即是采用了較為流行的B/S結構。當然,此處用戶對測試管理系統(tǒng)服務的訪問也可以采用C/S結構,因此,不消說,這些變化是包含在本發(fā)明所要求保護的范圍之內的。
在步驟S2,測試管理系統(tǒng)根據(jù)用戶創(chuàng)建的測試任務的被測設備類型,從自動化測試系統(tǒng)主機列表中選擇一個跟本測試任務相匹配的自動化測試系統(tǒng)。
在步驟S3,測試管理系統(tǒng)將創(chuàng)建的任務所屬的測試用例全部下發(fā)到在步驟S2中篩選出的自動化測試系統(tǒng)所屬的主機上。
在步驟S4,自動化測試系統(tǒng)的主機控制系統(tǒng)從本地存儲的測試腳本集中篩選出欲測試的對象,下發(fā)到自動化環(huán)境中準備運行。
在步驟S5,自動化測試系統(tǒng)在自動化環(huán)境中執(zhí)行測試腳本。
在步驟S6,自動化測試系統(tǒng)判斷測試任務中的測試集是否執(zhí)行完畢,若是則進入步驟S7,否則返回步驟S5,繼續(xù)執(zhí)行相應的測試腳本。
在步驟S7,自動化測試系統(tǒng)將測試腳本運行的測試結果回傳給測試管理系統(tǒng),由其存入數(shù)據(jù)庫。
在步驟S8,用戶在Web頁面上訪問該測試任務,能自動化的部分已經(jīng)填寫了測試結果,再手動測試任務中非自動化的部分,即完成一次產(chǎn)品測試任務。
綜上所述,本發(fā)明所提供的測試系統(tǒng)和方法具有如下有益效果1.通過對所有測試資料的統(tǒng)一管理,實現(xiàn)了測試管理的閉環(huán);2.利用自動化測試系統(tǒng)啟動時的注冊機制,實現(xiàn)了對分布式自動化環(huán)境的集中管理;3.自動化環(huán)境對應的測試集本地存放的策略,解決了測試腳本的更新問題。
權利要求
1.一種測試系統(tǒng),包括一個測試管理系統(tǒng)和至少一個自動化測試系統(tǒng),其中測試管理系統(tǒng)和自動化測試系統(tǒng)通過網(wǎng)絡相連接,其特征在于所述測試管理系統(tǒng)包括自動化環(huán)境管理模塊,用于接收或注銷自動化測試系統(tǒng)中的包括自動化測試主機及被測試設備屬性的相關信息;所述自動化測試系統(tǒng)包括啟動注冊模塊,用來向所述測試管理系統(tǒng)發(fā)送本地的包括自動化測試主機及測試設備屬性的信息。
2.如權利要求1所述的測試系統(tǒng),其特征在于所述測試管理系統(tǒng)還包括工作狀態(tài)查詢模塊,用于周期性的查詢自動化測試系統(tǒng)的忙或閑狀態(tài);測試結果接收模塊,用于接收自動化測試系統(tǒng)主機提交的測試結果并存儲。
3.如權利要求1所述的測試系統(tǒng),其特征在于所述自動化測試系統(tǒng)還包括測試任務接收模塊,用于接收從所述測試管理系統(tǒng)下發(fā)的任務信息,所述任務信息包括任務編號、測試點編號信息;測試腳本查詢模塊,用于根據(jù)所述接收的測試點編號信息篩選出需要執(zhí)行的本地腳本對象集;測試結果回填模塊,用于將測試結果信息回傳給所述測試管理系統(tǒng)。
4.一個通過網(wǎng)絡連接自動化測試系統(tǒng)的測試管理系統(tǒng),包括測試點、測試用例和腳本管理模塊;測試任務管理模塊,用于創(chuàng)建、管理測試任務;其特征在于所述測試管理系統(tǒng)還包括自動化環(huán)境管理模塊,用于接收和注銷所述自動化測試系統(tǒng)中的包括自動化測試主機及測試設備屬性的信息。
5.如權利要求4所述的測試管理系統(tǒng),其特征在于該系統(tǒng)還包括工作狀態(tài)查詢模塊,用于周期性的查詢自動化測試系統(tǒng)的忙或閑狀態(tài);測試結果存儲模塊,用于接收自動化測試系統(tǒng)主機提交的測試結果并存儲。
6.一個通過網(wǎng)絡連接測試管理系統(tǒng)的自動化測試系統(tǒng),包括腳本執(zhí)行模塊,用來執(zhí)行測試腳本;日志管理模塊,用來記錄每一測試腳本的詳細執(zhí)行過程;其特征在于該系統(tǒng)還包括啟動注冊模塊,用于向所述測試管理系統(tǒng)發(fā)送包括主機IP地址、忙閑信息注冊消息。
7.如權利要求6所述的自動化測試系統(tǒng),其特征在于所述系統(tǒng)還包括測試任務接收模塊,用于在測試過程中從所述測試管理系統(tǒng)接收測試任務信息;測試腳本查詢模塊,用于按測試點編號檢索自動化主機本地存儲的測試腳本,篩選出本次執(zhí)行的腳本對象集;結果回填模塊,用于測試腳本執(zhí)行完畢后,將測試結果信息回傳給所述測試管理系統(tǒng)。
8.一種測試方法,應用在包含測試管理系統(tǒng)服務器和與之相連接的至少一個自動化測試系統(tǒng)的測試環(huán)境中,所述自動化測試系統(tǒng)具有自動化測試系統(tǒng)主機和自動化環(huán)境,其特征在于包括如下步驟創(chuàng)建測試任務;從已經(jīng)在測試管理系統(tǒng)服務器上注冊的自動化測試系統(tǒng)主機列表中選擇設備類型適合的自動化測試主機;下發(fā)測試任務到所述自動化測試系統(tǒng)主機;所述自動化測試系統(tǒng)執(zhí)行測試腳本;回填測試結果給所述測試管理系統(tǒng)服務器。
9.如權利要求8所述的方法,其特征在于所述自動化測試系統(tǒng)主機啟動時向所述測試管理系統(tǒng)服務器發(fā)送包括本機IP地址、所述自動化測試系統(tǒng)忙/閑信息和連接的自動化環(huán)境支持的被測設備類型相關信息;所述自動化測試系統(tǒng)主機注銷時,所述測試管理系統(tǒng)服務器從本地數(shù)據(jù)庫中刪除所述主機的注冊信息。
10.如權利要求8或9所述的方法,其特征在于所述自動化測試管理系統(tǒng)的用戶端采用WEB界面。
11.一種測試系統(tǒng),其特征在于該系統(tǒng)包括測試管理系統(tǒng),用以管理測試系統(tǒng),并提供人機交互接口;自動化測試系統(tǒng),用以完成測試管理系統(tǒng)下發(fā)的至少一個測試任務,并向測試管理系統(tǒng)提供自身的資源信息;所述測試管理系統(tǒng)通過人機交互接口輸出所述資源信息。
12.如權利要求11所述的測試系統(tǒng),其特征在于所述自身的資源信息包括自動化測試系統(tǒng)主機的IP地址、所述自動化測試系統(tǒng)忙/閑信息和連接的自動化環(huán)境支持的被測設備類型相關信息。
13.如權利要求11所述的測試系統(tǒng),其特征在于所述自動化測試系統(tǒng)周期性的發(fā)送所述自身資源信息。
14.如權利要求11所述的測試系統(tǒng),其特征在于所述系統(tǒng)還包括報告生成模塊,用于根據(jù)所述自動測試系統(tǒng)的測試結果和/或手動測試結果自動生成一份測試報告。
全文摘要
本發(fā)明提供一種測試系統(tǒng)及其方法,該測試系統(tǒng)包括一個測試管理系統(tǒng)和至少一個自動化測試系統(tǒng),其中測試管理系統(tǒng)和自動化測試系統(tǒng)通過網(wǎng)絡相連接,其中所述測試管理系統(tǒng)包括自動化環(huán)境管理模塊,用于接收或注銷自動化測試系統(tǒng)中的包括自動化測試主機及被測試設備屬性的相關信息;所述自動化測試系統(tǒng)包括啟動注冊模塊,用來向所述測試管理系統(tǒng)發(fā)送本地的包括自動化測試主機及測試設備屬性的信息。利用本發(fā)明所提供的系統(tǒng),能實現(xiàn)自動化測試和手動測試的統(tǒng)一管理,及對分布式自動化環(huán)境的集中管理。
文檔編號H04L12/26GK1731748SQ200510088630
公開日2006年2月8日 申請日期2005年7月29日 優(yōu)先權日2005年7月29日
發(fā)明者崔鵬, 王豐塏, 董欣 申請人:杭州華為三康技術有限公司