2016-07-28 5 views
3

私はCakeをビルドスクリプトとして、TeamCityをCIに使用しています。 私はNUnitでCake run unitテストを行い、TeamCityはその結果を 'xml report processor'で取得しています。あなたがそのファイルをインポートしますが、「試験」タブでは、私がテスト出力を見ることができない不足している見ることができるようにケーキを使ってnunitの結果をteamcityにインポートする

ステップがありませんか?テストのための

答えて

2

それはNUnitのコンソールの問題でした。私は3.2.1にダウングレードされ、今は動作します。

+0

ありがとうございました。このソリューションで元の質問を更新するか、それを受け入れられた回答としてマークする価値があります。 –

2

私のケーキのタスクは、ちょうどこのおよびテストレポート]タブが

NUnit3(testsDir.ToString() + "/*Tests.dll", new NUnit3Settings 
{ 
    NoResults = true, 
    NoHeader = true, 
    Framework = "net-4.0", 
    Workers = 5, 
    Timeout = 10000 
}); 

は、あなたが本当にレポートのXMLが必要です表示されているのですか?

+0

これは、TeamCityで実行されていることを検出し、テスト結果をアップロードするための正しいサービスメッセージを提供するために構築されたNUnitに依存しています。 –

+1

はい、本当にありがとうございます。私のニーズは十分以上です – pitermarx

+0

これは私にとってはうまくいきませんでした。 –

1

あなたのテストが正常に実行されなかったように見えます(失敗したテストで正しく実行するのではなく)。ビルドをローカルで実行してから、TestResult.xmlファイルの内容を確認してください。

TCのプロジェクト設定を変更して、xmlファイルを成果物として保存し、そこに表示されているものとあなたの成功したローカルランを比較してください。

最後に、TC設定のXMLレポートのタイプがNUnitに設定されていることを確認します。このことができます

希望、 マーク

+0

そのマークをありがとう。残念ながら、テストは意図的に試行しませんでした。問題が発生したときにレポートが生成されているかどうかを確認するために失敗したテストを導入しました。 TestResult.xmlがよく見え、私が期待しているものと一致することを確認できます。 私はまだ働きたくありません –

0

Teamcity 9.Xがnunit 3 xmlを読み込めないときに、同様の問題が発生しました。以前のバージョンのteamcityレポートパーサービルド機能がその形式を理解していないためです。

私はxUnitのlink to the xsltNUnitの結果を変換して、それが働いて得ます!ファイルをjunitという結果にインポートします。

Task("Run-Unit-Tests") 
.Does(() => 
{ 
    DotNetCoreTest("./Project");   
}).Finally(() => 
{ 
    XmlTransform("./nunit3-xunit.xslt", "./TestResult.xml", "./NUnit.WebApp.FunctionnalTests.TestResult.xml"); 
    if(TeamCity​.IsRunningOnTeamCity) 
    {  
     TeamCity.ImportData("junit","./NUnit.WebApp.FunctionnalTests.TestResult.xml"); 
    } 
}); 
関連する問題