VS2012是否支持Metro风格应用的代码覆盖率?

5
我正在使用Windows 8 Pro和Visual Studio 2012 Ultimate(两者均为RTM版本)。
我创建了一个Metro风格的类库,然后创建了一个相应的单元测试库。这两个库的目标对象都是WinRT(而不是.NET Framework)。
我可以成功运行单元测试,但是当我尝试“分析所有测试的代码覆盖率”时,输出窗口只显示重新构建的结果,其他内容都是灰色的控件。
从网上了解到,一些人暗示WinRT程序集未启用代码覆盖率,但我无法确认。我还尝试创建.testsettings文件,就像在VS2010中所需的那样,显式地打开代码覆盖率,但我得到了相同的结果。
有谁能够证实或否定在VS2012 RTM中面向WinRT的程序集没有可用的代码覆盖率?我只是试图弄清楚我是否遗漏了某些设置-或者它不可能实现。

请查看http://stackoverflow.com/questions/12812454/winrt-code-coverage/15553968#15553968,该链接涉及WinRT代码覆盖。 - Ira Baxter
1个回答

5

由于WinRT应用程序的沙盒特性,在这个阶段是不可能的。

P.S. 这是团队正在努力解决的问题清单中的一项(不,我没有时间表)。


我知道这个问题提出仅仅一个多月,但是在这方面有任何进展吗? - Jeff
实际上,将分析器钩入Windows 8应用程序是可能的(http://blogs.msdn.com/b/davbr/archive/2013/01/09/writing-a-profiler-of-windows-store-apps.aspx)。像NCover或OpenCover这样的代码覆盖率分析器可以使用此技术-问题实际上是它们是否应该使用? - Shaun Wilde
沙盒如何防止收集代码覆盖率?WinRT应用程序是否可以写入文件(即使您必须给予它权限)?如果可以,为什么不能将覆盖数据写入此类文件? - Ira Baxter
显然,当获得权限时,WinRT应用程序可以写入文件。因此,如果该应用程序可以收集测试覆盖数据,则可能会编写该数据。 - Ira Baxter

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接