2013-08-01 77 views
2

首先,我懷疑這並不容易,因爲在Maven中央存儲庫中沒有calabash-android項,而calabash-android項目沒有提供一個。在Maven構建過程中運行calabash-android測試

這樣說,沒有人知道如何在Maven構建過程中管理calabash-android測試嗎?有沒有插件?我找不到任何信息,但是在我的谷歌搜索失敗的情況下,或者有一種解決方法......我很樂意聽到這個消息。

我正在爲apk版本使用maven-android插件。

回答

1

我假設您熟悉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完成構建之前完成。

+0

謝謝verybadalloc。這似乎是處理這個問題的最習慣的方式,對報告來說太糟糕了。 – Turnsole

+0

calabash-android是開源的。您可以考慮使用此功能進行拉取請求。 – jmoody

+0

@jmoody會喜歡,但這個功能需要對maven進行更改,而不是葫蘆。 – verybadalloc

相關問題