Java 在maven中运行selenium测试时获取异常
我使用的是java、maven、selenium webdriver。我添加了依赖项“selenium server 2.32.0”、“selenium-java 2.32.0”。但我得到的异常如下: 代码如下:-Java 在maven中运行selenium测试时获取异常,java,maven,selenium-webdriver,Java,Maven,Selenium Webdriver,我使用的是java、maven、selenium webdriver。我添加了依赖项“selenium server 2.32.0”、“selenium-java 2.32.0”。但我得到的异常如下: 代码如下:- public class ABC{ private static WebDriver webDriver ; public static void main(String [] args) throws IOException{ ChromeDriver
public class ABC{
private static WebDriver webDriver ;
public static void main(String [] args) throws IOException{
ChromeDriverService service = new ChromeDriverService.Builder()
.usingDriverExecutable(
new File("/root/Downloads/chromedriver"))
.usingAnyFreePort().build();
service.start();
webDriver = new RemoteWebDriver(service.getUrl(),
DesiredCapabilities.chrome());
//webDriver = new FirefoxDriver();
}
}
如您所见,我还创建了firefoxdriver实例,但得到了相同的异常
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.http.conn.scheme.Scheme.<init>(Ljava/lang/String;ILorg/apache/http/conn/scheme/SchemeSocketFactory;)V
at org.openqa.selenium.remote.internal.HttpClientFactory.getClientConnectionManager(HttpClientFactory.java:59)
at org.openqa.selenium.remote.internal.HttpClientFactory.<init>(HttpClientFactory.java:48)
at org.openqa.selenium.remote.HttpCommandExecutor.<init>(HttpCommandExecutor.java:100)
at org.openqa.selenium.remote.HttpCommandExecutor.<init>(HttpCommandExecutor.java:81)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:129).
线程“main”java.lang.NoSuchMethodError中出现异常:org.apache.http.conn.scheme.scheme。(Ljava/lang/String;ILorg/apache/http/conn/scheme/SchemeSocketFactory;)V
位于org.openqa.selenium.remote.internal.HttpClientFactory.getClientConnectionManager(HttpClientFactory.java:59)
位于org.openqa.selenium.remote.internal.HttpClientFactory.(HttpClientFactory.java:48)
位于org.openqa.selenium.remote.HttpCommandExecutor。(HttpCommandExecutor.java:100)
位于org.openqa.selenium.remote.HttpCommandExecutor。(HttpCommandExecutor.java:81)
位于org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:129)。
还添加了“httpclient 4.1.2”。但如果遇到同样的异常,请指导我如何解决此问题,请在服务使用示例下方使用正确的结构(然后通过测试扩展类内的设置)
您能提供完整的堆栈跟踪和代码吗?这里有一个模板,您可以尝试:
import com.google.common.collect.ImmutableMap;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriverService;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.*;
import java.io.File;
import java.io.IOException;
public class Settings {
protected static WebDriver driver;
protected static String baseURL = "base url for tests";
public static ChromeDriverService service;
@BeforeClass
public static void createAndStartService() {
service = new ChromeDriverService.Builder().usingDriverExecutable(new File("pass to your browser")).usingAnyFreePort()
.build();
try {
service.start();
} catch (IOException e) {
e.printStackTrace();
}
}
@AfterClass
public static void createAndStopService() {
service.stop();
}
@BeforeMethod
public void setUp() throws IOException {
driver = new RemoteWebDriver(service.getUrl(), DesiredCapabilities.chrome());
driver.get(baseURL);
driver.manage().window().maximize();
}
@AfterMethod
public void tearDown()
{
driver.quit();
}
public static WebDriver getDriver()
{
return driver;
}
}