2012-11-13 38 views
5

我的iOS應用程序具有10多種語言的本地化。 我想檢查所有屏幕是否正常(標籤不太長/短等)。適用於不同語言的iOS UI自動化

我知道我可以通過我的應用程序並使用UI自動化製作截圖。 有什麼辦法在UI自動化中切換模擬器的語言嗎?有什麼方法可以通過啓動1命令爲我的應用程序生成屏幕截圖?

謝謝!

+0

你嘗試改變模擬器的語言? – amar

+0

我想啓動自動化測試併爲我擁有的所有語言製作屏幕截圖。我知道如何手動執行此操作 – OgreSwamp

回答

5

是的。事實上,我只是自己寫的。 :)

使用此項目:https://github.com/jonathanpenn/ui-screen-shooter

這是一個如何在命令行中,交換仿真語言具有的plist改變命令運行UI自動化,並選擇模擬器設備類型有一個AppleScript示範。它有大量的評論記錄,但如果您對某些事情感到困惑,請隨時在項目上打開問題或拉取請求,我們可以改進它。

+0

您可能想要查看[snapshot](https://github.com/krausefx/snapshot),它與'ui-screen-shooter'非常相似,但正在積極維護。 – KrauseFx

1

我在測試osx應用程序時拍下了以下截圖。它也 適用於iOS應用程序。

您可以爲您的xcode項目生成無限數量的方案。如果你這樣做,你可以用任何語言測試你的應用程序,並在你的模擬器中獲取屏幕截圖。好吧,讓我們從一個例子開始:在您的項目中添加德語語言方案

完成本地化後,您必須爲每種語言添加一個新方案。

第1步:點擊您的當前計劃(在您的標籤欄中的計劃面板)。在下面的圖像的方案是JHDTestLayout

scheme

第2步:現在,您可以管理方案。首先,我們要添加一個新的:

add a new scheme

步驟3:鍵入一個名稱爲您的新計劃:

enter image description here

第4步:之後,點擊再次在您的標籤欄(步驟1)的方案面板上,選擇您的新方案並選擇「編輯方案」

enter image description here

第5步:添加兩個參數爲 「參數傳遞上啓動」 部分(利用+),然後按OK:

enter image description here

參數傳遞上啓動:你可以例如:

德國

-AppleLanguages (de) 
-AppleLocale de_DE 

西班牙語

-AppleLanguages (es) 
-AppleLocale es_ES 
+0

我正在尋找一種通過命令行執行此操作的方法。出於某種原因,以下不起作用:'打開/Applications/Xcode.app/Contents/Developer/Applications/iOS \ Simulator.app --args -AppleLocale es_ES'我希望它做到了! – livingtech

2

還有一種叫Snapshot github上的項目,你想要什麼。

它提供了UI Screen Shooter所具有的相同(以及更多)功能,並且我發現它更加充實並形成文檔。

啓動和運行中最具挑戰性的部分是學習用於在模擬器中執行操作的Javascript API,但您可以在線找到許多有用的教程。

下面是一些有用的參考資料:

相關問題