问题 如何配置visual studio来运行xUnit.net测试?


我已将Visual Studio 2010配置为进行调试 xUnit.net 通过设置测试 项目设置|调试|启动外部程序 运行xUnit.net控制台运行器。

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

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


8831
2018-01-08 07:23


起源

回答了我自己的问题 - MW_dev


答案:


这是我在.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>

要做到这一点,你所要做的就是安装 xUnit.net跑步者 NuGet包:

PM> Install-Package xunit.runners

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


6
2017-08-12 17:33





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

为了避免明确给出库名称的问题,可以使用 CMD.EXE 使用命令行参数: / C xunit.console.exe $(BinDir)$(TargetName)$(TargetExt) 

检查 使用输出窗口

使用 工具|选项|键盘 配置以分配热键。


6
2017-09-07 23:45





另一种方法是使用VS插件作为testrunner。比如ReSharper。


2
2017-08-19 19:11



可以在这里找到一个xunit testrunner for resharper: xunitcontrib.codeplex.com - Dan Kendall


我只需输入所有程序集的全名。

在命令行参数下:SharedDataBridge.Tests.dll


0
2018-01-21 16:34