Text vorhanden ist, innerhalb bestimmter element
Beim erstellen von selenium-tests mit der #{selenium}
tag, wie Sie komplexe XPath-locators? Ich habe einige einfachere Beispiele, die funktionieren, aber ich möchte wirklich vermeiden, dass zu jedem element eine id nur, um Tests zu vereinfachen.
Habe ich versucht, die Variationen wie diese:
#{selenium 'Sitemap'}
...
//These work:
assertTitle('Site Map')
verifyTextPresent('Site Map')
verifyTextPresent('Login')
verifyText('id=test', 'Login')
verifyText('//ul', 'Login')
verifyText('//ul[2]', 'Login')
//this one results in "Element //ul[@class=sitemap] not found"
verifyText('Login','//ul[@class=sitemap]')
#{/selenium}
Hat jemand mittlerweile den komplexeren Versionen arbeiten? Es sieht aus wie es funktionieren sollte laut der Selen-docs. Auch ist die Erstellung von selenium-tests im Kontext von Spielen dokumentiert irgendwo? Die einzige Erwähnung von ihm, die ich finden kann, sind diese trivialen Beispiele.
InformationsquelleAutor Brad Mace | 2011-03-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie versucht,
Beachten Sie die einfachen Anführungszeichen um XML-sitemap.
XPath würden Ihre tests langsam und id, Namen sind eine bessere option zu verwenden.
verifyText('//ul[@class='sitemap']//li[1]/ul','*Login*')
sieht aus wie einige der Apostrophe müssen escaped werden, aber scheint zu funktionieren nur fine.oder nutzen Sie einfach Anführungszeichen und Apostrophe um Dinge einfach zu halten, z.B. verifyText("//ul[@class='sitemap']/li[1]","Login")
InformationsquelleAutor Tarun
Stimme ich zu einem gewissen Grad. Schlecht konstruiert xpaths, die Suche durch den gesamten DOM verlangsamen tests, aber gut konstruierten XPath-Ausdrücken sollte minimale Auswirkungen auf die Geschwindigkeit (es sei denn, Sie sind mit IE hat ein schrecklicher JavaScript-rendering-engine).
Idealerweise sollten Sie Ihre Schlüssel xpath, um eine ID als in der Nähe der Bereich des DOM-Sie suchen möchten, wie möglich, dadurch wird sichergestellt, dass Sie nur auf der Suche auf einen bestimmten Bereich des DOM-anstatt mit xpath, wie oben dargestellt, wird die Suche durch den gesamten DOM-auch er es tut, finden Sie eine passende element schnell.
Werde ich einige Beispiele von dem, was ich nennen würde gut XPath-Ausdrücken mithilfe http://www.lazeryattack.com als ein Beispiel. Wenn Sie etwas bestimmtes im Sinn Schreien, und ich werde sehen was ich tun kann um zu helfen:
Ich würde suggect mit FireFox mit dem FireBug und FirePath-Erweiterungen, um zu helfen Sie aus der Arbeit mit XPath-Angaben, das ist meine persönliche Lieblings-Kombination.
InformationsquelleAutor Ardesco