来自 Maven 配置文件属性的值未在 .properties 文件中使用
Value from Maven profile properties is not getting used in .properties file
我在下面 pom.xml 文件
<resources>
<resource>
<directory>${basedir}</directory>
<includes>
<include>*.properties</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
<profiles>
<profile>
<id>android</id>
<properties>
<automationName>uiautomator2</automationName>
<platformName>Android</platformName>
<platformVersion>6.0</platformVersion>
<deviceName>Android Emulator</deviceName>
<app>/Users/name/Documents/serenity-core/serenity-appium/src/test/java/integration/resources/WordPress-debug.apk</app>
<appPackage>org.wordpress.android</appPackage>
<appActivity>org.wordpress.android.ui.accounts.LoginActivity</appActivity>
</properties>
</profile>
<profile>
<id>ios</id>
<properties>
<automationName>XCUITest</automationName>
<platformName>IOS</platformName>
<platformVersion>11.4</platformVersion>
<deviceName>iPhone SE</deviceName>
<app>/Users/name/Documents/serenity-core/serenity-appium/src/test/java/integration/resources/WordPress.app</app>
</properties>
</profile>
</profiles>
我有 serenity.properties 文件如下
appium.automationName = ${automationName}
appium.platformName = ${platformName}
appium.platformVersion = ${platformVersion}
appium.deviceName = ${deviceName}
appium.app = ${app}
当我尝试使用来自 pom.xml 的值时,它无法按预期工作。 Serenity.properties 文件没有在特定配置文件名称下提到的获取值。
mvn install -Pandroid
您的 directory
说明有误。不要使用 ${basedir}
,而是使用 ${project.basedir}
,然后它会按预期工作:
<directory>${project.basedir}</directory>
更好的方法是坚持使用标准的 Maven 目录布局并将您的资源放在这里:
<directory>src/main/resources</directory>
我在下面 pom.xml 文件
<resources>
<resource>
<directory>${basedir}</directory>
<includes>
<include>*.properties</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
<profiles>
<profile>
<id>android</id>
<properties>
<automationName>uiautomator2</automationName>
<platformName>Android</platformName>
<platformVersion>6.0</platformVersion>
<deviceName>Android Emulator</deviceName>
<app>/Users/name/Documents/serenity-core/serenity-appium/src/test/java/integration/resources/WordPress-debug.apk</app>
<appPackage>org.wordpress.android</appPackage>
<appActivity>org.wordpress.android.ui.accounts.LoginActivity</appActivity>
</properties>
</profile>
<profile>
<id>ios</id>
<properties>
<automationName>XCUITest</automationName>
<platformName>IOS</platformName>
<platformVersion>11.4</platformVersion>
<deviceName>iPhone SE</deviceName>
<app>/Users/name/Documents/serenity-core/serenity-appium/src/test/java/integration/resources/WordPress.app</app>
</properties>
</profile>
</profiles>
我有 serenity.properties 文件如下
appium.automationName = ${automationName}
appium.platformName = ${platformName}
appium.platformVersion = ${platformVersion}
appium.deviceName = ${deviceName}
appium.app = ${app}
当我尝试使用来自 pom.xml 的值时,它无法按预期工作。 Serenity.properties 文件没有在特定配置文件名称下提到的获取值。
mvn install -Pandroid
您的 directory
说明有误。不要使用 ${basedir}
,而是使用 ${project.basedir}
,然后它会按预期工作:
<directory>${project.basedir}</directory>
更好的方法是坚持使用标准的 Maven 目录布局并将您的资源放在这里:
<directory>src/main/resources</directory>