我正在使用selenium进行自动化测试,我需要有关如何选择单选按钮的帮助。如果可能帮助我使用selenium java代码。
答案 0 :(得分:7)
假设你已经设置了selenium:
selenium.click('radio button locator');
您可能需要查看selenium javadoc http://release.seleniumhq.org/selenium-remote-control/0.9.2/doc/java/com/thoughtworks/selenium/Selenium.html
答案 1 :(得分:1)
click > xpath=(//input[@type='checkbox'])[position()=1]
click > xpath=(//input[@type='checkbox'])[position()=2]
click > xpath=(//input[@type='checkbox'])[position()=3]
click > xpath=(//input[@type='checkbox'])[position()=4]
等等......
使用此命令选择随机和任何单选按钮
答案 2 :(得分:0)
public class radioExamJavaScr {
public static void main(String[] args) throws IOException {
WebDriver driver = new FirefoxDriver();
EventFiringWebDriver dr = new EventFiringWebDriver(driver);
dr.get("http://www.makemytrip.com/");
dr.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
((JavascriptExecutor)dr).executeScript("document.getElementById('roundtrip_r').click();");
WebElement one_way = (WebElement)((JavascriptExecutor)dr).executeScript("return document.getElementById('oneway_r') ;");
System.out.println(one_way.isSelected());
WebElement round_trip = (WebElement)((JavascriptExecutor)dr).executeScript("return document.getElementById('roundtrip_r') ;");
System.out.println(round_trip.isSelected());
}
}
在上面的示例中,我使用“JavaScript”选择带有“ROUND TRIP”的单选按钮。
最后四行是验证并查看是否在页面中选择了预期的单选按钮。
注意:我在选择的网页中提供简单易用的解决方案来解决问题(选择收音机)。可以编写更好的代码。 (用户可以编写一个接受无线电ID的方法,并遍历所有现有的单选按钮,看看是哪一个被选中)。
答案 3 :(得分:0)
我使用这种方法:
String radioButtonId = "radioButtonId";
selenium.focus("id=" + radioButtonId);
selenium.click("id=" + radioButtonId, "concreteRadioButtonValue");
答案 4 :(得分:0)
你可以做的是:
使用WebElement返回类型创建方法,并使用方法findElement()。例如:
WebDriver test;
test = new FirefoxDriver();
public static WebElement checkAndGet(By b) throws Exception {
return test.findElement(b);
}
存储WebElement并使用Method click()。例如:
WebElement radiobutton = checkAndGet(By.xpath("//span[@class='label ng-binding']");
radiobutton.click();
希望这有帮助!
答案 5 :(得分:0)
测试场景:选择性别(女性)单选按钮 步骤进行:
按值'女性'
代码: public static void main(String [] args)抛出InterruptedException {
System.setProperty("webdriver.chrome.driver", "C:\\chromedriver_win32\\chromedriver.exe");
WebDriver driver = new ChromeDriver(); // Step 1 - Launch Browser
driver.get("http://toolsqa.com/automation-practice-form"); // Step 2 - Open Test URL
List<WebElement> rdBtn_Sex = driver.findElements(By.name("sex")); //
int size = rdBtn_Sex.size();
System.out.println("Total no of radio button :"+size);
for (int i=0; i< size; i++)
{
String sValue = rdBtn_Sex.get(i).getAttribute("value"); // Step 3 - 3. Select the Radio button (female) by Value ‘Female’
System.out.println("Radio button Name "+sValue);
if (sValue.equalsIgnoreCase("Female"))
{
rdBtn_Sex.get(i).click();
}
}
答案 6 :(得分:-1)
您应该始终做的是为页面中的每个对象提供一个定位器,然后使用方法。
像
driver.findElement(By.xpath(//CLASS[contains(., 'what you are looking for')])).click();