繁体   English   中英

如何在64位Windows 7上运行和调试Visual Studio 2008中的nunit测试?

[英]How to run and debug nunit tests in Visual Studio 2008 on 64-bit Windows 7?

我已将我的开发机器(WinXP / 32bit)更换为新机器(Windows 7/64位)。 现在我无法在Visual Studio 2008中运行NUnit测试。我正在使用最新版本的TestDrivenNet

我要找的是:

  • a)如何使TestDrivenNet在Win7 / 64上运行
  • b)寻找替代试验跑步者的建议。 免费一个首选。

什么在WinXp / 32上工作(并且不适用于Win7 / 64):

  • 在VS.NET中运行一个测试方法
  • 在VS.NET中调试一个测试方法
  • 在VS.NET中的一个类中运行所有测试

Win7 / 64的症状:

  • 当试图运行测试时,跑步者报告“0通过,0失败,0跳过”。 它似乎无法在我的班级中找到任何测试。
  • 使用TestDriven.NET-2.22.2468(RTM)和2.23.2497(beta)进行测试。 结果相同。

题:

  • 你能为Win7 / 64建议一个好的工作nunit测试运行器吗? 免费变体是首选。
  • 有关如何使testdriven.net跑步者工作的任何建议吗?

我在TD.NET 2.22.246上使用win7 64位,它运行得很好。 存在的唯一其他Visual Studio运行程序是mstest(仅作为32位进程运行)和TestMatrix (不是免费的)

要检查它是否是64位问题,您可以将测试项目构建为x86并使用TD.NET运行测试。 在这种情况下,TD.NET将以32位进程运行 - 您可以使用任务管理器验证它并查看ProcessInvocation.exe

如果测试运行超过其64位问题。 如果它失败了,那么问题可能就在其他地方。 你在测试中使用其他工具吗? 报道,嘲笑等,也许问题出在其他地方?

我的同事遇到了完全相同的问题,他这次能够提供最小的修复。 我在这里重新发布 - 也许它也可以帮助其他人。

看起来问题的根本原因是Source Gear Vault 3.5.x. 有关详细信息,请参阅支持论坛帖子

将以下代码提交到注册表中解决了非工作的TD.NET:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM