软件测试培训

亿元级外企Java培训企业

  • 全国服务监督电话400-111-8989
  • 特殊处理--Selenium自动化(十)

    发布:软件测试培训  来源:软件测试教程  时间: 2016年08月12日

  • 特殊处理--Selenium自动化(十)...

  • 特殊处理--Selenium自动化(十)

    1. iframe的处理

    //传入参数为frame的序号,从0开始

    driver.switchTo().frame(Int index);

    //传入参数为frame的ID或者Name属性

    driver.switchTo().frame(String nameOrId);

    //切换回父级

    driver.switchTo().defaultContent();

    查找元素必须在对应的ifarme中查找,否则是找不到的。

    2. 处理对话框alert\confirm\prompt

    处理alert

    //点击会触发alert的元素,比如按钮

    driver.findElement(By.id("alert")).click();

    Alert alert = driver.switchTo().alert();

    String text = alert.getText(); //获取alert上的文本

    System.out.println(text);

    alert.dismiss(); //关闭alert

    处理confirm

    driver.findElement(By.id("confirm")).click();

    Alert confirm = driver.switchTo().alert();

    String text1 = confirm.getText();

    System.out.println(text1);

    confirm.accept(); //关闭confirm

    //处理prompt

    driver.findElement(By.id("prompt")).click();

    Alert prompt = driver.switchTo().alert();

    String text2 = prompt.getText();

    System.out.println(text2);

    prompt.sendKeys("ok!!!!");

    prompt.accept();

    上代码可以看出driver.switchTo().alert();这句可以得到alert\confirm\prompt对话框的对象,然后运用其方法对它进行操作。对话框操作的主要方法有:

    n getText() 得到它的文本值

    n accept() 相当于点击它的"确认"

    n dismiss() 相当于点击"取消"或者叉掉对话框

    n sendKeys() 输入值,这个alert\confirm不能用,会报错。

    3. 富文本编辑器

    //定位到富文本输入框所在的frame

    driver.switchTo().frame("ueditor_0");

    JavascriptExecutor js = (JavascriptExecutor) driver;

    //通过js赋值进去

    js.executeScript("document.body.innerHTML='ABCDEFG'");

  • 上一篇:页面元素操作之三--Selenium自动化(九)

    下一篇:高级应用--Selenium自动化(十一)

网站导航
2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56