1

我使用 MTM 已经有一段时间了,到目前为止,一切都很好。我试图在我正在执行的测试中获得代码覆盖率。我用 2 台机器设置了我的控制器:1 台 webclient 和 1 台 webserver。对于网络服务器规则,我已经配置了代码覆盖率。当然,网络服务器机器是让我的应用程序在 IIS 上运行的机器。

当我启动我的自动化测试时(顺便说一句,它不是使用 Visual Studio 创建的,而是使用Ranorex创建的)我可以看到它生成了一个 .coverage 文件。

但是当我打开这个文件时,它是空的,我从 Visual Studio 收到这条消息:

生成空结果:没有检测到二进制文件。确保测试运行,加载所需的二进制文件,具有匹配的符号文件,并且没有通过自定义设置排除。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=253731

我当然读过

但是我在我的场景中没有发现任何问题。

有谁知道会发生什么?

4

2 回答 2

1

出色地。原来是我用来在 Web 服务器上运行测试代理的用户的权限问题。

将用户更改为另一个拥有更多权限的用户后,一切正常。

于 2013-03-14T14:02:51.587 回答
1

去检查您是否在解决方案中找到以下文件之一:Local.testsettings或者TraceAndTestImpact.testsettings在 VS 中双击它们。将打开一个新窗口,您需要在其中选择Data and Diagnostics。在那里你会看到一个点Code Coverage,双击它,然后选择你想要被代码覆盖的所有程序集。

如果这不起作用,请检查您的 PDB 文件是否存在于您的 DLL 文件旁边。

于 2013-03-13T14:30:09.877 回答