Selen.IsElementPresent mit einer Select-Option-text (C#)

Ich bin mit Selen in C# mit Selenium RC zu tun, einige automatisierte Interaktion testen, aber begegnet sind, ein Stein des Anstoßes.

Angesichts dieser HTML:

<select id="my-select-list">
    <option value="1">First option</option>
    <option value="2">Second option</option>
    <option value="3">Third option</option>
    <option value="4">Fourth option</option>
</select>

Ich testen wollen, um sicherzustellen, dass die option "Dritte Option" ist auf der Seite vorhanden.

Alle der folgenden tests fehlgeschlagen sind, d.h. return false:

Selenium.IsElementPresent("//select/option[@label='Third option']")
Selenium.IsElementPresent("//select[option='Third option']")
Selenium.IsElementPresent("//select[contains(option, 'Third option')]")
Selenium.IsElementPresent("//option[contains(., 'Third option')]")
Selenium.IsElementPresent("//option[contains(text(), 'Third option')]")

Ist es eine Einschränkung von Selenium (RC /.NET) oder gibt es einen anderen Weg auswählen?

Ps. Ich weiß, ich könnte testen mit der option Wert, aber das kann sich ändern, und der text definitiv nicht.

EDIT: PEBKAC-Fehler

Sorry, my bad. Scheint Selen wurde laden einem anderen Ort als das, was ich dachte, es war laden.

Die folgenden XPath-Abfragen arbeiten alle:

Selenium.IsElementPresent("//option[text()='Third option']")
Selenium.IsElementPresent("//select[option='Third option']")
Selenium.IsElementPresent("//option[contains(., 'Third option')]")
Selenium.IsElementPresent("//option[contains(text(), 'Third option')]")
InformationsquelleAutor Charlino | 2009-08-05
Schreibe einen Kommentar