如何配置visual studio以运行xUnit.net测试?

MW_*_*dev 11 debugging xunit.net visual-studio-2010

我已通过设置Project Settings |来配置Visual Studio 2010以调试xUnit.net测试 调试| 启动外部程序以运行xUnit.net控制台运行程序.

这工作正常,但只有在通过命令行参数提供测试项目dll的完整路径时,例如:"c:\ development\TestProject.dll"

我尝试通过命令行参数部分使用$(BinDir)$(TargetName)$(TargetExt)作为参数,但它不起作用.有关如何避免显式/完整路径的任何建议?

MW_*_*dev 6

这个答案是在詹姆斯和布拉德与xUnit.net Runners的精彩工作之前给出的.请参阅下面的michielvoo的回答.

为了避免显式提供库名称的问题,可以使用cmd.exe和命令行参数:/ C xunit.console.exe $(BinDir)$(TargetName)$(TargetExt)

选中使用输出窗口

使用" 工具"|"选项"|"键盘"配置分配热键.


Mic*_*out 6

这是我在.csproj文件中用来运行xUnit GUI runner作为启动操作的内容:

<PropertyGroup>
  <StartAction>Program</StartAction>
  <StartProgram>$(MSBuildProjectDirectory)\..\..\Packages\xunit.runners.1.9.1\tools\xunit.gui.clr4.exe</StartProgram>
  <StartArguments>"$(MSBuildProjectDirectory)\$(OutPutPath)$(AssemblyName).dll"</StartArguments>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

为此,您需要做的就是安装xUnit.net Runners NuGet包:

PM> Install-Package xunit.runners
Run Code Online (Sandbox Code Playgroud)

到目前为止唯一的缺点是它是特定于版本的,因此每次将NuGet包更新为最新版本时,都应更新此配置以指向正确的运行程序.