IOS 多語言自動(dòng)化測試 - 如何自動(dòng)切換運(yùn)行語言環(huán)境
最近一直在研究IOS在多語言環(huán)境下的自動(dòng)化測試,其中一個(gè)重大的問題就是如何在自動(dòng)化測試的時(shí)候能夠自動(dòng)切換語言,
比如某個(gè)軟件支持10個(gè)國家的語言,如果不能自動(dòng)的切換語言,那么在測試的過程中就需要手動(dòng)切換10次語言,效率實(shí)在太低了
經(jīng)過研究通過參考一個(gè)開源項(xiàng)目,大約的摸索出了答案,直接公布給需要的人
instruments這個(gè)工具提供了命令行的接口,我們可以通過命令行在程序啟動(dòng)的時(shí)候指定程序的語言
給兩個(gè)例子
例子A - 在ios模擬器中運(yùn)行一個(gè)app,指定語言為英語
instruments -t Desktop/sample1.tracetemplate -w "iPad - Simulator - iOS 7.1" "/Users/username/Library/Developer/Xcode/DerivedData/SOTC-LocalizationExample-dlqskvetzmqvcnbrpwdtldgtpubp/Build/Products/Debug-iphonesimulator/SOTC-LocalizationExample.app" -AppleLanguages "(en)" -AppleLocale en |
例子B - 在ipad真機(jī)中運(yùn)行一個(gè)app,指定語言為德語
instruments -t Desktop/sample2.tracetemplate -w ac5c5801UDIDf2ca5e9e88a9db <app_name, e.g. QuickEdit> -AppleLanguages "(de)" -AppleLocale de |
其中我在末尾加了-AppleLanguages "(lan)" -AppleLocale lan來通知instruments把軟件顯示成不同的語言,很多人會(huì)疑問為什么有-AppleLanguages和-AppleLocale兩個(gè)參數(shù)
目前我測了幾個(gè)軟件,發(fā)現(xiàn)-AppleLanguages還是控制軟件語言顯示的主要值。換句話說,如果只有-AppleLocale沒有-AppleLanguages,我測試的這幾個(gè)軟件都沒有變語言。
希望搜到這篇文章的同學(xué)能有所啟發(fā)。
posted on 2014-05-16 11:03 順其自然EVO 閱讀(432) 評(píng)論(0) 編輯 收藏 所屬分類: android