测试套件环境变量

问题描述

我在Qurkus面临新秀挑战(我也是Java的新手,如果遇到愚蠢的情况,请您谅解)。我正在将“ .env”文件用于本地开发变量,并在“ application.properties”中设置(非秘密)生产变量。

一切都很好,但是现在我尝试设置一个测试套件,“。env”中的vars覆盖了“ application.properties”中的变量(甚至还有那些具有“%test”配置文件的变量)并阻止了我同时具有开发和测试环境。

对我来说,这可以通过为不同的%profile(例如“ .env.testing”)使用单独的(源控制已索引)env文件并将其分配给测试运行程序来完成。这种模式在其他语言的测试框架中非常普遍,但我找不到解决方案。

有什么想法吗?

谢谢

解决方法

事实证明,Quarkus支持.env中具有不同格式的配置配置文件(但文档中未提及)。因此,我们可以像这样简单保存application.properties文件:

app.env=production

.env文件,如下所示:

_DEV_APP_ENV=development
_TEST_APP_ENV=testing

可以在this PR中找到更详细的文档。

,

一种简单的方法是在application.properties文件中使用属性表达式。

例如,要设置application.host,可以在application.host=${HOST:localhost}文件中使用application.properties之类的属性表达式。如果在您的.env文件或application.properties文件中定义了名为HOST的属性,则将其值分配给application.host,否则,将分配默认值(在本示例中为localhost)。 / p>

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...