0
我使用FoneMonkey + Jenkins進行自動化iOS測試。我請FoneMonkey生成XML報告(FM_ENABLE_XML_REPORT
- 設置爲TRUE)並使用waxsim運行它。今天我發現,當應用程序崩潰時(即由於NSInvalidArgumentException
)xml報告沒有生成。然後在Jenkis中,我看到100%傳球(我使用標準的JUNIT插件),顯然不是這樣。Jenkins運行期間FoneMonkey測試崩潰
察覺這個問題的唯一方法是: 一)分析詹金斯控制檯日誌(即尋找*** Terminating app due to uncaught exception
) B)發現,在詹金斯報告運行測試的次數越低則perviously(這是我的隊友是如何發現的問題)。
我知道我可以使用Jenkins Text Finder插件解決方案a),但我想要準確的報告。
有沒有辦法實現它?如果否,FoneMonkey是否有用?
謝謝,但並不是那麼容易。 1. FoneMonkey只是lib添加到應用程序,所以它可以返回退出代碼到主機(它運行在waxsim上)。 2.因爲它是lib,所以當應用程序崩潰時它不能做任何事情(即屬性報告)。 3.我知道在Android上它是儀器/測試運行器等,在iOS上沒有。所以唯一的辦法就是分析整個日誌(比如在android中解析logcat)。 –
啊,你必須嵌入它?這聽起來不太好。但是,如果測試運行器在應用程序失敗的情況下不返回非零輸出,那肯定是一個錯誤。無論如何,如果FoneMonkey在應用程序崩潰時無法生成報告,那麼在構建結束時如何生成報告?你能整合像BPOCUnitXMLReporter這樣的東西,而不是依靠FoneMonkey的輸出嗎?你有沒有向他們的錯誤跟蹤器提出問題,詢問這些問題?什麼阻止你解析日志輸出? –
我認爲BPOCUnitXMLReporter僅適用於OCUnit測試。關於返回非零退出代碼 - 我不確定這是否是運行測試時的最佳方法,例如,當ruin JUnit測試時,Jenkins的默認行爲只是將構建標記爲unstable並不成功 - http://stackoverflow.com/questions/ 1004912 /哈德森-集結成功與 - 單元 - 測試 - 故障。這也是不好的,因爲它只會運行到第一次失敗,我想運行所有測試,並有包含所有崩潰的報告(我重新啓動每個測試的waxim - 我使用env變量告訴FoneMonkey它應該運行哪個測試)。 –