1、WebDriver中使用jquery
假如设定jquery包的路径为path,则程序如下:
String jquery=null;
FileInputStream input = new FileInputStream(new File(path));
While((context=input.readlines())!=null){
Jquery=jquery+context;
}
FirefoxDriver driver =new FirefoxDriver();
String js=“”//此处输入你要查找的jquery的代码
//这种方式其实就是读取jquery库的内容,然后全部加载执行
Driver.executeScript(jquery+js);
2、WebDriver中调用javascript
有一些在页面的东西可能运用webdriver的API不好解决,这个时候我们可以调用javascript来解析DOM。所有的webdriver的实现类都继承了JavascriptExecutor的接口。
下面一个运行javascript的例子:
WebDriver driver = new FirefoxDriver();
String js=“alert('Hello')”;
(javascriptExecutor)driver.executeScript(js);
这个例子就会执行alert。
3、Webdriver鼠标动作的操作
在前面的例子中已经出现过鼠标的操作了,就是拖拽,但是鼠标动作有很多,比如双击,单击右键等。操作类在API中是Actions的类,具体的实现见例子:
WedDriver driver = new FirefoxDriver();
Actions action = new Actions(driver);
这个时候可以调用action来进行各种操作。
Action.doubleClick();//双击左键
具体的例子可以参考selenium的API。
4、一些浏览器的自身操作
之前我们就可以通过get方法来打开一个网页,像我们所看到的,WebDriver同样还有许多小接口,Navigation就是其中一个小接口:
driver.navigate().to("http://www.example.com");
navigate().to和get()其实作用是一样的,但是navigate还可以进行浏览器的前进后退操作:
driver.navigate().forward();
driver.navigate().back();
5、frame和window的切换
Switch同样支持frame:
driver.switchTo().frame("frameName");//同样可以使用他访问subframe,找frameName的第一个subframe中叫做child的frame: driver.switchTo().frame("frameName.0.child");