Selenium WebDriver Element zu Finden, die durch Teilweise Klasse Name
In den Rahmen, mit dem ich arbeite, habe ich das folgende element:
<div class="x-grid3-cell-inner x-grid3-col-expRepCol"> New session from client IP 192.168.5.3 (ST=/CC=/C=) at VIP 192.168.5.2 Listener /Common/Tomcat (Reputation=Unknown)</div>
Sowie viele andere ähnliche Elemente. Ich bin versucht, suchen Sie dieses element, indem Sie einen Teil des namens text und klicken Sie mit dem folgenden code:
String expectedText = "New session from client IP";
driver.findElement(By.className("div[class*='"+expectedText+"']")).click();
Und ich habe auch versucht, mit cssSelector:
String expectedText = "New session from client IP";
driver.findElement(By.cssSelector("div[class*='"+expectedText+"']")).click();
Aber WebDriver hält, eine Ausnahme zu werfen, die besagt, es ist nicht in der Lage zu lokalisieren, dass element. Irgendwelche Vorschläge, was das problem sein könnte?
InformationsquelleAutor user2150250 | 2014-11-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
By.className
ist auf der Suche nach einer Klasse, mit dem angegeben Namen.By.cssSelector
ist auf der Suche nach einem match für den Selektor eingegeben werden.Was man versucht, ist mit dem text der
div
gegenclass
, was nicht funktioniert.Können Sie versuchen, so etwas wie dieses:
Ah, Mann, du hast Recht. Tut mir Leid, dass. Behoben.
Kein problem. Es ist nicht so, Sie haben den Quelltext der Seite zu arbeiten, mit so wenig Tippfehler wie verständlich sind, wenn Sie nicht überprüfen kann.
Es wirft eine Ausnahme, wenn
expectedText
umfasst einfache Anführungszeichen. Ich habe versucht, Ihnen zu entkommen mit backslashes ohne Erfolg. Gibt es eine Möglichkeit, um in der Lage sein, einfache Anführungszeichen zu benutzen, die in derexpectedText
?Ich fand diese: stackoverflow.com/questions/12403870/... - ich hoffe, es ist nützlich.
InformationsquelleAutor Richard
Ich glaube, das wird Arbeit:
InformationsquelleAutor Anthony Long