本文章属于转载,出处http://blog.csdn.net/achang21/article/details/11702843,作者achang21
Selenium Webdriver java 积累 一
selenium测试框架篇,页面对象和元素对象的管理【推荐参考】
http://www.cnblogs.com/tobecrazy/p/4553444.html
基于maven的Selniun 2.0 webdriver环境快速搭建
http://www.cnblogs.com/fnng/archive/2011/12/02/2272610.html
Webdriver连载系列: http://jarvi.iteye.com/category/203994
https://github.com/easonhan007/webdriver_guide
Selenium WebDriver经验杂记:
http://blog.csdn.net/ant_yan/article/details/8185899
http://blog.csdn.net/aerchi/article/category/936247
在Eclipse中使用JUnit4进行单元测试:
1. Selenium Webdriver java 最大化浏览器窗口。
System.setProperty("webdriver.firefox.bin","D:/MozillaFirefox/firefox.exe"); WebDriver driver = new FirefoxDriver(); driver.manage().window().maximize(); |
参考文章:http://xebee.xebia.in/2012/04/06/maximize-browser-window-in-selenium-web-driver/
2. Selenium Webdriver java 浏览器中前进,后退,刷新操作。
System.setProperty("webdriver.firefox.bin","D:/MozillaFirefox/firefox.exe"); WebDriver driver = newFirefoxDriver(); driver.manage().window().maximize(); driver.get("http://www.google.com.hk"); driver.navigate().forward();// 前进 driver.navigate().back();// 后退 driver.navigate().refresh();// 刷新 |
3.WebDriver的几个实现:
Name ofdriver Available on whichOS? Classto instantiate
HtmlUnit Driver All org.openqa.selenium.htmlunit.HtmlUnitDriver
Firefox Driver All org.openqa.selenium.firefox.FirefoxDriver
Internet Explorer Driver Windows org.openqa.selenium.ie.InternetExplorerDriver
Chrome Driver All org.openqa.selenium.chrome.ChromeDriver
(1)HtmlUnitDriver是纯java的驱动器,全部在内存中运行,不会实际打开浏览器,但其速度很快。
(2)Firefox Driver:速度慢。
4. TestNG实例:
WebDriver+TestNG+ANT 实现多浏览器兼容性测试
5. Webdriver 针对iframe中的元素定位
Selenium2在使用get()方法打开一个网页的时候,是不会继续加载里面的iframe中的内容的(这一点与Selenium有所区别)。那么,我们就需要人为的要求Selenium2对iframe中的内容进行加载。
例子一:
driver.switchTo().frame(driver.findElement(By.xpath("//iframe[@class='g-editor-iframe']")));
例子二:
driver.switchTo().frame(driver.findElement(By.id("baiduSpFrame")));
切换主页
用getWindowHandle()方法可以快速的进行切换回主页:
StringstrMainHandler = driver.getWindowHandle();
driver.switchTo().window(strMainHandler);
关于iframe中 元素定位和xpath,
cssSelector定位可参考:
6.Webdriver中操作下拉列表
对下拉框进行操作时首先要定位到这个下拉框,new 一个Selcet对象,然后对它进行操作。
7.Webdriver 利用Actions类模拟鼠标和键盘的操作
8. Hudson + WebDriver组织自动化测试
9. Webdirver 利用actions 实现 mouseover方法
Actionsbuilder =new Actions(driver);
Actionsmousehover=builder.moveToElement(driver.findElement(By.
xxx("***")
));
mousehover.perform();
红色部分根据实际情况修改。
10. webdriver 中 层级定位
11. webdriver 执行js脚本
12. webdriver 等待页面加载完成
13. 获取页面对象的属性值
绿色为对象的属性 |
pk1=wd.findElement(By.xpath("//input[@id='public_key']")).getAttribute("value"); System.out.println(pk1); |
14. Webdriver 通过调用JavascriptExecutor使对象隐藏对象出现,操作对象。
15.Selenium中webdriver的quit()和close()区别
在关闭driver时用Driver.Quit();不要用Driver.Close();
Driver.Quit() Quit this dirver, closing everyassociated windows;
Driver.Close() Close the current window, quiting thebrowser if it is the last window currently open.