我有一个Windows 8商店应用程序,在解决方案中有两个项目 - 一个专门用于测试的项目。我通过nuget为此添加了NUnit和NUnit测试适配器(https://www.nuget.org/packages/NUnitTestAdapter/1.0.0)。
检测到我的测试 - 但我无法运行或调试它们。查看测试输出窗口,我收到以下错误:
我没有使用resharper,我在Windows 8.1上使用Visual Studio Professional 2012 Update 3。测试项目的参考文献如下:
答案 0 :(得分:1)
根据我上面的评论,下面是一种解决方法。不幸的是,在这个阶段,由于.NET目标不同,使用NUnit扩展的Windows 8.1存储单元测试项目类型将无法工作。我尝试使用不同的测试单元适配器,包括NUnitTestAdapterWithFramework。
似乎您遇到的问题是针对NUnit测试适配器的标准.NET库,但上述NUnitTestAdapterWithFramework必须解决这些问题。请参阅Q & A section of the NUnitTestExtension
但不幸的是,这仍然是Win8 Store App类型单元测试尚未解决的问题。非常肯定xUnit.NET also not compatible还有不同的.NET目标类型(i,e WinRT)
那么有什么选择呢? 一个。对于您的组,您可以将它们更改为使用MSTest框架。结果 - 问题解决没有问题。
湾解决方法“链接项目”。结果 - 不能*保证**但这也应该有效。
使用选项'b'
在你提到的评论中。
但我仍然不确定它的作用或如何实现'链接 项目',你有更多的信息吗?同样,这是 对于小组大学项目,我希望我不必强制 太多变通办法
当你想到它时,它并没有真正的努力。这很简单,我确信您的小组可以轻松应用此解决方法。
请按照以下步骤操作。
在解决方案中创建一个单独的类库(您可以定位.NET框架4)。
然后像往常一样添加NUnit程序集和NUnit测试适配器。
右键单击此项目并选择“添加”,然后选择“现有项目”
选择Win8 Store Unit Test项目并找到要添加的Unit Test文件。添加文件时,请确保选择“添加为链接”按钮。请参阅下文。
现在重建解决方案,关闭并重新打开UnitTest资源管理器,您应该可以运行这些测试。
*我说的原因无法保证。我还没有真正针对Win8 App编写单元测试。因此,如果您的SUT(被测系统)需要特殊配置,则可能会导致问题。但我不确定。
最后创建一个链接文件并不难,如果一切正常,你可以继续这样做,直到NUnit支持Win8单元测试。或者其他选项只是更改所有单元测试以尽可能使用MSTest框架。