2013-11-25 66 views
1

我在團隊構建中使用這個新的Resharper Command line tool來分析代碼問題。 這工作正常,它會生成一個包含所有代碼問題的XML文件。在團隊構建中分析Resharper代碼分析xml

我想要完成的是解析XML。對於每個問題,我想寫一個構建警告或構建錯誤。

的XML看起來是這樣的:

<Report ToolsVersion="8.0"> 
    <IssueTypes>...</IssueTypes> 
    <Project Name="FooBar"> 
     <Issue TypeId="FieldCanBeMadeReadOnly.Local" File="Builder.cs" Offset="266-277" Line="10" Message="Field can be made readonly" /> 
... 
    </Project> 
</Report> 

是他們的任何XML解析器可用,我可以插入我的生成過程模板?還是我需要製作自己的控制檯應用程序來分析xml?

+0

您是否考慮將自定義活動發送到[Community TFS Build Extensions](http://tfsbuildextensions.codeplex.com)項目?我認爲我們將在不久的將來在構建過程中開始整合resharper,如果能夠像這樣集中並徹底地進行測試,那將是非常好的。 – julealgon

回答

1

我不知道XML解析器是否存在,或者是否可以集成到工作流中,但是可能是創建自定義構建活動並將其綁定到構建過程中。

該活動可以讀取包含問題的XML文件並填寫IEnumerable<string>。 (或者一個對象,我相信你應該能夠創建一個對象並從工作流中訪問這些屬性)。在工作流程中,你可以捕獲輸出enumerable,循環遍歷它,並將構建錯誤或警告(或兩者)寫入你的構建輸出。

Ewald Hofman在create your own activity上有一篇很好的博客文章,它實際上非常簡單,並且可以讓您對實際操作有很多控制權。

+1

我想出了這個:https://gist.github.com/prebenh/7657656 –