Pasar parámetros a través de línea de comandos para NUnit
-
02-10-2019 - |
Pregunta
¿Es posible de alguna manera para pasar valores a través de pruebas NUnit línea de comandos? Mis pruebas utilizan una determinada URL. Tengo diferentes instancias de mi código en diferentes direcciones URL y me gustaría especificar la URL a través de línea de comandos. App.config no es una opción, porque quiero ejecutar las pruebas para las diferentes direcciones URL a través de un archivo por lotes.
Solución 2
No parece haber una solución en este momento. La mejor opción es utilizar archivos de proyecto NUnit, modificar la configuración de allí y pasar el archivo solución al corredor.
Otros consejos
variable de entorno.
Uso set
desde la línea de comandos o <setenv>
de Nant. A continuación, lea el valor con Environment.GetEnvironmentVariable()
.
Me había problema similar, la respuesta de Achim me puso en el camino correcto, para otros lectores
Crear un archivo como example.nunit como esto:
<NUnitProject>
<Settings activeconfig="local"/>
<Config name="local" configfile="App.config">
<assembly path="bin\Debug\example.dll"/>
</Config>
<Config name="dev" configfile="App.Dev.config">
<assembly path="bin\Debug\\example.dll"/>
</Config>
<Config name="test" configfile="App.Test.config">
<assembly path="bin\Debug\\example.dll"/>
</Config>
</NUnitProject>
Todos los archivos / rutas (de la configuración y montaje de archivos) son relativos a la ubicación del archivo nunit. También el App.config, App.Dev.config, etc., son simplemente archivos de configuración de .NET.
Siguiente cuando WANNE ejecuta durante un cierto configuración que ejecutarlo como esto
nunit3-console.exe example.nunit /config:test
Más información sobre el formato del archivo nunit https: // github.com/nunit/docs/wiki/NUnit-Project-XML-Format
Más información acerca de los argumentos de línea de comandos http://www.nunit.org/index.php?p= consoleCommandLine & r = 2.2.5
NUnit3
ahora permite el paso de parámetros. Aquí está el uso
nunit3-console [inputfiles] --params:Key=Value
- params | p = valor del parámetro
Parámetro de pruebaA especificada en la forma nombre = valor para el consumo por pruebas. Múltiples parámetros pueden ser especificado, separados por punto y coma o repitiendo la opción --params varias veces. Entre mayúsculas y minúsculas.
Así es como se puede acceder a través del parámetro de código:
var value= TestContext.Parameters.Get("Key", "DefaultValue");