访问配置文件中的env变量

时间:2017-07-25 06:58:00

标签: java maven selenium circleci

我有一个使用Maven的自定义Selenium项目。我从test.properties文件获取配置属性,并使用ConfigManager类在代码中使用它。现在我需要隐藏版本控制中的一些配置信息,并计划将其添加为环境变量。我的test.properties文件如何访问这些环境变量?该文件现在具有硬编码值,我想用环境变量替换它,并从那里它将被代码读取和执行。

所以我需要知道如何在本地和Circle CI中访问env变量。

1 个答案:

答案 0 :(得分:1)

package com.facebook.configs;
import lombok.Getter;

@Getter
public enum LocalConfig {
    INSTANCE;

    private String community = System.getenv("FACEBOOK_URL") ==null ? "www.facebook.com" : System.getenv("FACEBOOK_URL");
    private int port = System.getenv("PORT") == null ? -1 : Integer.parseInt(System.getenv("PORT"));
    private String protocol = System.getenv("PROTOCOL") == null ? "http" : System.getenv("PROTOCOL");
    private String username= System.getenv("USERNAME") == null ? "USER_EMAIL_OR_PHONE" : System.getenv("USERNAME");
    private String password= System.getenv("PASSWORD") == null ? "USER_PASSWORD" : System.getenv("PASSWORD");
}

您可以执行上述操作,我已创建了一个示例配置文件。您必须分别在IDE中设置环境变量值,或者从jenkins传递它,它将作为环境变量传递。此外,如果键值为null,您可以使用默认值,它将选择默认值,如图所示。

  

LocalConfig.INSTANCE.getProtocol()+"://" +   LocalConfig.INSTANCE.getCommunity()

您可以直接访问上面显示的变量。