Não é possível ler o arquivo de propriedades no farm de dispositivos do aws
Meus testes Appium + JUnit funcionam perfeitamente bem localmente, mas no aws não é possível encontrar arquivos de propriedades. Meus testes são colocados emsrc/test/java
e arquivos de propriedades usados em testes sobsrc/test/resources/locale
. Zip com conteúdo de dependências:
├── app-0.1-tests.jar
├── app-0.1.jar
└── dependency-jars
├── ...
app-0.1-tests.jar
conteúdo:
├── META-INF
│ ├── MANIFEST.MF
│ ├── maven
│ ├── ....
├── com
│ ├── ....
└── locale
├── en_EN.properties
Infelizmente, quando tento carregar arquivos de propriedades, tenho uma IOException - o arquivo não foi encontrado no local:file:/tmp/scratchcC4yMz.scratch/test-packagefQ2euI/app-0.1-tests.jar!/locale/en_EN.properties
Tentei carregá-los de várias maneiras, sempre que tenho o mesmo problema. Localmente, tudo funciona como um encanto. Exemplo de código:
File file = new File(ClassName.class.getResource("/locale/en_EN.properties").getPath());
try (InputStream inputStream = new FileInputStream(file.getPath());
InputStreamReader streamReader = new InputStreamReader(inputStream, Charset.forName("UTF-8"))) {
Properties properties = new Properties();
properties.load(streamReader);
return properties;
} catch (IOException e) {
System.err.println("Properties file not found: " + file.getPath());
}
ou usando o carregador de classes:
ClassLoader classLoader = getClass().getClassLoader();
URL resource = classLoader.getResource("/locale/en_EN.properties");
Alguém pode sugerir a solução como ler o arquivo de propriedades localizado nos recursos?