运行 NUnit 通过命令行测试时使用 runsettings 文件

Using runsettings file when running NUnit tests via command line

我创建了一个运行设置文件,如下所示

<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <TestRunParameters>
    <Parameter name ="environment" value="PROD" />
  </TestRunParameters>
</RunSettings>

然后在我的 TestSetup 部分(使用 LeanFT 进行 UI 测试)我指定目标环境包含在名为 environment

的参数下
string env= TestContext.Parameters["environment"];

这似乎不起作用,而且我没有收到任何特定的错误消息。这是执行此操作的正确方法,还是有更简单的方法来使用环境和我传递到命令行的内容。

在测试中,您可以使用以下内容编写所有设置

   foreach (var name in TestContext.Parameters.Names)
   {
       Console.WriteLine("Parameter: {0} = {1}", name, TestContext.Parameters.Get(name))
   }

您应该比 "via the commandline" 更具体,因为人们 运行 NUnit 可以通过多种方式从命令行进行测试。

如果您使用 nunit3-console.exe 运行ner,您可以使用 --params 选项将 运行 参数传递给框架,例如:

nunit3-console my.test.dll --params "environment=PROD"

.runsettings 文件是 Visual Studio 使用的工件,可被 NUnit VS 适配器识别,但不能被 NUnit 本身识别。

您也可以从命令行使用它,使用 vstest.console.exe。如果那是您正在使用的,您需要 /Settings 选项来指定文件。

一个的价格有两个答案!但是,如果您使用的是 neither nunit-console nor vstest.console 您将不得不再次询问。 ;-)