星期四, 2月 28, 2008

設定CruiseControl.NET產生統計報表

CruiseControl預設不會產生專案統計報表。

欲獲得統計報表,最簡單的設定方式是在ccnet.config中,在欲產生報表的project的<publishers>區段加入<statistics/>。如下所示:

<publishers>
    <xmllogger/>
    <statistics/>
</publishers>

專案執行成功後,可以在幾個地方看到統計資料報表:

  1. Dashboard的"View Statistics"網頁
  2. log目錄中的report.xml檔案
  3. log目錄中的statistics.csv檔案

要客製化報表內容可以使用如下的設定方式:

<statistics>
    <statisticList>
        <statistic name="TestCount" xpath="count(//MyTests/Test)"/>
        <statistic name="TestFailures" xpath="count(//MyTests/Test[@success='False'])"/>
        <statistic name="TestIgnored" xpath="count(//MyTests/Test[@success='Ignore'])"/>
    </statisticList>
</statistics>

此範例自訂了三個statistics:TestCount, TestFailures, 以及TestIgnored。利用xpath來指定所要產生的數值。

若專案有使用nunit,只要<statistics/>有設定,就會自行產出上述三個statistics,無須使用客製化方式來設定。