多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

使用selenium做自动化测试入门

更新时间:2022-04-15 09:12:44 作者:多测师 浏览:256

  之前在使用JAVA做爬虫的时候,有遇到一个问题,就是有些网站,必须要浏览器运行,然后JS执行内容才能显示出来,遇到这种站,代码直接就趴了,内容抓取不到。网上找了一下发现有一个叫selenium的,可以模拟浏览器行为做自动化测试。

使用selenium做自动化测试入门

  官方网站: http://www.seleniumhq.org/

  官方代码仓库: https://github.com/SeleniumHQ/selenium

   我的项目使用的依赖管理工具是maven,下面给出Selenium的maven地址

          <dependency>

              <groupId>org.seleniumhq.selenium</groupId>

              <artifactId>selenium-java</artifactId>

              <version>3.4.0</version>

          </dependency>

  <!-- 大家平时找jar包可以在这个网站:https://mvnrepository.com/ 去查询,非常好用 -->

   然后写一个入门测试的程序

package org.linuxsogood.reference.chp1.selenium;

import org.openqa.selenium.By;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.WebElement;

import org.openqa.selenium.chrome.ChromeDriver;

/**

 * Created by honway on 2022/4/14 10:44.

 *

 */

public class Demo1 {

    public static void main(String[] args) throws InterruptedException {

        System.setProperty("webdriver.chrome.driver", "C:\\opt\\driver\\chromedriver.exe");

        WebDriver driver = new ChromeDriver();

        driver.get("http://192.168.0.227:7700/");

        WebElement username = driver.findElement(By.xpath("//*[@id=\"loginForm\"]/div/div[2]/input"));

        username.sendKeys("123456");

        WebElement passwd = driver.findElement(By.xpath("//*[@id=\"loginForm\"]/div/div[3]/input"));

        passwd.sendKeys("123456");

        driver.findElement(By.xpath("//*[@id=\"loginForm\"]/div/div[5]/button")).submit();

        driver.findElement(By.xpath("//*[@id=\"menu_li\"]/li[2]/a")).click();

        Thread.sleep(2000);

        driver.findElement(By.xpath("//*[@id=\"menu_li\"]/li[2]/ul/li[9]")).click();

    }

}

   由于selenium的运行是基于浏览器的,所以这里要下载一个webdriver,把下载下来的webDriver放到一个目录里面,然后使用System工具类设置一下系统变量,指向这个webDriver

  对于每一种浏览器,都会有一个webDriver, 其实这个webDriver就是一个浏览器的驱动.用它来控制我们本地安装的对应的浏览器.我例子当中使用的是chrome的驱动器.

  请注意:这里只需要设置驱动器对应的环境变量,不是你的chrome浏览器程序的exe文件所在的位置.是你下载的驱动器程序的位置.

  附上官方的驱动器下载地址 http://chromedriver.storage.googleapis.com/index.html

  程序中有一个线程暂停了2秒的代码,是因为点击菜单,它有一个动画效果,如果不暂时一会儿再点击,就会选择不到元素,从而抛出异常。

  以上内容为大家介绍了使用selenium做自动化测试入门,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/

联系电话

17727591462

返回顶部