import java.util.concurrent.TimeUnit;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
/*
*selenium定位iFrame
*
*/
class SwitchFrame {
//定义Webdriver
WebDriver driver;
//定义访问网址
String baseurl;
@BeforeEach
void setUp() throws Exception {
//谷歌浏览器的本地驱动
System.setProperty("webdriver.chrome.driver", "/Users/lisen/webselenium/selenium/chromedriver");
//new一个谷歌浏览器对象
driver =new ChromeDriver();
//定义访问网址
baseurl="http://jqueryui.com/datepicker/";
//打开网址过后,设置隐性等待,等待10秒
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
//打开网址后,窗口最大化
driver.manage().window().maximize();
}
@Test
void test() {
//打开网址,调用driver.get方法
driver.get(baseurl);
//打印log信息
System.out.println("打开网址完成");
//切换到frame编号
driver.switchTo().frame(0);
WebElement openframe=driver.findElement(By.id("datepicker"));
openframe.click();
//返回到主窗口
driver.switchTo().defaultContent();
WebElement textelement=driver.findElement(By.xpath("//input[@name='s']"));
textelement.sendKeys("测试完成");
}
@AfterEach
void tearDown() throws Exception {
//设置等待时间,看清楚操作
Thread.sleep(3000);
//关闭浏览器
driver.quit();
}
}