2016-06-10 12 views
1

ich diesen Code bin mit, um ein Element auf meinem Android (Mutter App) Gerät mit Selen und Appium zu finden:Suche und Element auf Android mit Selen und Appium

var wait = new WebDriverWait(_driver,TimeSpan.FromSeconds(15)); 
var phone = wait.Until(x => x.FindElements(By.Id("foo"))); 

Das Problem ist, dass Selen findet das Element nur scheinbar. Das heißt, es findet es, aber ohne Attribute.

Aber bei der Verwendung von:

System.Threading.Thread.Sleep(5000) 

alles wirkt wie ein Zauber.

Ich habe versucht, die Sekunden in der Wartezeit des Fahrers zu erhöhen, aber es hat nicht geholfen.

+0

wie ein Duplikat scheint – nullpointer

+0

Vorherige einer durch –

Antwort

0

Ich denke, das Element wird nicht zu dem Zeitpunkt geladen wird Skript Skript führt eine Operation auf es. wait.Until (: Versuchen Sie, eine Sichtbarkeitsprüfung hinzufügen, bevor sie eine Operation an diesem Element

WebDriverWait wait = new WebDriverWait(driver, 60); 
wait.until(ExpectedConditions.visibilityOfElementLocated(By.locator); 
+0

zusätzlich zu falschen Beschreibung gelöscht wurde, für IList, können wir diese verwenden ExpectedConditions.PresenceOfAllElementsLocatedBy (By.Locator) –