• 技术分享 | Web自动化之Selenium安装


    ⬇️ 点击“下方链接”,提升测试核心竞争力!

    >>更多技术文章分享和免费资料领取

    原文链接

    Web 应用程序的验收测试常常涉及一些手工任务,例如打开一个浏览器,并执行一个测试用例中所描述的操作。但是手工执行的任务容易出现人为的错误,也比较费时间。因此,将这些任务自动化,就可以消除人为因素。Selenium 可以帮助我们自动化完成验收测试,通过构建更严格的测试,从而使软件更为可靠也更易于维护。

    Selenium 支持 Web 浏览器的自动化,它提供一套测试函数,用于支持 Web 自动化测试。函数非常灵活,能够完成界面元素定位、窗口跳转、结果比较等功能。支持多种浏览器、多种编程语言(Java、C#、Python、Ruby、PHP 等)、支持多种操作系统(Windows、Linux、IOS、Android 等)、开源免费。它主要由三个工具组成:WebDriver、IDE、Grid。

    Selenium架构

    在客户端(client)完成 Selenium 脚本编写,将脚本传送给 Selenium 服务器,Selenium 服务器使用浏览器驱动(driver)与浏览器(browser)进行交互。

    Selenium核心组件

    • WebDriver 使用浏览器提供的 api 来控制浏览器,就像用户在操作浏览器,不具有侵入性。

    • IDE 是 Chrome 和 Firefox 扩展插件,可以录制用户在浏览器中的操作。

    • Grid 用于 Selenium 分布式,你可以在多个浏览器和操作系统运行测试用例。

    环境准备

    Python 自带的 pip 工具安装

    • Python 版本
    pip install selenium
    
    
    • Java 版本
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-server</artifactId>
        <version>3.14.0</version>
    </dependency>
    
    
    • Python 版本

    安装 Selenium 的前提是拥有 Python 开发环境(推荐使用 PyCharm):

    Selenium 是 Python 的第三方库,可采用 PyCharm 自带方式安装。

    菜单栏 File -> Settings 进入配置界面:

    搜索 Selenium -> Install Package:

    Selenium 支持多种浏览器,需要下载对应的浏览器版本的驱动,将浏览器驱动位置设置到环境变量。

    各个浏览器驱动下载地址:https://ceshiren.com/t/topic/3275

    在 Python 文件中编写代码,如果程序能够调起相应浏览器,说明安装成功。

    • Java 版本

    当使用 Maven 或 Gradle 等构建工具时,会自动加载依赖项。

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>4.0.0</version>
    </dependency>
    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-chrome-driver</artifactId>
        <version>4.0.0</version>
    </dependency>
    
    

    实战演示

    #导入 Selenium 包
    from selenium import webdriver
    
    #创建一个 Chromdriver 的实例,Chrome()会从环境变量中寻找浏览器驱动
    driver = webdriver.Chrome() 
    # 打开 IE 浏览器
    # driver = webdriver.Ie()  
    # 打开 Firefox 浏览器
    # driver = webdriver.Firefox()
    
    
    //导入 Selenium 包
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class AiceTest {
        public static void main(String[] args) throws InterruptedException {
            //创建一个 Chromdriver 的实例
            WebDriver driver = new ChromeDriver();
    
        }
    }
    
    

    这段代码运行后会自动化的创建一个 Chrome 进程。

    ⬇️ 点击“下方链接”,提升测试核心竞争力!

    >>更多技术文章分享和免费资料领取

    img

  • 相关阅读:
    php的echo和print
    面向对象进阶:命名空间和组合
    初识面向对象
    模块和包
    异常处理
    常用模块(random,os,json,pickle,shelve)
    闭包函数
    re模块和正则表达式
    常用模块
    匿名函数
  • 原文地址:https://www.cnblogs.com/hogwarts/p/16158216.html
Copyright © 2020-2023  润新知