zoukankan      html  css  js  c++  java
  • TestNG(二)之打开关闭浏览器

    一、打开浏览器

    • 火狐浏览器

    火狐浏览器自带driver,所以不用安装driver,如果火狐浏览器是默认安装。使用TestNG

    public class TestWeb {
    @Test
    public void firefox(){
    WebDriver driver = new FirefoxDriver();
    }

    如果火狐浏览器不是默认安转,那么需要给他一个路径,知道从哪里打开火狐浏览器。

    public class TestWeb {
    @Test
    public void firefox(){
    System.setProperty("webdriver.firefox.bin","D:\driver\Mozilla Firefox\firefox.exe");
    WebDriver driver = new FirefoxDriver();
    }
    • 谷歌浏览器

    使用谷歌浏览器要安转一个Driver,driver下载路径:http://chromedriver.storage.googleapis.com/index.html,查看自己谷歌浏览器是什么版本,对应下面表格下载。无论是64位还是32位都使用32位。

    chromedriver版本支持的Chrome版本
    v2.33 v60-62
    v2.32 v59-61
    v2.31 v58-60
    v2.30 v58-60
    v2.29 v56-58
    v2.28 v55-57
    v2.27 v54-56
    v2.26 v53-55
    v2.25 v53-55
    v2.24 v52-54
    v2.23 v51-53
    v2.22 v49-52
    v2.21 v46-50
    v2.20 v43-48
    v2.19 v43-47
    v2.18 v43-46
    v2.17 v42-43
    v2.13 v42-45
    v2.15 v40-43
    v2.14 v39-42
    v2.13 v38-41
    v2.12 v36-40
    v2.11 v36-40
    v2.10 v33-36
    v2.9 v31-34
    v2.8 v30-33
    v2.7 v30-33
    v2.6 v29-32
    v2.5 v29-32
    v2.4 v29-32

    下载之后解压。在工程目录下新建一个文件夹,将解压的chromedriver.exe放到刚才的 文件夹里面去。如果下载了多个但是不知道chromedriver.exe是什么版本,可以双击点击,就可以看到chromedriver.exe的版本了。

    之后和 火狐浏览器一样的代码。

     @Test
    public void chrome(){
    System.setProperty("webdriver.chrome.bin","C:\Users\asus\AppData\Local\Google\Chrome\Application\chrome.exe");
    WebDriver driver = new ChromeDriver();
    }

     直接run一下test就可以打开浏览器了。

     注意下面这两种写法,统一规范两种方法都是可以的。

    例1:注意是webdriver.chrome.bin后面跟着的是chrome浏览器的exe文件的路径,直接点击桌面上的chrome图标,右键属性就可以知道路径了,复制到这边就可以。

    @Test
    public void chrome(){
    System.setProperty("webdriver.chrome.bin","C:\Users\asus\AppData\Local\Google\Chrome\Application\chrome.exe");
    WebDriver driver = new ChromeDriver();
    }

    例2:注意是webdriver.chrome.driver后面跟着的是刚才放driver的路径加上chromedriver.exe
        @Test
    public void chromedriver(){
    System.setProperty("webdriver.chrome.driver","F:\工程文件\drivers\chromedriver.exe");
    WebDriver driver1 = new ChromeDriver();
    }

    }
    • IE浏览器

    官网下载地址:http://selenium-release.storage.googleapis.com/index.html

    参考:https://blog.csdn.net/zyl26/article/details/51011073

    代码和火狐浏览器、chrome浏览器一样的写法

    • Edge浏览器

    先查看自己的Edge浏览器的版本,主要看中间红色方框的数字,对应driver下载路径:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

    @Test
    public void Edgedriver(){
    System.setProperty("webdriver.edge.driver","F:\工程文件\drivers\MicrosoftWebDriver.exe");
    WebDriver edgedriver = new EdgeDriver();

    }
    • 关闭浏览器

    driver.quit()和driver.closed() 的区别:

    driver.quit()是完全退出浏览器,在执行之前查看任务管理器,是否有chromedriver.exe程序,如果有可以全部关闭再执行看看。发现执行之后也没有chromedriver.exe程序

    driver.close() 是关闭浏览器当前窗口,但是任务管理器的chromedriver.exe程序还是存在,并且每执行一次打开浏览器就会有这个程序存在,当你的case成百上千的话,就会占用很多资源。

    以chrome浏览器为例

    @Test
    public void chromedriver2() throws InterruptedException {
    // driver路径
    System.setProperty("webdriver.chrome.driver","F:\工程文件\drivers\chromedriver.exe");
    // 实例化一个driver,打开浏览器
    WebDriver driver = new ChromeDriver();
    // 等待5S
    Thread.sleep(5000);
    // 完全关闭浏览器
    driver.quit();
    }
        @Test
    public void chromedriver1() throws InterruptedException {
    // driver路径
    System.setProperty("webdriver.chrome.driver","F:\工程文件\drivers\chromedriver.exe");
    // 实例化一个driver,打开浏览器
    WebDriver driver = new ChromeDriver();
    // 等待5S
    Thread.sleep(5000);
    // 关闭浏览器
    driver.close();
  • 相关阅读:
    sicp-py
    Ubuntu下找不到ttyUSB*问题解决
    Mysql基本命令及数据库存储位置
    open-vm-tools与VMware Tools
    64位ubuntu安装交叉编译工具链,显示找不到命令
    VMware Tools 继续运行脚本未能在虚拟机中成功运行。
    VMware Workstation 14安装VMware Tools
    VMware Workstation14 安装Ubuntu18.04
    Linux安装Sqlite
    mysql中文乱码
  • 原文地址:https://www.cnblogs.com/Daisyjm/p/8666945.html
Copyright © 2011-2022 走看看