• 使用IntelliJ idea运行selenium3.0


    1.selenium版本介绍:

      selenium从selenium1.0、selenium2.0发展到了现在的selenium3.0版本,了解这几个版本之间的变化,可以帮助我们更顺利的安装。

          1)selenium1.0版本有3个组成部分:

                    selenium IDE:一款firefox的插件,可以实现简单的自动化测试;帮助导出自动化脚本;

                    selenium GRID:实现分布式自动化;是一个独立的.jar包;

                    selenium RC(remote control):远程控制,可以在不同语言、不同浏览器下运行;不是一个独立的个体,被集成在selenium server当中;

                           运行原理:a.安装java环境后,需要在eclipse中导入对应的jar包(selenium-java.jar);

                b.运行中间服务器selenium server(即selenium server standalone.jar包),解析来自第一步java脚本中的API;

                c.使用js代码驱动浏览器,执行对应的命令;

      2)selenium 2.0 (2009年发布)

        不再建议使用selenium RC,但考虑向下兼容,仍保留;

        由于google针对chrome浏览器开发的webdriver稳定性较好,将其合并了进来;

                           webdriver运行原理: java----- >chromedriver.exe / IEDriverServer.exe ------> chrome浏览器 / IE浏览器;

                    java----> selenium server -----> safari浏览器;

                    对于firefox等其他浏览器,驱动仍集成在jar包里面,没有单独维护;

         小结:稳定性有所提高,各个浏览器驱动管理仍不够规范;

                   

          3)selenium 3.0 (2016年发布)       

        直接去除selenium RC;      

         浏览器驱动管理规范化,各个浏览器厂商各自负责自己的浏览器驱动;

                          webdriver运行原理:java ----> geckodriver.exe ---->firefox浏览器 ( 稳定性有所下降)

                                                           java---- > chromedriver.exe ----> chrome浏览器

                                                           java----- > IEDriverServer.exe ---->  IE浏览器

                                                           java-----> Mac OSX系统(/usr/bin/safaridriver) -----> safari浏览器;

    2.配置java环境

      下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

      配置环境变量;

    3.下载IntelliJ idea

       下载地址:https://www.jetbrains.com/idea/

      软件的破解方法请自行百度,这边提供一篇破解的技术博客以供参考,亲测有效:https://blog.csdn.net/everest_man/article/details/78985879

      在intelliJ idea中加载jdk;

    4.selenium环境安装

      1)下载Selenium Standalone Server包:https://docs.seleniumhq.org/download/

        点击版本号进行下载,下载完成将会得到一个selenium-server-standalone-3.4.0.jar文件;

      2)在IntelliJ idea中加载步骤1中的jar包:

        点击菜单栏 File –> Project Structure(快捷键Ctrl + Alt + Shift + s) ,点击 Project Structure界面左侧 的“Modules” 。在“Dependencies” 标签界面下,点击右边绿色的“+” 号,选择第一个选项“JARs or directories…” ,选择相应的 jar 包;

                                             

      3)下载selenium3.0各个浏览器驱动:

        Firefox浏览器驱动:https://github.com/mozilla/geckodriver/releases

        Chrome浏览器驱动:https://sites.google.com/a/chromium.org/chromedriver/home

        IE浏览器驱动:http://selenium-release.storage.googleapis.com/index.html

        Edge浏览器驱动:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver

        Opera浏览器驱动:https://github.com/operasoftware/operachromiumdriver/releases

        PhantomJS浏览器驱动:http://phantomjs.org/

      4)设置浏览器驱动:

        将上述下载的各个浏览器驱动放在同一个目录文件E:drivers目录下;

        我的电脑–>属性–>系统设置–>高级–>环境变量–>系统变量–>Path,将“E:driver”目录添加到Path的值中;

      5)运行selenium,测试各个驱动是否可以正常使用,以chrome为例:

    package javaBase;
    
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class Itest {
        public static void main(String[] args) {
    
            WebDriver driver = new ChromeDriver();
            driver.get("http://www.baidu.com");
    
            String title = driver.getTitle();
            System.out.printf(title);
    
            driver.close();
        }
    }

        如果你的chrome浏览器驱动没有放在浏览器对应的默认安装路径下,就会报以下错误:

              

        这是因为没有在默认路径下找到浏览器驱动造成的,我们只需要在代码中添加一行:

    package javaBase;
    
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class Itest {
        public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver","E:\selenium\drivers\chromedriver.exe");
           //如果是firefox浏览器,需要把webdriver.chrome.driver替换成webdriver.firefox.bin,后面的是对应浏览器驱动的存放路径


        WebDriver driver = new ChromeDriver();
        driver.get("http://www.baidu.com"); 


       String title
    = driver.getTitle();

    System.out.printf(title);


    driver.close();
    }

    }

        点击run,代码不再报错,至此,我们已经可以在IntelliJ idea上运行selenium3了。

      

  • 相关阅读:
    manacher(求最大回文串并返回)
    编程求一个后缀表达式的值
    栈的简单使用
    云计算的概念
    乐优商城
    四大函数型接口
    Stream流计算
    JWT实现无状态登录
    Thymeleaf模板引擎
    elasticSearch的使用
  • 原文地址:https://www.cnblogs.com/May-study/p/9438274.html
Copyright © 2020-2023  润新知