2017-01-23 4 views
0

Ich bin ein Testfall in einer Raster-basierten Software zu schreiben ich meistens CSS-Selektoren unter Verwendung von Elementen zu wählen undWebDriver ersten Geschwister wählen, basierend auf n-ten Geschwister Zustand

enter image description here

basierte auf dem Klick ausführen image - Ich wähle das rechte eingekreiste Element aus (Basis ist eine CSS-Klasse, die den blauen Punkt anzeigt), nun möchte ich basierend auf dieser Bedingung das erste Geschwisterelement auswählen - was ein "Plus" ist, das sich im Grunde öffnen würde das Subgitter weiter und erlaube mir, weitere Tests zu laufen

Ich kann nicht scheinen abl sein e, das zu tun -

davon aus, dass ich

<div class="td"> 
    <a class="opener"> 
    .... 
    </a> 
</div> 
<div class="td"> 
... 
</div> 
<div class="td"> 
... 
</div> 
<div class="td"> 
... 
</div> 
<div class="td"> 
... 
</div> 
<div class="td"> 
    <a class="round-solid"> 
    ... 
    </a> 
</div> 

das folgende Beispiel html verwende ich kann wählen Sie "Round-solid" - auf dieser Basis, wie wähle ich "Opener" Element?

Ich möchte nur das Opener Element, für das eine bestimmte Spalte der „Rund-um-solid“ Klasse enthält

Antwort

1

, die den Trick tun sollen:

driver.findElement(By.xpath("//a[@class='round-solid']/../preceding-sibling::div/a[@class='opener']")); 
+0

danke, ich werde es heute Abend versuchen – Danish

Verwandte Themen