14

我已经使用 NUnit 多年了,我想试试 XUnit。所以我安装了 XUnit 并运行了允许您通过 TD.net 运行 XUnit 的可执行文件。

我似乎一次不能运行多个测试。使用 NUnit + TD.net,我可以单击解决方案中的文件名并运行文件中的所有测试。我似乎无法用 XUnit + TD.net 做到这一点。

这是我能做的吗?

4

2 回答 2

17

确保运行 XUnit.net 附带的安装程序。有一个按钮可供单击,它将安装 TestDriven.net 支持。

您遇到的问题在这里描述:http: //www.codeplex.com/xunit/Wiki/View.aspx?title=FaqTestDrivenNet &referringTitle=Home

于 2009-02-26T15:04:14.983 回答
8

简短回答:将以下内容复制到计算机上的 .reg 文件中,更新 Xunit dll 所在的路径,然后将其导入注册表。

Windows 注册表编辑器版本 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\MutantDesign\TestDriven.NET\TestRunners\xunit] @="4" "AssemblyPath"="C:\_Files\Programs\Programming\XUnit\xunit-1.1.0\xunit.runner.tdnet.dll" "TypeName"="Xunit.Runner.TdNet.TdNetRunner"

长答案:

我在 32 位和 64 位版本的 Windows 上都遇到过几次这个问题。TestDriven.net 使用注册表来存储可用的测试框架列表。XUnit 带有一个安装程序 xunit.installer(以管理员身份运行),它应该可以生成正确的注册表项。

通常我可以让 TD.net 与 XUnit 一起工作一段时间,然后我就会失去支持。今天我第一次尝试让它在 Windows 7 beta 上运行,但根本无法运行。

经过一番搜索,我找到了应该输入有关测试框架的信息的注册表项。

HKEY_LOCAL_MACHINE\SOFTWARE\MutantDesign\TestDriven.NET\TestRunners

现在在 64 位系统上,Wow6432Node 下还有一个键,看起来 Xunit 安装程序正在设置注册表键。

无论如何,我从 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MutantDesign\TestDriven.NET\TestRunners\xunit 导出了 xunit 注册表项,并对其进行了编辑,删除了 Wow6432Node,然后将其导入。重新启动视觉工作室后,一切正常。我会保留注册表文件,以防它再次损坏。

于 2009-01-24T05:04:33.013 回答