2011-11-23 91 views
1

我使用Selenium 2(Webdriver)在网页上自动执行测试。 但是,我想知道是否有办法找出是否选择单选按钮或不使用webdriver框架?通过Selenium/Webdriver查找选定的单选按钮

我可以找到该元素,并使用Click()方法单击它。 我想测试它实际上是设置的,还是隐式通过IWebElement对象上的Click()方法完成的?

(使用C#和NUnit)

回答

3

可以确定如果元件被由捕捉元件,然后检查选定的选择。

IWebElement thisElement = driver.FindElement(By.ID(//radiobutton id)); 
if(thisElement.Selected) 
{ 
//do something here. 
} 

你可以做到这一点其他的方式,但.Selected是你在找什么。

+0

那么你是绝对正确的。不过,我并没有设法在开始时看到布尔值的状态。我实际上能够通过“错误的”xpath语句来打开和关闭复选框。当xpath字符串指向“//输入”时,所选的状态正在工作!谢谢! – fredde

+0

它的'.Selected'或'.isSelected'? –

+0

@Maitreya取决于你的版本。 Webdirver(C#)是OP正在讨论的内容。被选中。但是.Selected在Java API中不存在,所以在这种情况下,它将是.isSelected。 – CBRRacer

2
webDriver.findElement(By.className("radio")).click(); 

Boolean radio = webDriver.findElement(By.className("radio")).isEnabled(); 

    if(radio.booleanValue()==true){ 

     result.addPassedTestStepResult("user cannot uncheck the radiobutton"); 
    }