2011-08-10 13 views
1

partcover for .net 4をx64マシンwith TeamCityにセットアップしようとしています。PartCover with TeamCity

テストは実行されますが、カバレッジレポートは0カバレッジを示します。

No executable code was detected. 
The issue could be caused by one of the following: 
- Include/exclude patterns are incorrect 
- Assemblies are compiled without debugging information 
- .pdb files are not available 
- Visual Studio code coverage is enabled for MSTest 
- .testrunconfig is used for MSTest and Visual Studio code coverage is not disabled (CodeCoverage section with enable="true" is present) 

をしかし含めるパターンが[*]*です:

私は、ログに次のメッセージを取得しています。

TeamCity 6.5.3が重要な場合は実行しています。誰かがそのバージョンでpartcoverを実行することができましたか?

+0

PartCoverの最新バージョンを使用するようにJetBrainsをアップグレードしたとは思いません(2.2および2.3は.NET2のみの古いバージョンです)。組み込み統合を使用するのではなく、PartCoverを直接実行してみてください。 execタスク。 –

+1

PartCoverと統合しようとするのではなく、Jetbrains DotCoverを使用すると、十分に正確なカバレッジレポートを取得できることがわかります。私たちはこのプロジェクトでこれを使用しており、セットアップするのは苦労しました。 [Teamcity Dotcover](http://blogs.jetbrains.com/dotnet/2010/12/jetbrains-teamcity-6-is-released-bundles-dotcover/) –

答えて

7

1)PartCoverのみ32ビットプロセスをサポートしてサポートしている必要がありますので、あなたのテストランナーでも32ビットを実行していることを確認する必要があります。

2)regsvr32を使用してPartCover DLLを登録してください(サービスアカウントを使用してチーム都市を実行する場合、ユーザーごとの登録は使用できません)。

+1

単体テストランナーをx86モードで走らせると、これは私のために解決しました。ありがとう! – jonnii

1

一般に、このメッセージは、TeamCityがカバーラインを見つけられなかったことを意味します。 これは、アセンブリまたはカバレッジパラメータによって発生する可能性があります。

http://youtrack.jetbrains.netで地元の試運転で得たpartcoverレポートを使って問題を作成してください。 partcoverのバージョン番号も含めてください。

チームシティー6.5.3はpartcover 4.0.11129

+0

なぜ彼らはサポートする必要があると言いますか4.0.11129 - あなたはこれにリンクがありますか? AFAIK彼らはSoureforgeにあった2.2と2.3のみをサポートしており、.NET 4バージョンでは特別なことはしていません。彼らがそれをサポートしているなら、実際の計画よりも運が良い(GUIDが維持されているため)。 –

+0

TeamCityは、与えられたコマンドラインでpartcover.exeを起動します。生成されたreport.xmlファイルを解析してレポートを作成し、統計を公開します。どのようなGUIDを意味しますか? 4.0.11129からのレポートを解析できることを確認しました。 –

+1

これは良いニュースです。TeamCityのドロップダウン・エントリーには2.2と2.3がありますが、これは.NET2の唯一のバージョンです。最新バージョン4.0 - は.NET4フレームワークも処理します。あなた(JetBrains)はOpenCoverをサポートしていると考えていますか?32/64ビットのサポートを持っていますし、ブランチカバレッジとシーケンスポイントカバレッジもあります。 –