结束测试—Selenium自动化测试指南(9)

发表于:2013-9-05 11:50

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:赵卓    来源:51Testing软件测试网

  具体实现如程序清单5-77所示。

  程序清单5-77 Java代码

  Project1Class.java文件:

package Project1;
import org.openqa.selenium.*;
import org.openqa.selenium.WebDriver.*;
import org.openqa.selenium.firefox.*;
public class Project1Class {
public static void main(String[] args) {
//如果启动出现问题,可以使用System.setProperty指出firefox.exe的路径
//System.setProperty("webdriver.firefox.bin","D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");
WebDriver diver = new FirefoxDriver();
org.openqa.selenium.support.events.EventFiringWebDriver eventDriver=new org.openqa. selenium.support.events.EventFiringWebDriver(diver);
//注册事件
eventDriver.register(new MyWebDriverListener());
//打开百度页面
eventDriver.navigate().to("
http://www.baidu.com");
//在搜索框中输入selenium
eventDriver.findElement(By.id("kw")).sendKeys("selenium");
//单击搜索
eventDriver.findElement(By.id("su")).click();
//故意写一个错误操作,使selenium产生异常
try
{
eventDriver.findElement(By.id("xxxx"));
}
catch (Exception e){ }
}
}
MyWebDriverListener.java文件:
package Project1;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
public class MyWebDriverListener implements org.openqa.selenium.support.events.WebDriverEventListener
{
@Override
public void beforeNavigateTo(String url, WebDriver driver) {
System.out.println("页面在发生跳转前的Url为:" + driver.getCurrentUrl());
}
@Override
public void afterNavigateTo(String url, WebDriver driver) {
System.out.println("页面在发生跳转后的Url为:" + driver.getCurrentUrl());
}
@Override
public void beforeNavigateBack(WebDriver driver) {}
@Override
public void afterNavigateBack(WebDriver driver) {}
@Override
public void beforeNavigateForward(WebDriver driver) {}
@Override
public void afterNavigateForward(WebDriver driver) {}
@Override
public void beforeFindBy(By by, WebElement element, WebDriver driver) {
System.out.println("查找元素时的条件为:" + by.toString());
}
@Override
public void afterFindBy(By by, WebElement element, WebDriver driver) {
System.out.println("找到元素,其条件为:" + by.toString());
}
@Override
public void beforeClickOn(WebElement element, WebDriver driver) {
System.out.println("要单击的页面元素为:" + element.getAttribute("value"));
}

41/41234>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号