如何正确设置 Java/Selenium 配置以运行自动化测试?

Posted

技术标签:

【中文标题】如何正确设置 Java/Selenium 配置以运行自动化测试?【英文标题】:How to properly set up Java/Selenium configuration to run automated tests? 【发布时间】:2016-02-15 13:29:46 【问题描述】:

我正在尝试设置 selenium webdriver 以与带有 Java 的 Browserstack 一起使用以进行自动化测试。我为 java 安装了 Selenium,并从 browserstack 的站点 https://www.browserstack.com/automate/java#configure-capabilities 复制并粘贴了代码以设置示例自动化测试。

我从终端运行javac -classpath selenium-server-standalone-2.48.2.jar JavaSample.java(JavaSample.java 是带有示例测试的 selenium 配置代码的文件),我收到以下错误:

JavaSample.java:1: error: package org.openqa.selenium does not exist
import org.openqa.selenium.By;
                      ^
JavaSample.java:2: error: package org.openqa.selenium does not exist
import org.openqa.selenium.Platform;
                      ^
JavaSample.java:3: error: package org.openqa.selenium does not exist
import org.openqa.selenium.WebDriver;
                      ^
JavaSample.java:4: error: package org.openqa.selenium does not exist
import org.openqa.selenium.WebElement;
                      ^
JavaSample.java:5: error: package org.openqa.selenium.remote does not exist
import org.openqa.selenium.remote.DesiredCapabilities;
                             ^
JavaSample.java:6: error: package org.openqa.selenium.remote does not exist
import org.openqa.selenium.remote.RemoteWebDriver;
                             ^
JavaSample.java:18: error: cannot find symbol
DesiredCapabilities caps = new DesiredCapabilities();
^
symbol:   class DesiredCapabilities
location: class JavaSample
JavaSample.java:18: error: cannot find symbol
DesiredCapabilities caps = new DesiredCapabilities();
                               ^
symbol:   class DesiredCapabilities
location: class JavaSample
JavaSample.java:25: error: cannot find symbol
WebDriver driver = new RemoteWebDriver(new URL(URL), caps);
^
symbol:   class WebDriver
location: class JavaSample
JavaSample.java:25: error: cannot find symbol
WebDriver driver = new RemoteWebDriver(new URL(URL), caps);
                       ^
symbol:   class RemoteWebDriver
location: class JavaSample
JavaSample.java:27: error: cannot find symbol
WebElement element = driver.findElement(By.name("q"));
^
symbol:   class WebElement
location: class JavaSample
JavaSample.java:27: error: cannot find symbol
WebElement element = driver.findElement(By.name("q"));
                                        ^
symbol:   variable By
location: class JavaSample

我不知道该怎么做,因为我只是按照 Browserstack 上的说明进行操作,而且我对 Java 的背景很少。

【问题讨论】:

【参考方案1】:

您必须从Selenium Downloads 下载 Java 的“Selenium 客户端和 WebDriver 语言绑定”。可以直接点击链接here下载。

包括下载的 ZIP 文件中存在的所有 JAR 文件。要在 Java 类路径中包含多个 JAR,您可以查看链接 here。

如果您在本地运行测试,则需要 selenium-server-standalone JAR。执行命令java -jar selenium-server-standalone-2.48.2.jar 将启动一个 Selenium 服务器,这需要在本地启动 Selenium 测试。如果您在 BrowserStack 上运行测试,则不需要使用它。

还建议使用适用于 Java 的 IDE。最常用的推荐是IntelliJ Idea、Eclipse 和Netbeans。

【讨论】:

以上是关于如何正确设置 Java/Selenium 配置以运行自动化测试?的主要内容,如果未能解决你的问题,请参考以下文章

Java selenium设置chrome浏览器保持登录方法

Java selenium设置chrome浏览器保持登录方法

多个线程(并行测试用例)如何在 Java(Selenium)设置中使用 Apache POI 同时访问同一个 excel 文件?

多个线程(并行测试用例)如何使用Java(Selenium)设置中的Apache POI同时访问同一个excel文件?

java selenium怎么等待元素出现并设置一定时间

java selenium 环境搭建方法一