當我嘗試建立在詹金斯一個Android測試項目中,我收到以下錯誤信息:與詹金斯大廈的Android測試項目失敗,因爲subant錯誤
BUILD FAILED
C:\Progra~1\android-sdk\tools\ant\build.xml:444: The
following error occurred while executing this line:
C:\Progra~1\android-sdk\tools\ant\build.xml:444: subant task calling
its own parent target.
這似乎在某種程度上是一個已知的問題(https://code.google.com/p/android/issues/detail?id=21108, https://wiki.jenkins-ci.org/pages/viewpage.action?pageId=58917193)。據報道,這個問題實際上應該是固定的,但我仍然面臨着所描述的問題。
我在Windows Server上運行詹金斯,安裝了最新的Android工具(SDK工具v22.0.1,平臺和構建工具V17)和利用螞蟻1.9.0 ..
這個項目的結構:
- 項目A
- 測試項目爲項目A
我創建了一個詹金斯構建dedicted工作對他們倆的。兩個項目的build.xml文件都是使用「android update」命令創建的(如Android規範中所述)。所以他們都是從android-sdk/tools/ant文件夾中引用build.xml。參考subant(http://ant.apache.org/manual/Tasks/subant.html)的Apache Ant規範,這可能是失敗的根源?!
如果該任務調用相同的 構建文件,則該任務不得在目標之外使用。
有沒有人遇到過類似的問題?任何想法如何解決它?
在此先感謝您的幫助。
首先非常感謝您的回答!由於針對該問題的成熟解決方案非常罕見,因此世界上沒有其他人使用Android的自動化測試(通過本機工具框架)。你的測試策略@dnozay如何?對我來說,很難想象沒有人願意爲每個夜晚的構建運行自動化測試,不使用CI,不做迴歸測試......我在GitHub上的幾個開源項目中看到的是他們是使用RoboElectric進行測試。但從我的理解來看,單元測試更多的是驗收測試。 :-( – a11n
@andd,我不是一個android開發人員,我因爲[jenkins]標籤而來到這裏,並試圖爲你查找信息。有'jenkinsci-users'和'android-developers'谷歌組;我 – dnozay
不幸的是,這個解決方法不起作用,我仍然無法使我們的測試自動化,當我移除tested.project.dir時,在「run-tests」目標中替換軟件包名稱並運行ant通過命令行指定的目標構建失敗,因爲無法找到「調試」目標需要的測試項目。 – a11n