2016-09-30 22 views
9

'da kopar. tableView'un içinde bir hücre görmek için swipeUp'a ihtiyacımız olduğu bir sınama var. swipeUp'dan sonra, olay app.tables'u basamaz. Kaydırmazsak, her şey beklendiği gibi çalışır.XCUIApplication üzerinde swipeUp(), XCUIApplication'ı UITest

  • Swift 2'de Swift 2'ye göre buradaki değişiklik neydi?
  • Bu sorunu nasıl düzeltiriz?

Örneğin: Doğrudan elemanı erişmek için

func testSomethingInApp() { 
    let app = XCUIApplication() 
    app.launch() 
    app.swipeUp() //after this we cant get app.tables anymore. Befor everything is fine 
    XCTAssertEqual(app.tables.cells.elementBoundByIndex(5), "something") //something like this 
} 
+0

Konsoldan hatanın çıkışı nedir? Herhangi bir hata ayıklama günlükleri? – Oletha

+0

Sadece assambler koduna attığınız başka hiçbir bilgi yok. SwipeUp() 'dan sonra 'po app.tables' bile yapamazsınız. Assambler kodunda bitecek. – BennX

+0

, tokatlamak jest mesajının 'app' aracılığıyla veya 'app.tables' aracılığıyla gönderilmesi gerektiğini doğrulayabilir misiniz? App.swipe() yerine – NeverHopeless

cevap

0

Xcode 9 ve Swift 4.0 Bu sorunu gidermek do. app.swipeUp(), artık tablo görünümünde sorgulanan öğeleri temizlemiyor.

1

deneyin ... Ben UITests yazdığımda

app.staticText["something"], ben bu gibi bazı sorunlar vardı. Öğeleri aradım, kesme noktaları belirledim ve çıktıyı okudum.

komutunu kullanarak konsolda app yazdırabilirsiniz.



enter image description here

, çıktıyı Oku onun türünü görmek istediğiniz eleman aramak (bir StaticText, düğme, otherElements, eğer ne olursa olsun ...)


enter image description here


Mevcut tüm elemanların çıktı olarak görüntülendiğine bakın. Çıktıdaki her satırın ilk sözcüğü, her öğenin türüdür. Kodunuzda

kullanılarak türü erişmek: app.buttons düğmelere, app.staticTexts vb etiketleri, ...

JLU

+0

Bunu yaptım. Bahsettiğim gibi, ne olursa olsun ne olursa olsun, masaya bakış artık mevcut değil. Sonra 'app' farklı bir eleman alıp almam sorun değil. Bu yüzden başka bir yere kaydırsanız bile, tablo görünümü artık erişilebilir değil. – BennX