2016-03-28 20 views
3

Uygulama, özel bir kayıtlı URL şemasından başlatıldığında doğru ekran içeriğinin gösterildiğini doğrulayan iOS uygulamam için bir test yazmak istiyorum. Örneğin, bir kullanıcı myapp://action1/1234 numaralı bağlantıya sahip bir e-posta alır. Bu bağlantıya dokunduklarında, uygulamam başlatıldı ve ekran "1234" görüntüleniyor.URL başlat seçeneği ile XCode UI testini başlatın

didFinishLaunchingWithOptions uygulamasında AppDelegate, launchOptions?[UIApplicationLaunchOptionsURLKey]'un var olup olmadığını denetler ve uygun eylemi gerçekleştirir.

Uygulama başlatıldığında uygulama launchOptions sözlüğünün beklenen URL'yi içerecek şekilde nasıl bir UI sınaması yazarım?

cevap

1

Bu uygulamayı, hedef uygulamanızda birkaç satır özel kodla birlikte XCUIApplication üzerinde launchEnvironment'dan yararlanarak yapabilirsiniz. Temel olarak, bu test için özel bir başlatma ortamı değişkeni ayarlarsınız ve uygulamanızda bu değişkeni kontrol eder ve beklediğiniz belirli UIApplicationLaunchOptionsURLKey'un varlığını ele aldığınız şekilde kullanırsınız.

Uygulamanızda, ortam değişkenlerinin sözlüğünü döndüren NSProcessInfo.processInfo.environment aracılığıyla bu değeri kontrol edebilirsiniz.

Edit (Xcode 7'de şablonu XCTestCase varsayılan önceden çalışan örneği sona erdirmek ve varsayılan olarak yeni bir örneğini başlatacaktır setup yılında XCUIApplication -launch bir çağrı içeren dikkatinizi çekeriz.): Istedik Eklemek gerekirse, yararlı olması durumunda, Xcode 7 UI Testing Tips'daki bir makalede bunun hakkında biraz daha yazdım.