配置Ruby腳本以產(chǎn)生測試報告
由于昨天接到的Ruby腳本是用rake(據(jù)柱石說是類似java的ant)來運行測試的,我在本地跑了很多次也沒找到它在測試運行完成后,是怎樣處理測試報告的……,因為我嘗試過N多方式去讓腳本產(chǎn)生測試報告。后在Hudson的一個mailing list中找到的解決方案:使用ci_reporter自動將Ruby的測試報告轉(zhuǎn)換成Junit風(fēng)格的xml文件,然后Hudson可以直接讀取Junit風(fēng)格的xml文件,展示和記錄測試結(jié)果,具體做法如下:
1. 安裝ci_reporter:gem install ci_reporter
2. 修改Rakefile,增加以下幾行
require ‘rubygems’
gem ‘ci_reporter’
require ‘ci/reporter/rake/test_unit’
3. 接下來可以通過ci_reporter來生成Junit風(fēng)格的xml報告文件了,在運行rake命令的時候稍作修改即可:
rake ci:setup:testunit test
缺省情況下,會在test/reports目錄下生成符合Junit風(fēng)格的報告文件。
新建Hudson job 運行腳本
上一節(jié)已經(jīng)找到了合適的方式Hudson上是用job來管理要運行的項目(對于測試來說,可以理解為測試工程)的,同樣,作為一個Ruby的自動化測試,同樣也會有工程或者項目的的概念,我們需要在Hudson中新建一個Job來對應(yīng)我們要運行的Ruby工程,配置很簡單跟普通的java項目配置基本一樣,但是有幾點需要注意:
1. 需要綁定這個任務(wù)到我們剛剛配置的client,因為如果不綁定的話,Hudson會根據(jù)機器的負載情況自動分配當(dāng)前的任務(wù)到某個client或者master上,如果被分配到Linux的機器上,則腳本不能調(diào)用Win32程序來完成界面測試,具體做法如下:
在任務(wù)配置界面中,在如上圖所示的下拉框中,選中剛剛已經(jīng)配置好的client名稱“GUI-TEST-NODE”
2. 要運行ruby腳本,使用的rake命令,因此這里我們需要將這個命令配置好,同時由于我們使用了ci_reporter,所以如上一節(jié)一樣,我們稍微修改一下命令
rake ci:setup:testunit test –trace