2016-03-22 19 views
0

Bir öneri verebilir misiniz (lütfen resme bakın) selectIndicator'ın bir blokta mevcut olup olmadığını nasıl kontrol edebilirim, sonra başka birini seçmeliyim. Bu elemanın bütün sayfada olup olmadığını nasıl kontrol edeceğimi biliyorum, ancak belirli bir öğede var olup olmadığını bulmalıyım. Örneğimde Oturma Odası seçildi ve DVR'ın seçilmemiş olup olmadığını kontrol etmem gerekiyor. Herhangi bir fikri nasıl yapabilirim? Bu şekilde kontrol etmeye çalışırken, ama hayır şans oldu:Appium: Göreceli öğe varlığını doğrulayın

WebElement element= driver.findElementByAccessibilityId("First element").findElementByAccessibilityId("Second element"); 

[http://i.stack.imgur.com/F98DM.png]

+0

Olası "Yinelenen" kullanımı nasıl "Appium testleri için operatör" (http://stackoverflow.com/questions/36004961/how-to-use-if-operator-for-appium-tests) – econoMichael

+0

Gerçekten değil çift. Çözümünüz, sayfada bulunan öğeyi kontrol edecek, isPresent veya isDisplayed kullanılarak yapılabilir. Ancak, belirli bir konumlandırıcıda (Xpath veya id) elemanın bulunması gerekiyor. Bunu nasıl uygularsın? –

+0

öğesinin özniteliklerini bulmayı deneyebilir ve WebElement w'yi kullanmak gibi beklenenlerle eşleştirebilirsiniz; \t \t w.getAttribute (arg0) \t \t w.getCssValue (arg0) \t \t w.getTagName() –

cevap

0

Sana yanlış almıyorum Eğer uygun bir çözüm için kendiliğinden tanımlanmış veri yapısını uygulamak istiyoruz. Yani buna benzer bir şey olabilir:

public class DVRList { 
//declare components required to comprise one item 
private String dvrOptionText ; 
private boolean dvrOptionCheck ; 
// implement setter..getter for these two 
} 

...in some method set the value using the logic 
DVRList dvrlist = new DVRList(); 
WebElement parentOfBoth = driver.findElement(By.xpath(" 
//android.widget.RelativeLayout[1]/android.widget.R‌​elativeLayout[1]"); 
String text = parentOfBoth.findElementByAccessibilityId("First element").getText(); 
dvrlist.setdvrOptionText(text); 
if(isElement(parenOfBoth.findElementByAccessibilityId("Second element")) 
dvrlist.setdvrOptionCheck(true); 
else dvrlist.setdvrOptionCheck(false); 

ve bundan sonra buna göre bu parametreleri kullanabilirsiniz.

Not: Parametreler ve yaklaşım genelleştirilmiştir ve tam olarak sunulması için değiştirilmelidir.