首先,我懷疑這並不容易,因爲在Maven中央存儲庫中沒有calabash-android項,而calabash-android項目沒有提供一個。在Maven構建過程中運行calabash-android測試
這樣說,沒有人知道如何在Maven構建過程中管理calabash-android測試嗎?有沒有插件?我找不到任何信息,但是在我的谷歌搜索失敗的情況下,或者有一種解決方法......我很樂意聽到這個消息。
我正在爲apk版本使用maven-android插件。
首先,我懷疑這並不容易,因爲在Maven中央存儲庫中沒有calabash-android項,而calabash-android項目沒有提供一個。在Maven構建過程中運行calabash-android測試
這樣說,沒有人知道如何在Maven構建過程中管理calabash-android測試嗎?有沒有插件?我找不到任何信息,但是在我的谷歌搜索失敗的情況下,或者有一種解決方法......我很樂意聽到這個消息。
我正在爲apk版本使用maven-android插件。
我假設您熟悉Android Maven plugin?如果沒有,你應該檢查出來。這裏是一個不是防彈的方法,但應該可以工作:
1-首先編寫一個啓動Calabash測試的shell腳本。這個shell腳本,說calabash.sh
,不會太複雜,只要沿着線的東西:這個腳本一次maven
完成其integration-test
階段(如果你使用Android Maven
calabash-android run ../target/<app>.apk /path/to/calabash/tests
2-啓動,這時候你運行你的單元測試)。這是從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完成構建之前完成。
謝謝verybadalloc。這似乎是處理這個問題的最習慣的方式,對報告來說太糟糕了。 – Turnsole
calabash-android是開源的。您可以考慮使用此功能進行拉取請求。 – jmoody
@jmoody會喜歡,但這個功能需要對maven進行更改,而不是葫蘆。 – verybadalloc