首先,我怀疑这并不容易,因为在Maven中央存储库中没有calabash-android的条目,而calabash-android项目没有提供。
话虽如此,有没有人知道如何在Maven构建期间管理calabash-android测试?这有插件吗?我找不到任何东西,但是有机会我的google-fu失败了我或者有一个解决方法......我很想听听它。
[edit]我正在为apk版本使用maven-android插件。
答案 0 :(得分:1)
我假设你熟悉Android Maven plugin?如果没有,你应该检查出来。这是一种非防弹的方法,但应该有效:
1-首先编写一个启动Calabash测试的shell脚本。这个shell脚本,比如说calabash.sh
,不会太复杂,只需要:
calabash-android run ../target/<app>.apk /path/to/calabash/tests
2- maven
完成integration-test
阶段后,启动此脚本(如果您使用的是Android Maven
,那就是运行单元测试时)。这取自this SO question:
<plugin>
<artifactId>exec-maven-plugin</artifactId>
<groupId>org.codehaus.mojo</groupId>
<executions>
<execution>
<id>Version Calculation</id>
<phase>validate</phase> //This occurs [after integration-test][3]
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>${basedir}/scripts/calabash.sh</executable>
</configuration>
</execution>
</executions>
</plugin>
这不是一个防弹解决方案,因为我怀疑Maven无法报告任何葫芦测试失败。此外,您可能需要添加一些bash魔法,以使脚本在Maven完成构建之前运行直到完成。