>我创建了一个如下所示的运行设置文件
<?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"];
这似乎不起作用,而且我没有收到任何特定的错误消息。这是执行此操作的正确方法,还是有更简单的方法可以使用环境和我传递到命令行中的内容。
您应该比"通过命令行"更具体,因为人们可以通过多种方式从命令行运行 NUnit 测试。
如果使用nunit3-console.exe
运行器,则可以使用 --params
选项将运行参数传递给框架,例如:
nunit3-console my.test.dll --params "environment=PROD"
.runsettings
文件是Visual Studio使用的工件,由NUnit VS适配器识别,但不能由NUnit本身识别。
您也可以从命令行使用它,使用 vstest.console.exe
.如果这是您正在使用的,则需要/Settings
选项来指定文件。
一个价格的两个答案!但是,如果您既不使用nunit-console
也不使用vstest.console
则必须再次询问。;-)
在测试中,您可以使用以下内容编写所有设置
foreach (var name in TestContext.Parameters.Names)
{
Console.WriteLine("Parameter: {0} = {1}", name, TestContext.Parameters.Get(name))
}