我想尝试使用PartCover进行代码覆盖.我正在使用MSTest运行Visual Studio 2008 Professional.专业版不包括团队测试工具,如代码覆盖率.
所以,我正在尝试PartCover,但我无法让它工作.在PartCover.Browser中我选择了MSTest可执行文件,我已经将工作参数指向了我的tests.dll,并且我已经尝试将我的工作目录指向TestResults文件夹,但是我收到一个错误:
"报告为空.检查设置并再次运行目标."
我不知道下一步该尝试什么.
编辑
事实证明我有两个问题.首先,我没有把我的规则说得对.其次,我的工作论点中有空格.这些空间给出了错误,但没有出现在任何地方.
我正在尝试运行PartCover来测试在Windows x64上使用Gallio进行的一些测试的覆盖范围.但是,尝试运行它会出现以下错误.
由于以下错误,检索具有CLSID {FB20430E-CDC9-45D7-8453-272268002E08}的组件的COM类工厂失败:80040153.
编辑:我正在使用PartCover 2.2.0
我正在尝试让PartCover报告在TeamCity 5.0中正确生成.单击构建详细信息中的"代码覆盖率"选项卡时,报告为空.
我正在使用sln2008构建代理,我的PartCoverage设置如下:
包含模式:
[*]*
Run Code Online (Sandbox Code Playgroud)
报告XSLT:
C:\Program Files\PartCover .NET 2.3\xslt\Report By Assembly.xslt=>ByAssembly.html
C:\Program Files\PartCover .NET 2.3\xslt\Report By Class.xslt=>ByClass.html
Run Code Online (Sandbox Code Playgroud)
如果您可以描述如何将这些报告(或仅重要部分)包含在TeamCity为成功/失败的构建发送的电子邮件中,则可以获得奖励积分.我想继续使用sln2008构建代理,如果可能的话,而不是另一个构建代理.
我已成功将PartCover 2.3与我的64位计算机上的 VS 2008配合使用.
我现在正试图让它与VS 2010和NUnit 2.5.3一起使用.我使用正确的CLR版本获得了NUnit ,但我无法让PartCover产生任何输出.我得到的只是一个"空"报告XML文件:
<PartCoverReport date="2010-03-30T16:09:05.1009099+01:00" />
Run Code Online (Sandbox Code Playgroud)
如何使用PartCover 2.3(或2.2,我猜)在.NET 4.0上使用NUnit 2.5.3?
我正在使用partcover来为一堆mstest驱动的单元测试生成codecoverage.
我使用命令行:
PartCover.exe --target "c:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\MSTest.exe" --target-args "/testcontainer:c:\CrusieControlProjects\AcademyPro\AcademyTests\bin\Release\AcademyTests.dll" --include [AcademyPro*]*
Run Code Online (Sandbox Code Playgroud)
这运行,所有测试都通过,但我最终输出:
Results file: C:\Program Files\Gubka Bob\PartCover .NET 2.3\TestResults\Administrator_PSLV22 2009-03-31 17_54_18.trx
Run Configuration: Default Run Configuration
Target PageFaultCount: 10565
Target PagefileUsage: 27631616
Target PeakPagefileUsage: 31297536
Target PeakWorkingSetSize: 31498240
Target QuotaNonPagedPoolUsage: 8180
Target QuotaPagedPoolUsage: 217124
Target QuotaPeakNonPagedPoolUsage: 13012
Target QuotaPeakPagedPoolUsage: 255524
Target WorkingSetSize: 30310400
request target shutdown
<PartCoverReport date="2009-03-31T18:00:36.7676250+01:00" />
Run Code Online (Sandbox Code Playgroud)
当我使用--output命令运行时,xml文件最终只是
<PartCoverReport date="2009-03-31T18:00:36.7676250+01:00" />
Run Code Online (Sandbox Code Playgroud)
为什么会发生这种情况?
我正在尝试使用mstest测试获得代码覆盖率.我正在使用PartCover 2.2.0.36424.
问题在于真正的程序集,我得到0%的代码覆盖率(注意:所有测试都通过).
在我创建的演示源的演示测试中,它工作正常(报告很有意义).
我注意到在日志文件中:
对于演示文件,在"程序集AAAAAA加载(MyTestesAssemblyName)"行之后,有一行"Class NNNNNN loaded(MyTestesAssemblyName.MyClassname)";
并且对于真实文件,在装配线之后没有第二行(用于类).
有任何想法我们的装配有什么不同吗?(注意:它们没有签名)
10X.
分支覆盖是否适用于以下声明?
我期待一个红色指示器,因为第一个表达式只有测试,它是假的而不是真的.
tax.Voided = P_tax.Amount == 1012312870000.42M || P_tax.Amount < 0.00M;
Run Code Online (Sandbox Code Playgroud)
第一个表达式始终为false,第二个表达式有时为true:
我试图使用Corflags让PartCover在x64下运行.我用的时候:
CorFlags.exe PartCover.exe/32BIT +/Force
我得到:corflags:警告CF011:指定的文件是强名称签名.使用/ Force将使此图像的签名无效,并且需要对程序集进行重新签名.
没有/强迫我得到:
corflags:错误CF012:指定的文件是强名称签名.使用/强制强制更新.
在网上看来,其他人在没有问题的情况下通过corflag运行partcover ...
我正在使用Teamcity 6.0并希望为我们的NUnit测试添加代码覆盖率.
PartCover一直是一个大问题,因为它没有在x64服务器上运行,所以现在我必须去git它并自己构建它:(
另外,jetBrains,如果你知道xslt坏了,让我更容易修复它.
没有任何人有PartCover工作?也许这可能帮助:
http://www.jeremyskinner.co.uk/2010/07/23/using-teamcity-with-partcover-4/
我正在尝试使用TeamCity在x64机器上为.net 4设置partcover.
测试已执行,但覆盖率报告显示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)
Run Code Online (Sandbox Code Playgroud)
但包含模式是[*]*
.
如果重要的话,我正在运行TeamCity 6.5.3.有没有人设法在该版本上运行partcover?