2016-12-01 5 views
0

Ich benutze Page Factory und ich habe 2 Radiobuttons (männlich und weiblich), beide Radio-Tasten haben den Namen Locator wie üblich, name='radl', zusätzlich ' Wert 'des männlichen Optionsfelds =' m 'und des weiblichen Optionsfelds ist' f '. Ich muss irgendeinen dieser Radioknöpfe basierend auf Benutzereingabe wählen. Wie bekomme ich die Kindelemente des folgenden "Geschlecht" Elements?WebDriver: möchte die untergeordneten Elemente eines mit @ FindBy erstellten Elements

@FindBy(name ="radl") 
WebElement gender; 

Antwort

1

Teilen Sie die Geschlechter in zwei Webelemente auf. Klicken Sie auf die gewünschte Stelle.

@FindBy(css ="input[name='radl'][value='m']") 
WebElement maleGender; 

@FindBy(css ="input[name='radl'][value='f']") 
WebElement femaleGender; 
+0

Klingt gut, danke. Nur aus Neugier, ist es möglich, Kind Elemente von 'Geschlecht' Webelement, die ich erstellt habe, zu bekommen? – JavaSeleniumNovice

+0

Ja, verwenden Sie die @FindBys (beachten Sie die Mehrzahl) und übergeben Sie ein Array von FindBy-Annotationen. @FindBys ({@ FindBy (id = "foo"), @FindBy (className = "bar")}) In diesem Fall wird das Element 'bar' zurückgegeben, wenn es unter der Hierarchie des Elements 'foo' steht. Sie können auch einen CSS- oder X-Pfad verwenden, um dies zu erhalten. – Grasshopper

Verwandte Themen