2016-03-03 26 views
7

UI Test hedefimin dilini ve bölgesini ayarlamaya çalışıyorum ve maalesef işe yaramıyor gibi görünüyor.Xcode 7 UI Hedef bölge ve bölge ayarlarını test etme

İlk, her iki yönde denedim:

  • Ürün | Şeması | Düzenle Şeması
  • Çalıştır | Seçenekler
    • Uygulama Dil: Fransızca
    • Uygulama Bölge: Fransa
  • Testi | |

    • Ürün: Argümanlar
      • Çalıştır eylemin ve ortam değişkenlerine kullanın: İşaretli

    Ve bu başka bir yol deneyin Şeması | Düzenle Şeması

  • Test | Kontrolsüz açılışında geçti
  • Argümanlar:
    • -AppleLanguages (French)
    • -AppleLocale fr_FR

Her yolu yolaçan Argümanlar

  • Çalıştır eylemin ve ortam değişkenlerine kullanın UI Testinde g ingilizce hala devam ediyor. Üstelik, kayıt düğmesine bastığımda, Fransızca çalışır ...

    Eğer yanlış bir şey yaparsam, öğrenmekten mutluluk duyarım!

    Şimdiden teşekkürler!

+1

Bunu çözdünüz mü? Bende aynı problem var. Simülatör ayarlarının değişmesi bile etkisizdir :-( – ChaosSpeeder

cevap

8

burada değiştirebilir ben bunu çözmüş olmasının. Yerel ayar ayarlarını Xcode'ta geçici olarak test etmek için launchArguments içinde ayarladım. CI için

override func setUp() { 
    super.setUp() 

    // Put setup code here. This method is called before the invocation of each test method in the class. 

    // In UI tests it is usually best to stop immediately when a failure occurs. 
    continueAfterFailure = false 
    app = XCUIApplication() 
    app.launchArguments = [ 
     "-inUITest", 
     "-AppleLanguages", 
     "(de)", 
     "-AppleLocale", 
     "de_DE" 
    ] 

Felix Krause fastlane kullanmak ve anlık ile yerelleştirilmiş ekran olsun.

+0

Woot! Teşekkürler! Çalışıyor, hedef ayarların neden yapılmadığını anlamadım bile! (Ben de Felix Krause'nin araçlarını kullanıyorum) – Zaphod

+0

Şema ayarlarının işi yapacağı düşünülüyordu, ama yapmıyorlar. Siz efendim, bir kahramansınız! –

+0

benim için üzücü değil. En azından hedef uygulamada [NSLocale currentLocale] .localeIdentifier kullanılıyor. Başlatma bağımsız değişkenlerini göz ardı eder ve bunun yerine sim ayarlarını okur. Aslında bu başka bir gönderiyle bağlanıyor: "Tartışmalar gerçekten testin kendisine değil testin kendisine geçiyor". Bkz. Http://stackoverflow.com/questions/35463150/scheme-language-setting-ignored-in-ios-unit-and-ui-tests Ayrıca WWDC videosundaki Apple durumu nedir. Test koşucu paketinin erişilebilirlik aracılığıyla uygulama hedefiyle etkileşimde bulunması mümkündür. –

0

Simülatördeki teknik özellikleri değiştirmeyi deneyin. Her zaman benim için çalıştı. Simülatörü üzerinde

: Ayarlar> Genel> Dil & Bölge> iPhone Dili ->

+0

Maalesef, bu yöntemin iki uyarısı vardır: simülatörü sıfırladığınızda, konfigürasyonunuzu kaybedersiniz, fakat en önemlisi, yalnızca yerel cihazlarınızda simülatörler üzerinde çalışır. Xcode sunucusunda çalışırken CI için olduğu gibi simülatör testlerine erişemezsiniz. – Zaphod

+0

Üzgünüm, bu benim tek şansımdı. İyi şanslar –