我一直在使用MTM,到目前为止,这么好。我正在尝试通过我正在执行的测试获得代码覆盖率。我已经为我的控制器设置了2台机器:1个webclient和1个webserver。对于webserver规则,我已配置代码覆盖率。当然,webserver机器是我的应用程序在IIS上运行的机器。
当我启动自动化测试时(btw不是使用visual studio创建的,它是使用Ranorex创建的)我可以看到它生成了一个.coverage文件。
但是当我打开这个文件时,它是空的,我从Visual Studio收到这条消息:
生成空结果:未检测到二进制文件。确保测试运行,加载了所需的二进制文件,具有匹配的符号文件,并且未通过自定义设置排除。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=253731
我当然读过
但我发现我的情景并没有错。
有没有人知道会发生什么?
答案 0 :(得分:1)
转到并检查您是否在解决方案中找到以下文件之一:Local.testsettings
或TraceAndTestImpact.testsettings
并在VS中双击它们。将打开一个新窗口,您需要选择Data and Diagnostics
。在那里你会看到一个点Code Coverage
,双击它然后选择你想要代码覆盖的所有程序集。
如果这不起作用,请检查您的DLL文件旁边是否存在PDB文件。
答案 1 :(得分:1)
好。事实证明,我用来在Web服务器上运行测试代理的用户的权限存在问题。
将用户更改为拥有更多权限的另一个用户后,一切正常。