2015-10-21 127 views
1

我正在使用calabash-ios進行自動化測試,並且在啓動時將命令行參數傳遞給我的iOS應用程序而苦苦掙扎。我不是Ruby程序員,但是通過源代碼查看提示我嘗試將cmd行參數附加到APP路徑。我試圖在葫蘆-IOS控制檯是這樣的:將cmd行參數傳遞給應用程序使用Calabash-ios

start_test_server_in_background({:app => "#{ENV['APP']} -OverrideWebApp test/index.html"}) 

其中「-OverrideWebApp測試/ index.html的」是CMD行參數我想通過。是否有一些特殊的鍵或鉤子讓我將cmd行參數傳遞給我的應用程序?

+0

爲什麼你需要傳遞的'start_test_server_in_background'的說法?在不知道你對我做了什麼之後,聽起來就像你的系統沒有正確配置。你有你的'cal-scheme'內置和配置嗎?當你運行命令'calabash-ios console'時,你是從你的項目目錄執行它嗎?我從來沒有必要通過運行測試服務器的參數。 –

+0

是的,我意識到這是一個邊緣情況,但是我們的項目被配置爲接受一個cmd行參數來啓用允許測試鉤子的特殊啓動覆蓋。我們通常在IDE中傳遞這個信息,並且正在尋找一種方式從Calabash傳遞。這又是一個邊緣案例,我有另一種方法。我只是好奇而已。 – Cliff

回答

1

要將參數傳遞到應用程序的使用:

options = {:args => ['-com.apple.CoreData.ConcurrencyDebug', '1']} 
start_test_server_in_background(options) 

有關詳細信息,請參閱:https://github.com/calabash/calabash-ios/issues/363

主旨是通過一個逗號分隔字符串列表。你的情況:

options = {:args => ["-OverrideWebApp", "test/index.html"]} 
相關問題