声明一下:本文来自基于Selenium 2的自动化测试-从入门到精通,稍微完善了东西。
需要如下库:
selenium-java-2.45.0.jar
selenium-java-2.45.0-srcs.jar
selenium-server-standalone-2.45.0.jar
上述的库,我都是从51cto上下载的。
用xpath定位,碰到frame时,需要switchto().frame(name|id)
源代码如下:
package com.example.open;
import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.WebElement;
public class TestRadioButton {
WebDriver driver;
@Before
public void setup() throws Exception{
System.setProperty ( "webdriver.firefox.bin" , "d:/Program Files/Mozilla Firefox/firefox.exe" );
driver = new FirefoxDriver();
driver.get("http://www.w3school.com.cn/tiy/t.asp?f=html_radiobuttons");
}
@Test
public void TestRadioButton() throws Exception{
//注意,该页面有frame,需先跳转,然后再xpath定位
WebElement femaleRadioButton = driver.switchTo().frame("i").findElement(By.xpath("/html/body/form/input[1]"));
if(!femaleRadioButton.isSelected()){
femaleRadioButton.click();
}
assertTrue(femaleRadioButton.isSelected());
}
@After
public void tearDown() throws Exception {
driver.quit();
}
}