How can I pass a global variable to the rest assured header?

Viewed 986

How can I pass my global variables from my ConfigEnv class to the header() in my ApiRestTest class?

My config environment is as:-

public class ConfigEnv {

    public static final String ALIASUSER = "email@EXAMPLE.COM";
    public static final String API_KEY = "Some Api key";

}

My Api test class:

public class ApiRestTest {

    private static final String baseUri = "https://WEBSITE_EXAMPLE.com";
    private static final String basePath = "/apiService/Mv1";
    private String authSessionId;
    private String authUserName;
  
    @Test
    public JsonPath getInitialAuthSignIn() {
        JsonPath jsonPath = given()
            .header("X-API-KEY", get(ConfigEnv.API_KEY)) // Want to use API_KEY from ConfigEnv
            .queryParam("challengeMethod", "EMAIL")
            .header("alias", get(ConfigEnv.ALIASUSER)) // Want to use ALIASUSER from ConfigEnv
            .when()
            .log().all()
            .get(baseUri + basePath + "/users/signin")
            .then()
            .log().all()
            .extract().jsonPath();
    
        this.authSessionId = jsonPath.get("session");
        this.authUserName = jsonPath.get("username");
        return new JsonPath(authSessionId + authUserName);
    }
}

0 Answers
Related