Selenium怎样驱动Firefox浏览器

发表于:2019-2-22 10:29

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

 作者:此生不换Yang    来源:CSDN

  Selenium怎样驱动Firefox浏览器:
  首先打开Selenium的官网,
  在地址栏输入http://www.seleniumhq.org/
  这就是需要下载的东西:
  下载到本地并解压,
  把geckodriver-v0.18.0-win64里面的geckodriver.exe驱动添加到工程里面,
  把selenium-java-3.4.0文件夹里面所有的.jar包添加到工程里面,
  selenium-server-standalone-3.4.0.jar在做分布式测试时需要启动,
  暂时不用管。
  如果你是用Maven来构建的话,
  就不用去Selenium官网下载.jar包,
  只需要以下几行:
  
    <dependency>
  <groupId>org.seleniumhq.selenium</groupId>
  <artifactId>selenium-firefox-driver</artifactId>
  <version>3.4.0</version>
  </dependency>
  版本号可以随便修改,
  官网上最新的是3.5.3;
  如果你用Gradle来构建的话,
  只需要一行:
 
  compile 'org.seleniumhq.selenium:selenium-firefox-driver:3.5.3'
  好了,引入第三方依赖的准备工作都完成了,让我们开始写代码:
  
   import org.openqa.selenium.WebDriver;
  import org.openqa.selenium.firefox.FirefoxDriver;
  import java.util.concurrent.TimeUnit;
  public class FirefoxBrowser {
  public static void main(String[] args) {
  WebDriver driver;   //声明WebDriver
  System.setProperty("webdriver.firefox.marionette", "C:\\Program Files\\Mozilla Firefox\\firefox.exe");
  //指定Firefox浏览器的路径
  String Url = "https://www.baidu.com";   //百度的地址
  driver =new FirefoxDriver();        //new一个FirefoxDriver()
  driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);    //设置隐式等待10秒钟
  driver.get(Url);    //打开百度首页
  driver.manage().window().maximize();    //把浏览器窗口最大化
  try {
  Thread.sleep(3000);     //让线程等待3秒钟
  } catch (InterruptedException e) {
  e.printStackTrace();
  }
  driver.quit();  //退出driver
  }
  }
  好了,让我们来跑一把:
  成功的启动了Firefox浏览器,
  并且打开了百度首页;
  这里需要注意的是Firefox的版本不能是官网上最新的,
  因为Firefox迭代的太频繁了,
  我用的是46.09;
  浏览器的版本一定要和驱动对应,
  否则会出现启动了浏览器却无法打开网站的异常情况!
  这里有一个历史版本的地址:
  http://ftp.mozilla.org/pub/firefox/releases/
  然后需要注意的是,
  本次使用的是默认的浏览器驱动firefox.exe:
  System.setProperty("webdriver.firefox.marionette", "C:\\Program Files\\Mozilla Firefox\\firefox.exe");
  也可以使用在官网上下载的驱动geckodriver.exe,
  采用相对路径:
  System.setProperty("webdriver.firefox.marionette", "src/main/resources/geckodriver.exe");
  
     上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号