Apple XCTest - изменение языка устройства в тесте

    Всем привет!

    Совсем недавно я перешел с родного UIAutomation на XCTest. Переход был не очень гладким, как всегда без подводных камней не обошлось. После интуитивно понятного фрэймворка на javascript, swift казался каким-то чужим и не понятным.
 

    Как-то передо мной была поставлена задача найти путь для изменения языка тестируемого устройства. Ввиду закрытой политики Apple эта задача казалось мало выполнимой. После небольшого исследования решение было найдено. Оказывается  Aple предусмотрел локализацию, спасибо ему за это. Код смены языка на французкий приведён ниже.import XCTest
class SampleUITest: XCTestCase {
    override func setUp() {
        super.setUp()
        let thisApp = XCUIApplication() 
        thisApp.launchArguments += ["-AppleLanguages", "(fr)"]
        thisApp.launchArguments += ["-AppleLocale", "fr_US"]
        thisApp.launch()
    }
    override func tearDown() {
        super.tearDown()
    }
    func testExample() {
          //код теста
    }
}

Данный подход работает как на симуляторах, так и на реальных устройствах.

Всем спасибо!

Maxim.