2016-06-06 8 views
1

HTML sieht aus wie folgt:Selen CSS-Selektor für Button-Text

<button class="btn btn-primary pull-right" type="submit">Sign in</button> 

Es gibt mehrere Tasten mit derselben Klasse und Typwert. Allerdings muss ich nur mit dem CSS-Selektor auf die Schaltfläche Anmelden klicken. Ich habe versucht, die folgenden aber keiner von ihnen arbeitet

@FindBy(how=How.CSS, using="button:contains('Sign in')") WebElement signInButton; 

@FindBy(how=How.CSS, using=".btn btn-primary pull-right[text='Sign in']") WebElement signInButton; 

mich auch Beispiele Website zu einem gewissen komplexen CSS-Selektor verweisen.

Antwort

2

Ein CSS-Selektor keine Textauswertung unterstützen. Verwenden Sie stattdessen einen XPath:

@FindBy(how=How.XPATH, using="//button[text()='Sign in']") 
WebElement signInButton; 
0

Hallo plz tun es wie unten bedenkt, dass Ihr Zeichen in Schaltfläche erste in der Liste ist (wenn nicht plz Änderung wie pro Ihre Anforderung)

driver.findElements(By.cssSelector(".btn.btn-primary.pull-right")).get(0).click();