如何使用xunit.runner.console

时间:2016-08-15 09:48:05

标签: c# selenium jenkins xunit.net

我有一个C#/ Selenium / Specflow测试套件,我使用xunit.console.exe使用Jenkins运行。我需要将这些测试指向不同的环境(Test / QA / Prod等),并希望使用命令行参数。

我正在调用的批处理命令是: "%WORKSPACE%\packages\xunit.runner.console.2.1.0\tools\xunit.console" "%WORKSPACE%\[MyProject]\bin\Debug\eDC6.Test.Specs.dll" -xml test_output.xml

并希望包含一个额外的参数,例如:“ - env = PROD”将该作业指向特定环境。

我愿意接受更好的方法。

1 个答案:

答案 0 :(得分:1)

IIRC我在2010年前的codeplex时代的xunit论坛中提出并自我回答了这个问题,但是无法找到它(也许我在CodeRush的测试运行者的背景下提出要求)。无论哪种方式,上面都是当时的答案,它仍然有意义,因为它的测试运行和CI工具中立。

这通常由环境变量解决,即使用GetEnvironmentVariable

要考虑的一件事是,那些想要使用像Visual Studio这样的跑步者的人需要相应地进行调整。 .NET Core对拥有这种性质的环境选择器具有内在的支持,这也可能是一种有用的方法,因为随着时间的推移它可能会在编辑器和其他工具中暴露出来。

最后,最低级别的黑客可能会将其粘贴到.config设置中,即<DllName>.dll.config并执行必要的操作以将其传递到那里。