2

首先,我怀疑这并不容易,因为 Maven 中央存储库中没有 calabash-android 的条目,而 calabash-android 项目也没有提供。

话虽如此,有人知道如何在 Maven 构建期间管理 calabash-android 测试吗?有没有这个的插件?我找不到任何东西,但万一我的 google-fu 失败了,或者有解决方法……我很想听听。

[编辑] 我正在使用 maven-android 插件进行 apk 构建。

4

1 回答 1

1

我假设您熟悉Android Maven 插件?如果没有,你应该检查一下。这是一种不是防弹的方法,但应该有效:

1- 首先编写一个启动 Calabash 测试的 shell 脚本。比如说,这个 shell 脚本calabash.sh不会太复杂,大致如下:

calabash-android run ../target/<app>.apk /path/to/calabash/tests

maven2-一旦完成它的阶段就启动这个脚本integration-test(如果你正在使用Android Maven,那就是你运行单元测试的时候)。这是取自这个SO问题

<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 完成构建之前运行直到完成。

于 2013-08-04T06:44:13.297 回答