Crea variables de entorno para test junit java
Agrega variables de entorno para test junit java.
Cuando estamos utilizando variables de entorno en una aplicación java se nos complica el mockeo de las variables privadas ejemplo
private String testVarible = System.getenv("testVarible");
Esta no se podría mockear ` System.getenv("testVarible");` porque es de tipo privada.
Bueno hay una librería que puedes utilizar para crear variables de entorno, agregar la siguiente libreria en el pom.xml.
<dependency>
<groupId>com.github.stefanbirkner</groupId>
<artifactId>system-rules</artifactId>
<version>1.18.0</version>
<scope>test</scope>
</dependency>
Para utilizarla tienes que utilizarla de la siguiente manera
environmentVariables.set("testVarible", "EstaEsMiVariable")
Ejemplo:
@RunWith(MockitoJUnitRunner.class)
public class test {
@Rule
public final EnvironmentVariables environmentVariables = new EnvironmentVariables();
@Test
public void TestEven1() throws FileNotFoundException {
environmentVariables.set("testVarible", "EstaEsMiVariable");
}
Dato importante
si por alguna razón el test lo están haciendo sobre un docker, hay podrías utilizar las variables de entorno nativo del sistema operativo del docker.
happy code :).
Referencia