Selenium webdriver 如果id和名称具有相同的值,如何在selenium中识别单选按钮

Selenium webdriver 如果id和名称具有相同的值,如何在selenium中识别单选按钮,selenium-webdriver,radio-button,Selenium Webdriver,Radio Button,我试图让Selenium单击单选按钮。Selenium无法选择任何单选按钮,因为单选按钮的id和name是相同的 我在下面添加html代码: <label for="gender">Gender</label> <input id="gender " name="gender" value="M" type="radio"/> Male <input id="gender " name="gender" value="F" type="rad

我试图让Selenium单击单选按钮。Selenium无法选择任何单选按钮,因为单选按钮的
id
name
是相同的

我在下面添加
html
代码:

<label for="gender">Gender</label>
<input id="gender " name="gender" value="M" type="radio"/>
  Male    
<input id="gender " name="gender" value="F" type="radio"/>
  Female
<label class="error" for="gender"/>
性别
男性
女性

试试下面的代码

如果要单击
Male
,请使用
xpath
locator使用下面的代码

WebElement radio_male = driver.findElement(By.xpath("//input[@value='M']"));
radio_male.click();

如果要单击
单选按钮,请使用
xpath
定位器使用下面的代码

WebElement radio_female = driver.findElement(By.xpath("//input[@value='F']"));
radio_female.click();
xpath解释:-使用
标记的
属性。


请分享你试图点击的单选按钮的html。@jainishkapadia,不知为什么我看不见它。我尝试重新加载,但没有成功。我将最后一行替换为:List oRadioButton=odriver。findElements(By.id(“newUserId”);((WebElement)oRadioButton.get(0)).click();
Boolean btnSelected = odriver.findElement(By.id("enrollUserOptionsDiv")).isSelected();
                    if(btnSelected = true){
                        if(odriver.findElement(By.xpath("//input[@value=\"No\"]")).isSelected())
                        {
                            System.out.println( odriver.findElement(By.xpath("//input[@value=\"No\"]")).isSelected());
                            odriver.findElement(By.xpath("//input[@value=\"Yes\"]")).click();} //fails at this line