Установить URL по умолчанию из файла свойств - PullRequest
0 голосов
/ 24 января 2019

В моей среде JAVA + cucumber у меня есть возможность изменить базовый URL, передав параметр -Dwebdriver.base.url= в CLI.Я хочу подобную гибкость, чтобы установить @DefaultUrl также.

Чтобы добиться этого - я буду использовать файл свойств, если этот файл свойств присутствует, используйте его, в противном случае используйте файлы по умолчанию.

Но вопрос: как передать URL из файла свойств в @DefaultUrl аннотация?Класс страницы, который расширяет базовый класс, не понимает переменную свойств.

Я хотел сделать это следующим образом:

@DefaultUrl(properties.getProperty("homepage"))
public class homePage extends BasePage {
// TO DO 
}

Например,

@DefaultUrl("http://jira.mycompany.org")
@NamedUrls(
  {
    @NamedUrl(name = "open.issue", url = "http://jira.mycompany.org/issues/{1}")
  }
)
public class JiraIssuePage extends PageObject {
    ...
}

У меня есть функция ниже вБазовый класс для чтения файла свойств:

public static String value(String propKey) {
    if (prop == null) {
        prop = new Properties();
        try {
            FileInputStream fis = new FileInputStream(
                    System.getProperty("user.dir") + "properties.properties");
            properties.load(fis);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    String pvalue = properties.getProperty(propKey);
    if (properties.containsKey(propKey) == false) {
        logger("key not correct")
    } else {
        return pvalue ;
    }
    return pvalue;
}
...