文本

如何安装Selenium 4

在有关Selenium 4的本系列文章中,我们将提供用例和代码示例,以探讨WebDriver API即将发生的更改。

在上一篇博客文章中,我们讨论了迁移到Selenium 4的问题,今天我们将详细介绍如何安装Selenium 4以便您可以检出所有新功能!

虽然Selenium具有各种语言绑定,但是Java和JavaScript是使用最广泛的,因此本文将介绍如何安装这两个绑定。 java 从selenium3升级到selenium4

如果您已经在使用Maven中的Selenium,您可以通过将Selenium版本更改为4来将其升级为Selenium 4。请参阅下面示例中的第28行

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>selenium4</groupId>
    <artifactId>selenium4</artifactId>
    <version>1.0-SNAPSHOT</version>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>8</source>
                    <target>8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <dependencies>
        <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.0.0-alpha-6</version>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.6</version>
        </dependency>

    </dependencies>

</project>

如果您已经在Gradle中使用了Selenium,那么您可以通过将Selenium版本更改为4来将它升级到Selenium 4,如下面的示例中的第17行所示

plugins {
    id 'java'
}

group 'SeleniumGradleSample'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    compile group: 'org.testng', name: 'testng', version: '6.14.3'
    // https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java
    compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '4.0.0-alpha-6'
}

test {
    useTestNG()
}

安装Selenium 4的新实例

在开始之前,确保在您的机器上安装了Java,并且在系统路径中设置了JAVA_HOME环境变量。

可以通过两种不同的方式设置Selenium Java绑定:通过构建工具或手动设置。我将概述这两种方法的步骤。但是,您只需要选择一种方法。

通过构建工具安装Selenium

有各种Java构建工具可用来管理构建和依赖关系;最流行和使用最广泛的是Maven和Gradle。 安装和设置Maven

Maven是一个用于基于Java的应用程序开发的构建和依赖管理工具,它有助于完成构建生命周期管理。

Maven也可以与Java ide (IntelliJ、Eclipse等)一起作为插件使用。

但是,如果您不使用插件,您可以手动安装Maven。

使用Maven下载Selenium

Maven会寻找一个pomm .xml文件来获取项目、配置、依赖关系和插件等信息。

Maven中央存储库是可以找到所有版本的依赖项/库的地方。我们可以搜索一个库,并将依赖项复制粘贴到我们的pom.xml文件中来下载它们。

例如,可以使用maven通过在pom.xml中添加依赖项来下载Selenium 4,如下面的示例所示。 测试设置

现在可以编写测试并通过IDE或命令行运行它们了。您可以通过将以下代码片段添加到' src '目录下的新Java类中来测试设置

package Tests;

import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

class GoogleSearchTest{

    final static String PROJECT_PATH = System.getProperty("user.dir");

    public static void main(String[] args) {

        System.setProperty("webdriver.chrome.driver", PROJECT_PATH+ "/chromedriver");
        ChromeDriver driver = new ChromeDriver();
        driver.get("https://www.google.com");
        WebElement searchTxtBox = driver.findElement(By.name("q"));
        searchTxtBox.sendKeys("Selenium 4" + Keys.ENTER);
        
        driver.quit();

    }
}

安装和设置Gradle

Gradle是目前另一个用于基于java应用程序的流行构建工具。它是开源的,构建脚本可以用Groovy或Kotlin DSL编写。

Gradle还可以作为插件安装在Java ide (IntelliJ, Eclipse等)中。

然而,如果你不使用插件,你可以手动安装Gradle。

使用Gradle下载Selenium

Gradle寻找一个体型。所有依赖项、插件和构建脚本都在其中编写的gradle文件。

Maven中央存储库是所有版本的依赖项/库都可以找到的地方。我们可以搜索一个库,然后从Gradle选项卡复制并粘贴依赖项到我们的构建中。gradle文件下载他们。

例如,通过在build中添加依赖项,可以使用gradle下载Selenium 4。gradle文件如下样例所示。

plugins {
    id 'java'
}

group 'SeleniumGradleSample'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    compile group: 'org.testng', name: 'testng', version: '6.14.3'
    // https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java
    compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '4.0.0-alpha-6'
}

test {
    useTestNG()
}

测试设置

现在,您都可以编写测试并通过IDE或命令行运行它们。 您可以通过将以下代码段添加到src目录下的新Java类以及项目根目录下的build.gradle文件中来测试设置。

package Tests;

import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

class GoogleSearchTest{

    final static String PROJECT_PATH = System.getProperty("user.dir");

    public static void main(String[] args) {

        System.setProperty("webdriver.chrome.driver", PROJECT_PATH+ "/chromedriver");
        ChromeDriver driver = new ChromeDriver();
        driver.get("https://www.google.com");
        WebElement searchTxtBox = driver.findElement(By.name("q"));
        searchTxtBox.sendKeys("Selenium 4" + Keys.ENTER);
        
        driver.quit();

    }
}

手动安装selenium

下载Selenium

Selenium 4 Java绑定的jar文件可以从官方Selenium下载页面下载。

它将被下载为一个zip文件,解压缩它。

Selenium脚本可以在各种平台上执行,即Firefox、Chrome、Internet Explorer、Safari、Opera和Edge。要了解和安装每个驱动程序,请参考下载页面“浏览器”部分的文档链接。

向IntelliJ中添加selenium

在IntelliJ:

进入文件菜单—项目结构—模块—依赖关系—点击‘+’符号—选择jar或目录—选择所有Selenium jar文件并点击OK按钮。

另外,在项目目录下添加下载的浏览器驱动程序。在我们的例子中,我们将添加chromedriver在Chrome浏览器上运行我们的测试。

package Tests;

import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

class GoogleSearchTest{

    final static String PROJECT_PATH = System.getProperty("user.dir");

    public static void main(String[] args) {

        System.setProperty("webdriver.chrome.driver", PROJECT_PATH+ "/chromedriver");
        ChromeDriver driver = new ChromeDriver();
        driver.get("https://www.google.com");
        WebElement searchTxtBox = driver.findElement(By.name("q"));
        searchTxtBox.sendKeys("Selenium 4" + Keys.ENTER);
        
        driver.quit();

    }
}

avaScript

您可以使用npm下载和管理Selenium JavaScript绑定。

安装NodeJs和NPM

作为先决条件,NodeJs需要下载并安装到机器上。要验证安装,请使用以下两个命令

node -v

npm -v

两者都应该提供当前安装的版本作为输出。

下载并安装Selenium Webdriver

使用下面的命令,我们将在您的机器上安装带有npm包管理器的Selenium。

npm安装-gselenium网络驱动

将代码复制到剪贴板

此外,要在浏览器(Chrome、Firefox和IE等)上运行测试,需要下载浏览器驱动程序并在系统路径中设置。

驱动程序可以从下载页面下载,链接可以在页面的“浏览器”部分找到。Windows用户可以将驱动程序路径添加到环境变量下的path变量中。Mac和Linux用户需要向shell中的$ path变量添加一个驱动程序路径。

一旦我们安装了Selenium库并设置了浏览器的路径,我们就需要添加这个包。json文件到项目根目录。NPM需要这个文件来安装用于构建项目和运行测试的依赖项和插件。

包中。可以手动创建json,也可以运行下面的命令将文件添加到运行该文件的当前目录中。

npm init

将代码复制到剪贴板

下面的示例包中。在安装Selenium 4和运行我们的测试时可以引用json文件。如果您已经在使用Selenium Javascript绑定,要升级到Selenium 4,请按照下面示例构建文件的第12行更改版本。

{
  "name": "google-sample-test",
  "version": "1.0.0",
  "description": "a sample selenium 4 with js ",
  "main": "googleSearchTest.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Shama Ugale",
  "license": "ISC",
  "dependencies": {
    "selenium-webdriver": "^4.0.0-alpha.7"
  }
}

更新package.json文件中的Selenium 4依赖关系后,运行以下命令以安装在package.json文件中“依赖关系”部分下定义的所有依赖关系。

npm安装

将代码复制到剪贴板

测试写在“ googleSearchTest.js”文件中。 下面是示例代码,该示例代码打开Firefox浏览器,导航到google.com并搜索“ Selenium 4”,然后按Enter。

    const {Builder,Buy,Key} = require("selenum-webdriver");

    async function searchTest(){
    	// create and open a firefox driver object 
	    let driver = await new Builder.forBrowser("firefox").build();

	    // navigate to google.com
	    await driver.get("https://www.google.com");

	    // locate the google search textbox and enter "Selenium 4", hit Enter key
	    await driver.findElement(By.name("q").sendKeys("Selenium 4",Key.RETURN));
    }

    searchTest();

要执行测试,请使用下面的命令

node googleSearchTest
概要

我们通过了Selenium 4的设置说明,了解了两种最受欢迎​​的语言绑定– Java和JavaScript,可以使用示例测试和构建文件。

现在我们已经准备好在机器上安装Selenium 4,在本系列的下一篇文章中,我们将探讨Selenium 4中新增的功能以及它们在工作代码示例中提供的好处。

author

石头 磊哥 seven 随便叫

company

thoughtworks

大家好,本人不才,目前依旧混迹于thoughtworks,做着一名看起来像全栈的QA,兴趣爱好前端,目前是thoughtworks 西安QA社区的leader,如果有兴趣分享话题,或者想加入tw,可以找我

roles

QA(营生) dev(front-end dev 兴趣爱好)

联系方式

如果想转载或者高薪挖我 请直接联系我 哈哈

wechat:

qileiwangnan

email:

qileilove@gmail.com