如何使用 Selenium WebDriver 检查单选按钮?
Posted
技术标签:
【中文标题】如何使用 Selenium WebDriver 检查单选按钮?【英文标题】:How to check a radio button with Selenium WebDriver? 【发布时间】:2014-11-17 19:02:49 【问题描述】:我想检查这个单选按钮,但我不知道怎么做。 我的 html 是:
<div class="appendContent">
<div> id="contentContainer" class="grid_list_template">
<div id="routeMonitorOptions"></div>
</div>
<input id="optionStopGrid" type="radio" name="gridSelector"/>
<label for="optionStopGrid">Paradas</label>
</div>
【问题讨论】:
How to check if radio button is selected or not using Selenium WebDriver?的可能重复 你使用什么编程语言? 【参考方案1】:This question 一定能帮到你。
您可以通过id轻松找到元素,然后您只需调用isSelected
方法即可。
【讨论】:
你到底尝试了什么?您能否编辑您的第一条消息,向我们展示不起作用的 Java 代码? Listradio
变成:WebElement radio = driver.findElement(By.id("optionStopGrid"));
然后你只需要调用radio.isSelected();
,就像上面链接中提到的那样。【参考方案2】:
请尝试使用此代码选择单选按钮-
driver.findElement(By.cssSelector("input[id='optionStopGrid']")).click();
【讨论】:
【参考方案3】:import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class answer
public static void main(String[] args) throws InterruptedException
WebDriver driver = new FirefoxDriver();
driver.get("http://www.example.com/");
//If u want to know the number of radio buttons then use List
List<WebElement>radioButton = driver.findElements(By.tagName("example"));
System.out.println(radioButton.size());
//If u want to select the radio button
driver.findElement(By.id("example")).click();
Thread.sleep(3000);
//If u want the Text in U R console
for(int i=0;i<radioButton.size();i++)
System.out.println(radioButton.get(i).getText());
//If u want to check whether the radio button is selected or not
if(driver.findElement(By.id("example")).isSelected())
System.out.println("True");
else
System.out.println("False");
【讨论】:
【参考方案4】:在选择元素之前使用 time.sleep() 或 implicit() 或显式 () 等待 then driver.find_element_by_id("profile_id_2559380").click()
【讨论】:
建议:添加代码示例以突出代码并使其更具可读性。【参考方案5】:我知道我迟到了,但我想加两分钱。
有时,简单的.click()
不起作用,因为您选择的是input
标签,而实际上它是我们作为人类单击的附加span
标签。
在您拥有input
标签的情况下,您可以做的是转到父级,然后找到要单击的兄弟span
,如下所示:
optionInput.parent().$("span").click();
【讨论】:
以上是关于如何使用 Selenium WebDriver 检查单选按钮?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用selenium webdriver来判断一个网页加载完毕
Selenium & webdriver.io 如何使用 executeScript?
如何使用selenium webdriver来判断一个网页加载完毕
如何使用 C# 在 Selenium WebDriver (Selenium 2) 中最大化浏览器窗口?