开源测试框架-UI自动化测试工具Selenium的安装与常用操作-Java语言

为什么选择Selenium作为测试工具:

  1. 开源免费
  2. 容易与单元测试框架结合
  3. 代码可自主掌握,对于搭建框架,平台等有不可替代的优势

​ Selenium也是一个用于Web应用程序测试的工具,支持多平台,多浏览器,多语言去实现自动化测试,目前在Web自动化领域应用越来越广泛

什么是Selenium?

Selenium是专门为Web应用程序编写的一个自动化验收程序工具。

Selenium工作流程

  1. 测试代码:自动化测试代码发送Http请求给浏览器驱动
  2. 浏览器驱动:解析这些自动化测试的代码
  3. 浏览器:执行浏览器驱动发来的指令,并最终完成工程师想要的操作

Selenium三大组件

  1. Selenium WebDriver: client端通过代码编写指定特定的url通过API具体实现,以http请求的方式发送给server端(Web Driber相当于Web Server)(各浏览器厂家提供的驱动),server接受请求,操作浏览器指令并将操作结果返回给驱动。
  2. Selenium IDE:实现简单的浏览器操作的录制与回放功能
  3. Selenium Grid:是一种自动化的测试辅助工具,Grid通过利用现有的计算机基础设施,能加快Web应用的功能测试。利用Grid可以很方便地实现在多台机器上和异构环境中运行测试用例。

Selenium环境配置步骤

  1. 浏览器FireFox的安装(下面的是绿色版的FireFox)

    RunningCheeseFirefox (lanzoui.com)

  2. JDK的安装

  3. IDEA的安装

  4. 安装Selemium Webdriver类库

    配置自动化的浏览器,首先,你需要为自动化项目安装Selenium绑定库,库的安装过程取决于你选择使用的语言。

    java语言:

    可以使用Maven安装java的Selenium库。打开IDEA,新建一个maven项目,然后打开pom.xml文件,添加标签,将以下代码复制进去然后刷新界面出现的蓝色的m就可以了。

    <dependency>
      <groupId>org.seleniumhq.selenium</groupId>
      <artifactId>selenium-java</artifactId>
      <version>4.0.0</version>
    </dependency>
    
  5. 安装浏览器驱动

    ​ 设置你的系统去实现浏览器自动化,尽管Selenium WebDriver支持所有主要的市面上的浏览器,例如Chrome、Firefox、Edge等。下面的是Firefox的驱动下载地址如果想下载别的可以去官网查。记得把驱动放在自己能找到的地址下,编写脚本的时候用System的setProperty(“浏览器”,“路径”)方法需要填写此路径。

    Releases · mozilla/geckodriver (github.com)

编写一个自动化脚本

自动化用例的步骤:

  1. 声明driver对象(将要启用什么浏览器)。
  2. driver去打开浏览器并输入你要测试的网页地址(使用get方法打开测试站点)。
  3. 找到需要操作元素(利用WebElement声明元素对象)。
  4. 对元素进行输入,点击,断言操作。
  5. 关闭浏览器,释放资源

自动化脚本演示:

public static void main(String[] args) throws InterruptedException {
        //设置Firefox驱动的环境变量
        System.setProperty("webdriver.gecko.driver","D:\\software\\RunningCheeseFirefox\\Firefox\\geckodriver.exe");
        //如果下载的是绿色版的Firefox,需要添加这句话。
        System.setProperty("webdriver.firefox.bin","D:\\software\\RunningCheeseFirefox\\Firefox\\firefox.exe");
        //打开浏览器
        WebDriver driver=new FirefoxDriver();
        //地址栏输入URL
        driver.get("https://www.baidu.com");
        //模拟真实的网络延迟操作
        Thread.sleep(3000);
        //实现自动在百度的搜索栏中填写“淘宝”
        driver.findElement(By.id("kw")).sendKeys("淘宝");
        //实现自动点击百度的查找按钮
        WebElement login_link=driver.findElement(By.id("su"));
        login_link.click();
        //关闭浏览器释放资源
        driver.close();
    }
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值