Selenium(1): 基本示例

来源:互联网 发布:念诗 知乎 编辑:程序博客网 时间:2024/05/21 17:39
Selenium

Selenium 是目前用的最广泛的Web UI 自动化测试框架,目前支持linux,window,mac多平台运行;

Selenium支持的浏览器
  • IE6-10
  • FireFox大部分版本(selenium 2.52目前不支持firefox47.0以上的版本,最新的3.4版本未测试)
  • Chrome
  • Safari
  • Opera
  • Andrioid 系统上的自带浏览器
  • IOS系统上自带浏览器
  • HtmlUnit的无界面实现

Jar包下载地址
  • 官网下载地址: http://www.seleniumhq.org/download/
  • 添加下载文件目录中的 libs文件夹、selenium-java.jar 到项目结构就可以(不同IDE导入JAR方式不一样);
  • 也可以通过Maven的方式添加项目依赖,按照如下的官方文档:http://docs.seleniumhq.org/download/maven.jsp

自动化测试基本流程

1. 找到Web的页面元素,并赋予到一个存储对象中 (WebElement);

2. 对存储页面元素的对象进行操作,如点击按钮,在输入框键入字符等;

3. 验证操作结果;

4、记录操作结果;


示例程序
  1. /*模拟A站用户登录投票*/
  2. public class AutoVote {
  3. private WebDriver driver; //浏览器引擎对象
  4. private WebDriver.Navigation navigation; //引导对象
  5. private String baseUrl = "http://m.acfun.cn/sp/cj2017/1099?type=cos"; //目标url
  6. private String browerPath = "./Firefox39.0/Firefox.exe"; //浏览器路径
  7. public AutoVote(){
  8. //设置firefox浏览器的位置
  9. System.setProperty("webdriver.firefox.bin", browerPath);
  10. //创建WebDriver对象
  11. driver = new FirefoxDriver();
  12. navigation = driver.navigate();
  13. //加载到指定url
  14. navigation.to(baseUrl);
  15. //执行登录操作
  16. driver.findElement(By.id("btn-guide-header")).click();
  17. driver.findElement(By.id("btn-login-header")).click();
  18. WebElement username_element = driver.findElement(By.id("ipt-username-login"));
  19. username_element.clear();
  20. username_element.sendKeys("12345678");
  21. WebElement password_element = driver.findElement(By.id("ipt-password-login"));
  22. password_element.clear();
  23. password_element.sendKeys("1234");
  24. driver.findElement(By.id("btn-submit-login")).click();
  25. //执行投票操作
  26. driver.findElement(By.xpath(".//*[@id='content-detail']/div[6]/div")).click();
  27. //执行退出登录
  28. driver.findElement(By.id("btn-guide-header")).click();
  29. driver.findElement(By.id("btn-logout")).click();
  30. //关闭浏览器
  31. driver.close();
  32. }
  33. public static void main(String[] args){
  34. new AutoVote();
  35. }
  36. }





原创粉丝点击