小编bmc*_*ald的帖子

使用maven布局中的spring或camel属性占位符覆盖junit测试的一些属性

我想在src/test/resources文件夹中仅指定要在同名的测试属性文件中覆盖的属性.

更多细节......

在maven布局中,我有一个属性文件,其中包含要使用的部署值(例如input.uri).

src/main/resources/app.properties: 
input.uri=jms:topic:in
app.name=foo_bar
Run Code Online (Sandbox Code Playgroud)

property-placeholder 将此文件的属性加载到context.xml文件中:

src/main/resources/META-INF/spring/context.xml:
<context:property-placeholder properties-ref="springProperties"/>
<util:properties id="springProperties" local-override="true" location="classpath:app.properties" />
Run Code Online (Sandbox Code Playgroud)

我在src/test/resources文件夹中有一个名为app.properties的测试属性文件,并将input.uri定义覆盖到我的junit测试将使用的定义.(注意,app.name不会改变).

src/test/resources/app.properties: 
input.uri=seda:in
Run Code Online (Sandbox Code Playgroud)

您将如何编写junit测试和/或测试context.xml文件,以便从src/main/resources/app.properties文件加载属性,但是在src/test/resources/app.properties文件中定义的任何属性覆盖src/main/resources/app.properties文件中的那些?如果你在src/main文件或src/test junit测试文件中加载两个不同的文件是显而易见的- 我希望属性占位符搜索类路径并选择正确的值.

junit spring overriding properties

6
推荐指数
1
解决办法
4885
查看次数

Karaf 功能安装缺少要求 osgi.service 但它在那里

我有一个数据源功能,可以将数据源导出为 OSGi 服务:

> services -p 2038
OPS4J Pax JDBC Config (2038) provides:
--------------------------------------
objectClass = [org.osgi.service.cm.ManagedServiceFactory]
service.bundleid = 2038
service.id = 211
service.pid = org.ops4j.datasource
service.scope = singleton
----
databaseName = foobar
dataSourceName = fooDatasource
felix.fileinstall.filename = file:/home/foousr/apache-karaf-4.0.6/etc/org.ops4j.datasource-foo.cfg
objectClass = [javax.sql.DataSource]
osgi.jndi.service.name = fooDatasource
service.bundleid = 2038
service.factoryPid = org.ops4j.datasource
service.id = 251
service.pid = org.ops4j.datasource.b3020619-71b9-4876-94c3-477f3e4a503d
service.scope = singleton
url = jdbc:oracle:thin:@dbserver:99999/foo
user = FOOUSR
Run Code Online (Sandbox Code Playgroud)

作为创建和注册此数据源服务的 ds-feature 的一部分,它还包含一个 ping-ds 包,我可以用它来测试数据源:

> jdbc:ping-ds fooDatasource
Ping from localhost(127.0.0.1) as FOOUSR to …
Run Code Online (Sandbox Code Playgroud)

installation karaf

5
推荐指数
1
解决办法
3342
查看次数

标签 统计

installation ×1

junit ×1

karaf ×1

overriding ×1

properties ×1

spring ×1