您的位置:軟件測(cè)試 > 開源軟件測(cè)試 > 開源測(cè)試管理工具 > Testlink
使用TestLink管理軟件自動(dòng)化測(cè)試過程
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2016/3/29 14:16:26 ] 推薦標(biāo)簽:測(cè)試管理工具 自動(dòng)化測(cè)試

  本系列文章適用于需要為測(cè)試團(tuán)隊(duì)尋找測(cè)試過程管理解決方案的測(cè)試設(shè)計(jì)、測(cè)試管理人員。目前,開源理念在國(guó)內(nèi)外越來越深入人心,開源軟件大大推動(dòng)了軟件研發(fā)行業(yè)的快速發(fā)展。TestLink 作為軟件測(cè)試管理類開源軟件中的佼佼者,在中小型的軟件測(cè)試項(xiàng)目組中得到了普遍應(yīng)用,項(xiàng)目組的測(cè)試效率得到了很大的提升。本文作為使用 TestLink 管理軟件測(cè)試過程系列文章的第二部分,主要介紹如何使用該工具管理軟件自動(dòng)化測(cè)試過程。首先探討設(shè)計(jì)自動(dòng)化測(cè)試框架時(shí)需要考慮的幾個(gè)關(guān)鍵點(diǎn),接著介紹基于 TestLink 的自動(dòng)化測(cè)試解決方案。后,詳細(xì)介紹了基于 TestLink 的自動(dòng)化測(cè)試解決方案的核心實(shí)現(xiàn)技術(shù),即如何通過編程的方式自動(dòng)化的從測(cè)試計(jì)劃中獲取測(cè)試用例信息、如何上傳、下載、執(zhí)行測(cè)試用例腳本文件和如何回傳測(cè)試結(jié)果信息到 TestLink 等。本系列文章的第一部分已對(duì)如何使用 TestLink 管理軟件功能測(cè)試過程進(jìn)行介紹。
  首先,探討一下設(shè)計(jì)自動(dòng)化測(cè)試框架時(shí),需要慎重考慮的幾個(gè)關(guān)鍵設(shè)計(jì)點(diǎn)。
  設(shè)計(jì)自動(dòng)化測(cè)試框架的關(guān)鍵點(diǎn)
  在設(shè)計(jì)自動(dòng)化測(cè)試框架時(shí),測(cè)試架構(gòu)設(shè)計(jì)師需要考慮很多關(guān)鍵設(shè)計(jì)點(diǎn),這些關(guān)鍵點(diǎn)決定著測(cè)試框架的成敗。本文中,我們主要關(guān)注以下三點(diǎn):如何維護(hù)測(cè)試用例腳本文件、如何匯總展示測(cè)試結(jié)果統(tǒng)計(jì)報(bào)表和自動(dòng)化測(cè)試框架如何與其他研發(fā)管理平臺(tái)的集成。
  如何維護(hù)自動(dòng)化測(cè)試腳本文件是需要考慮的重要關(guān)鍵點(diǎn)之一。從實(shí)際自動(dòng)化測(cè)試項(xiàng)目來看,維護(hù)自動(dòng)化測(cè)試用例腳本文件的方式主要有以下兩種:
  文件系統(tǒng)
  使用自動(dòng)化測(cè)試工具錄制、編寫完畢自動(dòng)化測(cè)試腳本,自動(dòng)化測(cè)試工具會(huì)把腳本文件維護(hù)在本地文件夾。為了在測(cè)試團(tuán)隊(duì)之間共享,會(huì)進(jìn)一步把腳本文件維護(hù)在服務(wù)器共享文件系統(tǒng)上,甚至?xí)S護(hù)在 FTP 服務(wù)器。在執(zhí)行那些腳本文件之前,需要預(yù)先復(fù)制那些腳本文件到執(zhí)行環(huán)境。比如:自動(dòng)化腳本存儲(chǔ)在服務(wù)器 A,如果計(jì)劃在服務(wù)器 B 和服務(wù)器 C 上分別運(yùn)行不同的腳本。一般的做法是:先將相應(yīng)的腳本文件手工從服務(wù)器 A 分別復(fù)制到服務(wù)器 B 和服務(wù)器 C,然后再在服務(wù)器 B 和服務(wù)器 C 上分別運(yùn)行自動(dòng)化測(cè)試。如果還有更多的服務(wù)器需要運(yùn)行腳本,采用類似的方法復(fù)制,運(yùn)行即可。除了手工干預(yù),編寫 DOS 批處理腳本、Shell 腳本或者編程等自動(dòng)完成復(fù)制,會(huì)更加有效率。
  版本配置管理軟件 SVN 等
  使用版本配置管理軟件 SVN 管理自動(dòng)化測(cè)試腳本文件,比使用服務(wù)器文件系統(tǒng)管理更加靈活。可以充分利用 SVN 的版本控制特性,維護(hù)腳本文件的多個(gè)版本;還可以利用 SVN 的權(quán)限設(shè)置特性,為測(cè)試套件設(shè)置訪問權(quán)限。需要執(zhí)行自動(dòng)化測(cè)試的時(shí)候,手工檢出腳本,或者編寫腳本自動(dòng)化檢出。
  上面所描述的維護(hù)自動(dòng)化測(cè)試腳本文件的兩種方式有很多局限,比如,測(cè)試用例文檔和測(cè)試用例腳本文件分隔開來,無法實(shí)現(xiàn)一一對(duì)應(yīng)。查看腳本文件時(shí),需要去別處查找測(cè)試用例文檔。再比如,使用上述兩種方式維護(hù)自動(dòng)化測(cè)試用例腳本文件,需要花費(fèi)很多精力去設(shè)計(jì)腳本維護(hù)模塊與自動(dòng)化測(cè)試框架其他功能模塊單元的集成。本文會(huì)分享一種使用 TestLink 維護(hù)自動(dòng)化測(cè)試腳本文件的解決方案,通過 Web 方式在線訪問存取測(cè)試用例腳本文件,而且測(cè)試用例和測(cè)試腳本很容易一一對(duì)應(yīng),在同一個(gè)頁面實(shí)現(xiàn)對(duì)兩者的訪問。TestLink 的豐富功能模塊,版本管理、權(quán)限設(shè)置、結(jié)果報(bào)表等功能模塊都可以為自動(dòng)化測(cè)試框架所復(fù)用。
  一個(gè)用戶體驗(yàn)良好的測(cè)試框架必須擁有一個(gè)良好的匯總展示測(cè)試結(jié)果統(tǒng)計(jì)報(bào)表的設(shè)計(jì)與實(shí)現(xiàn)。目前流行的自動(dòng)化測(cè)試工具通常會(huì)把測(cè)試執(zhí)行結(jié)果保存在測(cè)試工具所運(yùn)行的服務(wù)器上。如果多臺(tái)機(jī)器同時(shí)運(yùn)行,會(huì)產(chǎn)生不同的分散結(jié)果,這會(huì)遇到結(jié)果查詢與匯總的問題。如果腳本執(zhí)行結(jié)果分散在不同的機(jī)器上,需要復(fù)制到同一個(gè)服務(wù)器上進(jìn)行匯總;由于不同的測(cè)試框架所產(chǎn)生的測(cè)試結(jié)果數(shù)據(jù)格式不統(tǒng)一,需要進(jìn)行提取與分析;結(jié)果數(shù)據(jù)解析匯總后又會(huì)遇到統(tǒng)一管理維護(hù)與展示問題;測(cè)試結(jié)果也無法實(shí)時(shí)更新,不能滿足用戶實(shí)時(shí)查詢等問題。為了解決這些問題,在設(shè)計(jì)自動(dòng)化測(cè)試框架時(shí),不得不花費(fèi)時(shí)間與精力額外設(shè)計(jì)與開發(fā)測(cè)試結(jié)果匯總解析與展示模塊,用于向測(cè)試管理人員與執(zhí)行人員展示測(cè)試結(jié)果報(bào)表數(shù)據(jù)。
  設(shè)計(jì)的測(cè)試框架時(shí),還不得不考慮自動(dòng)化測(cè)試框架如何與其他研發(fā)管理平臺(tái)的集成。目前大多數(shù)測(cè)試團(tuán)隊(duì)的自動(dòng)化測(cè)試框架,很難與其他研發(fā)測(cè)試管理平臺(tái)進(jìn)行數(shù)據(jù)共享與同步,比如:自動(dòng)化測(cè)試執(zhí)行完成后,其自動(dòng)化腳本所覆蓋的測(cè)試用例的執(zhí)行結(jié)果信息,仍然需要在測(cè)試用例管理平臺(tái)上通過手工標(biāo)記 Pass、Failed、NotRun 等進(jìn)行變更;同樣對(duì)缺陷管理平臺(tái)也是如此,有 Failed 的測(cè)試用例,仍然需要手工在缺陷管理平臺(tái)中填入缺陷信息,而不能自動(dòng)同步到缺陷管理平臺(tái)中去。本文提出的基于 TestLink 的自動(dòng)化測(cè)試解決方案可以自動(dòng)回傳自動(dòng)化執(zhí)行結(jié)果到 TestLink 服務(wù)器,并能與第三方開源缺陷管理平臺(tái)進(jìn)行良好的集成。
  接下來,讓我們一起探討一下把測(cè)試框架與 TestLink 進(jìn)行集成的解決方案。該方案的顯著特征為:使用 TestLink 的測(cè)試用例附件功能模塊來維護(hù)自動(dòng)化測(cè)試腳本文件,利用 TestLink 的測(cè)試結(jié)果報(bào)表功能模塊來匯總展示自動(dòng)化測(cè)試執(zhí)行結(jié)果。通過擴(kuò)展,自動(dòng)化實(shí)現(xiàn) TestLink 與第三方開源缺陷平臺(tái)的進(jìn)行集成。
  基于 Testlink 的自動(dòng)化測(cè)試解決方案
  針對(duì)上文提到的測(cè)試框架設(shè)計(jì)關(guān)鍵點(diǎn),在開發(fā)自動(dòng)化測(cè)試框架時(shí),基于 TestLink 進(jìn)行二次開發(fā)是個(gè)很的解決方案,它具有如下優(yōu)勢(shì):
  測(cè)試過程管理平臺(tái)的統(tǒng)一,功能測(cè)試和自動(dòng)化測(cè)試使用統(tǒng)一的平臺(tái)
  使用統(tǒng)一的平臺(tái),可以避免測(cè)試工作復(fù)雜化。對(duì)于現(xiàn)有的在 TestLink 中維護(hù)的功能測(cè)試用例,如果需要執(zhí)行自動(dòng)化測(cè)試,很容易將其轉(zhuǎn)化為自動(dòng)化測(cè)試用例。在測(cè)試規(guī)約 Test Specification 頁面,選擇測(cè)試用例,編輯其執(zhí)行類型 Execution Type, 由手工類型 Manual 改成自動(dòng)化執(zhí)行類型 Automated,并上傳該用例的自動(dòng)化測(cè)試腳本文件作為附件即可。
  可以充分利用 TestLink 的現(xiàn)有特性對(duì)自動(dòng)化測(cè)試用例進(jìn)行管理
  比如,可以使用 TestLink 的版本管理特性,維護(hù)自動(dòng)化測(cè)試用例的不同版本;可以使用 TestLink 的結(jié)果報(bào)表特性來展示自動(dòng)化測(cè)試執(zhí)行的結(jié)果報(bào)表。還通過擴(kuò)展,借助 SOAP、REST、XML-RPC 接口,可以與第三方開源缺陷管理工具、項(xiàng)目管理工具進(jìn)行集成,比如 Bugzilla、MantisBT、JIRA 等等。
  圖 1 是使用 TestLink 管理自動(dòng)化測(cè)試過程的流程圖,它包括自動(dòng)化用例維護(hù)和自動(dòng)化用例執(zhí)行兩部分。自動(dòng)化測(cè)試用例維護(hù)部分的流程圖包括:
  對(duì) TestLink 上的功能測(cè)試用例做規(guī)劃,決定哪些應(yīng)該被自動(dòng)化執(zhí)行。編輯其執(zhí)行類型,改為自動(dòng)化測(cè)試用例。
  編寫自動(dòng)化測(cè)試用例的腳本。腳本文件的編寫依賴于自動(dòng)化測(cè)試工具,在本文中,自動(dòng)化測(cè)試用例腳本文件是業(yè)界流行的基于 XML 格式的文件,該腳本文件可以被基于 Selenium 開發(fā)的自動(dòng)化測(cè)試框架識(shí)別,關(guān)于該框架請(qǐng)參考 IBM DeveloperWorks 文章《使用 XML 維護(hù) Selenium 自動(dòng)化測(cè)試腳本》。
  自動(dòng)化測(cè)試用例腳本上傳。上傳自動(dòng)化測(cè)試用例腳本文件到測(cè)試用例的附件部分,可以使用 TestLink 來維護(hù)自動(dòng)化測(cè)試用例的腳本文件。
  完成全部的自動(dòng)化用例腳本的編寫,并把腳本文件上傳到 TestLink 自動(dòng)化測(cè)試用例的附件部分。
  創(chuàng)建測(cè)試計(jì)劃,把自動(dòng)化用例添加到測(cè)試計(jì)劃中,完成測(cè)試用例的維護(hù)。TestLink 也提供了為測(cè)試用例設(shè)置執(zhí)行順序的特性,讀者們可以根據(jù)自己項(xiàng)目組的實(shí)際情況進(jìn)行設(shè)置。
  自動(dòng)化用例執(zhí)行部分的流程包括:
  選取測(cè)試計(jì)劃、維護(hù)構(gòu)建信息,獲取要執(zhí)行的測(cè)試用例信息。
  在 TestLink 中,測(cè)試用例的執(zhí)行是為測(cè)試用例標(biāo)記測(cè)試結(jié)果信息,包括是否執(zhí)行通過,額外的描述信息等。在執(zhí)行之前,需要設(shè)置執(zhí)行依賴的版本構(gòu)建信息。在 TestLink 管理自動(dòng)化測(cè)試時(shí),需要首先通過 TestLink 的測(cè)試計(jì)劃信息,自動(dòng)化的獲取該測(cè)試計(jì)劃包含的測(cè)試用例信息,進(jìn)而獲取測(cè)試用例的腳本文件信息。
  下載測(cè)試用例的腳本文件到本地。
  正如上文所述,在 TestLink 中,測(cè)試用例的執(zhí)行僅僅是標(biāo)記測(cè)試結(jié)果信息。測(cè)試腳本文件的具體執(zhí)行需要依賴第三方自動(dòng)化測(cè)試工具。需要預(yù)先把測(cè)試用例的測(cè)試腳本文件下載到本地以供自動(dòng)化測(cè)試工具自動(dòng)調(diào)用執(zhí)行。
  執(zhí)行下載到本地的測(cè)試用例腳本文件。
  把下載到本地的測(cè)試用例腳本文件位置作為參數(shù)傳遞給第三方自動(dòng)化測(cè)試工具,完成自動(dòng)化測(cè)試用例的具體執(zhí)行任務(wù)。執(zhí)行完畢,生成測(cè)試結(jié)果信息。根據(jù)項(xiàng)目組使用的不同第三方自動(dòng)化測(cè)試工具,靈活處理該部分,本文不再贅述。
  完成測(cè)試計(jì)劃下包含的全部自動(dòng)化用例腳本的下載與執(zhí)行,生成測(cè)試結(jié)果信息。
  向 TestLink 回傳測(cè)試用例的執(zhí)行結(jié)果。通過編程,自動(dòng)化地完成標(biāo)記測(cè)試用例的結(jié)果。完成該部分,可以利用 TestLink 的結(jié)果報(bào)表模塊查詢分析測(cè)試結(jié)果。


  
圖 1. 與 TestLink 集成的自動(dòng)化測(cè)試流程圖

  接下來,展開討論基于 TestLink 的自動(dòng)化測(cè)試解決方案的核心技術(shù)實(shí)現(xiàn)。為讀者們講述如何通過編程調(diào)用 TestLink 提供的 XML-RPC 接口,實(shí)現(xiàn)自動(dòng)化從測(cè)試計(jì)劃中獲取測(cè)試用例信息,測(cè)試用例腳本文件的上次與下載,回傳用例的執(zhí)行結(jié)果等。

上一頁12下一頁
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd