Ich versuche, eine eindeutige XPATH
zu erstellen, um ein Kontrollkästchen Selenium in einer Tabelle auf einer Webseite zu aktivieren.Selen xpath - Alternative von text() um ein Element mit innerem Text zu finden?
Die HTML
wie folgt aussieht:
<tr ng-repeat="item in tests ">
<td class="ng-binding">
<span test: 'fa fa-cube greeniconcolor'}[item.type]"/>
<span ng-show="item.type !='test' && item.type !='testset'">
Test
<div class="box-tools pull-right">
<input type="checkbox" ng-model="selected_checkbox[$index]"/>
</div>
</td>
</tr>
Ich würde erwarten, dass ich eine XPATH
zu haben wäre in der Lage, die wie folgt aussieht:
.//td[text()='Test']//input
der Lage sein, auf das Kontrollkästchen klicken, aber das tut nicht arbeiten. Wenn ich es in contains ändere und das '.' Notation statt text()
es funktioniert:
.//td[contains(., 'Test')]//input
Allerdings, wenn ich .='Test'
tun es nicht funktioniert. Der Grund, warum ich die Methode nicht verwenden kann, ist, dass die Tabelle auch Test2
enthält und auch ausgewählt ist.
Irgendein Rat betreffs, wie, wenn ich andere Elemente innerhalb des <tr>
Etiketts habe, das ich die text()
Methode nicht verwenden kann, würde geschätzt werden!
Danke! Das war genau das, was ich brauchte – user1691282