如何正确设置 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 文件?