Ir al contenido principal
Versión: 5.7.x

Propiedades

[Traducción Beta No Oficial]

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Al ejecutar pruebas mediante el runner de IntelliJ, las propiedades configuradas en gradle.properties o en un archivo de construcción de Gradle no se detectarán porque el runner no está configurado para usar Gradle.

Para soportar propiedades del sistema en tiempo de ejecución, el framework Kotest siempre buscará pares clave-valor dentro de un archivo kotest.properties ubicado en el classpath (por ejemplo, en src/main/resources).

Cualquier par clave-valor encontrado en este archivo se establecerá como propiedad del sistema antes de ejecutar cualquier test.

consejo

Las propiedades especificadas en el archivo kotest.properties funcionan tanto para la línea de comandos mediante Gradle como para las pruebas ejecutadas mediante el plugin de IntelliJ.

Por ejemplo, tras agregar este archivo a tu classpath como kotest.properties:

foo=bar

La siguiente prueba pasaría correctamente:

class FooTest : DescribeSpec() {
init {
describe("after adding kotest.properties") {
it("foo should be set") {
System.getProperty("foo") shouldBe "bar"
}
}
}
}

Caso de uso común

Es común deshabilitar las capacidades de escaneo del classpath de Kotest para ahorrar tiempo de inicio cuando no se usan estas funciones. Para hacerlo, coloca las siguientes líneas en el archivo kotest.properties:

kotest.framework.classpath.scanning.config.disable=true
kotest.framework.classpath.scanning.autoscan.disable=true

Especificar el nombre del archivo de propiedades

Si prefieres no usar kotest.properties como nombre, o necesitas diferentes archivos según el entorno, puedes usar la propiedad del sistema kotest.properties.filename para indicar el nombre del archivo de propiedades.

Por ejemplo, podrías lanzar las pruebas con kotest.properties.filename=cluster.prd.properties, lo que cargaría el archivo de pares clave-valor llamado cluster.prd.properties antes de ejecutar cualquier prueba.