OpenCover在64位TeamCity代理上运行

OpenCover在64位TeamCity代理上运行,teamcity,opencover,Teamcity,Opencover,我们正在将TeamCity代理从32位系统迁移到64位系统,由于OpenCover中的错误,一些构建开始失败 这是stacktrace: E:/BuildAgent/work/7777662cc87ae003/tools/opencover/opencover.console.exe -returntargetcode-目标:E:/BuildAgent/work/7777662cc87ae003/tools/nunit/nunit-console.exe -targetargs:“./myTes

我们正在将TeamCity代理从32位系统迁移到64位系统,由于OpenCover中的错误,一些构建开始失败

这是stacktrace:

E:/BuildAgent/work/7777662cc87ae003/tools/opencover/opencover.console.exe -returntargetcode-目标:E:/BuildAgent/work/7777662cc87ae003/tools/nunit/nunit-console.exe -targetargs:“./myTests.dll/framework=v4.0.30319/noshadow/nologo/work=output/result:my-tests-results.xml”-过滤器:“+[something]* -[*something.Test]*“-output:results.xml-register:user

[10:43:16][执行测试:覆盖率]发生异常:未能 寄存器(user:True,register:True,is64:False):2分析器程序集; 您可能希望查看权限或使用-register:user 而不是选择。C:\Windows\system32\regsvr32.exe/s/n/i:user “E:\BuildAgent\work\7777662cc87ae003\tools\opencover\x86\opencover.Profiler.dll”

[10:43:16][执行测试:覆盖]堆栈:在 OpenCover.Framework.ProfilerRegistration.executegsvr32(布尔值 用户注册、布尔寄存器、布尔is64)

[10:43:16][执行测试:覆盖率] OpenCover.Console.Program.Main(字符串[]args)

值得注意的是: 1) 我们正在使用错误消息所指示的'-register:user'
2) 尽管我们的新代理是一个64位系统,但异常表明注册方法被称为w

通过注册64位opencover探查器修复了该问题:

regsvr32 /s \{ToolsFolder}\OpenCover\x64\OpenCover.Profiler.dll 

是的,我相信在使用指南“构建系统集成”中也提到了这一点,我需要让我的gitignore允许我的gitlab项目拥有这个文件。谢谢你的提示