运行XUnit.net使用TestDriven.net进行测试

时间:2008-11-29 14:35:46

标签: xunit.net testdriven.net

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

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

这是我能做的吗?

2 个答案:

答案 0 :(得分:17)

确保运行XUnit.net附带的安装程序。 有一个按钮可以安装TestDriven.net支持。

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

答案 1 :(得分:8)

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

Windows注册表编辑器版本5.00

  

[HKEY_LOCAL_MACHINE \ SOFTWARE \ MutantDesign \ TestDriven.NET \ TestRunners \ xunit] @ =“4”   “AssemblyPath”= “C:\ _文件\程序\程序\的xUnit \的xUnit-1.1.0 \ xunit.runner.tdnet.dll”   “类型名”= “Xunit.Runner.TdNet.TdNetRunner”

长答案:

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

通常我可以让TD.net使用XUnit一段时间,然后我放松支持。今天我试图让它首次在Windows 7测试版上运行,但根本无法使用它。

经过一些搜索后,我发现了注册表项,应该输入有关测试框架的信息。

  

HKEY_LOCAL_MACHINE \ SOFTWARE \ MutantDesign \ TestDriven.NET \ TestRunners

现在在64位系统上,Wow6432Node下还有一个密钥,就像Xunit安装程序设置注册表密钥一样。

无论如何,我从HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ MutantDesign \ TestDriven.NET \ TestRunners \ xunit导出了xunit注册表项,并对其进行了编辑,删除了Wow6432Node然后将其导入。重启visual studio后,一切正常。我将保留注册表文件,以防它再次中断。