首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带Selenium的Springboot

带Selenium的Springboot
EN

Stack Overflow用户
提问于 2017-07-25 03:12:50
回答 2查看 2.6K关注 0票数 2

当我将springboot插件添加到我的Selenium应用程序中时。硒停止了工作。

下面是我的最小示例代码:

代码语言:javascript
复制
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Main {
    public static void  main(String[] args)
    {
        System.setProperty("webdriver.gecko.driver", "/home/rafal/geckodriver");
        WebDriver webDriver = new FirefoxDriver();
        webDriver.get("http://google.com");
    }
}

和gradle:

代码语言:javascript
复制
group 'testSeleniumasdf'
version '1.0-SNAPSHOT'

repositories {
    mavenCentral()
}

apply plugin: 'java'
sourceCompatibility = 1.8

dependencies {
    compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.4.0'
    testCompile group: 'junit', name: 'junit', version: '4.11'
}

它起作用了。

但是当我将springboot添加到我的gradle中时,如下所示:

代码语言:javascript
复制
group 'testSeleniumasdf'
version '1.0-SNAPSHOT'

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.3.RELEASE")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'

sourceCompatibility = 1.8


repositories {
    mavenCentral()
}

dependencies {
    compile("org.springframework.boot:spring-boot-starter-data-jpa")
    compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.4.0'
    testCompile group: 'junit', name: 'junit', version: '4.11'
}

它不起作用。这是45s的超时。和日志:

代码语言:javascript
复制
org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
amed-provider>
1500922321841   addons.manager  DEBUG   Registering shutdown blocker for <unnamed-provider>
1500922321841   addons.manager  DEBUG   Provider finished startup: <unnamed-provider>
1500922321902   DeferredSave.extensions.json    DEBUG   Write succeeded
1500922321902   addons.xpi-utils    DEBUG   XPI Database saved, setting schema version preference to 19
1500922321902   DeferredSave.extensions.json    DEBUG   Starting timer
1500922321919   addons.repository   DEBUG   No addons.json found.
1500922321919   DeferredSave.addons.json    DEBUG   Save changes
1500922321921   DeferredSave.addons.json    DEBUG   Starting timer
[PIPELIGHT:LIN:unknown] attached to process.
[PIPELIGHT:LIN:unknown] checking environment variable PIPELIGHT_SILVERLIGHT5_0_CONFIG.
[PIPELIGHT:LIN:unknown] searching for config file pipelight-silverlight5.0.
[PIPELIGHT:LIN:unknown] trying to load config file from '/home/rafal/.config/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/etc/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/usr/share/pipelight/configs/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] sandbox not found or not installed!
[PIPELIGHT:LIN:silverlight5.0] using wine prefix directory /home/rafal/.wine-pipelight.
[PIPELIGHT:LIN:silverlight5.0] checking plugin installation - this might take some time.
[install-dependency] wine-silverlight5.0-installer is already installed in '/home/rafal/.wine-pipelight'.
[install-dependency] wine-mpg2splt-installer is already installed in '/home/rafal/.wine-pipelight'.
fixme:winediag:start_process Wine Staging 1.9.7 is a testing version containing experimental patches.
fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
wine: Nie znaleziono biblioteki DLL.
err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (1157)
[PIPELIGHT:WIN:silverlight5.0] embedded mode         is on.
[PIPELIGHT:WIN:silverlight5.0] windowless mode       is off.
[PIPELIGHT:WIN:silverlight5.0] linux windowless mode is off.
[PIPELIGHT:WIN:silverlight5.0] force SetWindow       is off.
[PIPELIGHT:WIN:silverlight5.0] window class hook     is on.
[PIPELIGHT:WIN:silverlight5.0] strict draw ordering  is off.
[PIPELIGHT:WIN:silverlight5.0] replaced API function CreateWindowExA.
[PIPELIGHT:WIN:silverlight5.0] replaced API function CreateWindowExW.
[PIPELIGHT:WIN:silverlight5.0] replaced API function TrackPopupMenuEx.
[PIPELIGHT:WIN:silverlight5.0] replaced API function TrackPopupMenu.
fixme:ntdll:EtwRegisterTraceGuidsW (0x7b8d1f07, 0x7b96f118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x68f628, (null), (null), 0x7b96f118): stub
fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}
[PIPELIGHT:WIN:silverlight5.0] init successful!
[PIPELIGHT:WIN:silverlight5.0] OpenGL Vendor: Intel Open Source Technology Center
[PIPELIGHT:WIN:silverlight5.0] OpenGL Renderer: Mesa DRI Intel(R) Haswell Mobile x86/MMX/SSE2
[PIPELIGHT:WIN:silverlight5.0] Your GPU is in the whitelist, hardware acceleration should work.
1500922322191   addons.manager  DEBUG   Starting provider: PreviousExperimentProvider
1500922322191   addons.manager  DEBUG   Registering shutdown blocker for PreviousExperimentProvider
1500922322192   addons.manager  DEBUG   Provider finished startup: PreviousExperimentProvider
1500922322196   DeferredSave.extensions.json    DEBUG   Starting write
1500922322196   DeferredSave.addons.json    DEBUG   Starting write
1500922322209   DeferredSave.extensions.json    DEBUG   Write succeeded
1500922322210   DeferredSave.addons.json    DEBUG   Write succeeded

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_ref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_unref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_ref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_unref: assertion 'object->ref_count > 0' failed

    at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:113)
    at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:271)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:119)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:216)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:211)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:207)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:120)
    at Main.main(Main.java:9)
Exception in thread "main" org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary(/usr/bin/firefox) on port 7055; process output follows: 
amed-provider>
1500922321841   addons.manager  DEBUG   Registering shutdown blocker for <unnamed-provider>
1500922321841   addons.manager  DEBUG   Provider finished startup: <unnamed-provider>
1500922321902   DeferredSave.extensions.json    DEBUG   Write succeeded
1500922321902   addons.xpi-utils    DEBUG   XPI Database saved, setting schema version preference to 19
1500922321902   DeferredSave.extensions.json    DEBUG   Starting timer
1500922321919   addons.repository   DEBUG   No addons.json found.
1500922321919   DeferredSave.addons.json    DEBUG   Save changes
1500922321921   DeferredSave.addons.json    DEBUG   Starting timer
[PIPELIGHT:LIN:unknown] attached to process.
[PIPELIGHT:LIN:unknown] checking environment variable PIPELIGHT_SILVERLIGHT5_0_CONFIG.
[PIPELIGHT:LIN:unknown] searching for config file pipelight-silverlight5.0.
[PIPELIGHT:LIN:unknown] trying to load config file from '/home/rafal/.config/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/etc/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/usr/share/pipelight/configs/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] sandbox not found or not installed!
[PIPELIGHT:LIN:silverlight5.0] using wine prefix directory /home/rafal/.wine-pipelight.
[PIPELIGHT:LIN:silverlight5.0] checking plugin installation - this might take some time.
[install-dependency] wine-silverlight5.0-installer is already installed in '/home/rafal/.wine-pipelight'.
[install-dependency] wine-mpg2splt-installer is already installed in '/home/rafal/.wine-pipelight'.
fixme:winediag:start_process Wine Staging 1.9.7 is a testing version containing experimental patches.
fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
wine: Nie znaleziono biblioteki DLL.
err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (1157)
[PIPELIGHT:WIN:silverlight5.0] embedded mode         is on.
[PIPELIGHT:WIN:silverlight5.0] windowless mode       is off.
[PIPELIGHT:WIN:silverlight5.0] linux windowless mode is off.
[PIPELIGHT:WIN:silverlight5.0] force SetWindow       is off.
[PIPELIGHT:WIN:silverlight5.0] window class hook     is on.
[PIPELIGHT:WIN:silverlight5.0] strict draw ordering  is off.
[PIPELIGHT:WIN:silverlight5.0] replaced API function CreateWindowExA.
[PIPELIGHT:WIN:silverlight5.0] replaced API function CreateWindowExW.
[PIPELIGHT:WIN:silverlight5.0] replaced API function TrackPopupMenuEx.
[PIPELIGHT:WIN:silverlight5.0] replaced API function TrackPopupMenu.
fixme:ntdll:EtwRegisterTraceGuidsW (0x7b8d1f07, 0x7b96f118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x68f628, (null), (null), 0x7b96f118): stub
fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}
[PIPELIGHT:WIN:silverlight5.0] init successful!
[PIPELIGHT:WIN:silverlight5.0] OpenGL Vendor: Intel Open Source Technology Center
[PIPELIGHT:WIN:silverlight5.0] OpenGL Renderer: Mesa DRI Intel(R) Haswell Mobile x86/MMX/SSE2
[PIPELIGHT:WIN:silverlight5.0] Your GPU is in the whitelist, hardware acceleration should work.
1500922322191   addons.manager  DEBUG   Starting provider: PreviousExperimentProvider
1500922322191   addons.manager  DEBUG   Registering shutdown blocker for PreviousExperimentProvider
1500922322192   addons.manager  DEBUG   Provider finished startup: PreviousExperimentProvider
1500922322196   DeferredSave.extensions.json    DEBUG   Starting write
1500922322196   DeferredSave.addons.json    DEBUG   Starting write
1500922322209   DeferredSave.extensions.json    DEBUG   Write succeeded
1500922322210   DeferredSave.addons.json    DEBUG   Write succeeded

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_ref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_unref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_ref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_unref: assertion 'object->ref_count > 0' failed

Build info: version: '2.53.1', revision: 'a36b8b1cd5757287168e54b817830adce9b0158d', time: '2016-06-30 19:26:09'
System info: host: 'rafal-Lenovo-G510', ip: '127.0.1.1', os.name: 'Linux', os.arch: 'amd64', os.version: '4.2.0-36-generic', java.version: '1.8.0_77'
Driver info: driver.version: FirefoxDriver
    at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:125)
    at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:271)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:119)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:216)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:211)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:207)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:120)
    at Main.main(Main.java:9)
Caused by: org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
amed-provider>
1500922321841   addons.manager  DEBUG   Registering shutdown blocker for <unnamed-provider>
1500922321841   addons.manager  DEBUG   Provider finished startup: <unnamed-provider>
1500922321902   DeferredSave.extensions.json    DEBUG   Write succeeded
1500922321902   addons.xpi-utils    DEBUG   XPI Database saved, setting schema version preference to 19
1500922321902   DeferredSave.extensions.json    DEBUG   Starting timer
1500922321919   addons.repository   DEBUG   No addons.json found.
1500922321919   DeferredSave.addons.json    DEBUG   Save changes
1500922321921   DeferredSave.addons.json    DEBUG   Starting timer
[PIPELIGHT:LIN:unknown] attached to process.
[PIPELIGHT:LIN:unknown] checking environment variable PIPELIGHT_SILVERLIGHT5_0_CONFIG.
[PIPELIGHT:LIN:unknown] searching for config file pipelight-silverlight5.0.
[PIPELIGHT:LIN:unknown] trying to load config file from '/home/rafal/.config/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/etc/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] trying to load config file from '/usr/share/pipelight/configs/pipelight-silverlight5.0'.
[PIPELIGHT:LIN:unknown] sandbox not found or not installed!
[PIPELIGHT:LIN:silverlight5.0] using wine prefix directory /home/rafal/.wine-pipelight.
[PIPELIGHT:LIN:silverlight5.0] checking plugin installation - this might take some time.
[install-dependency] wine-silverlight5.0-installer is already installed in '/home/rafal/.wine-pipelight'.
[install-dependency] wine-mpg2splt-installer is already installed in '/home/rafal/.wine-pipelight'.
fixme:winediag:start_process Wine Staging 1.9.7 is a testing version containing experimental patches.
fixme:winediag:start_process Please mention your exact version when filing bug reports on winehq.org.
wine: Nie znaleziono biblioteki DLL.
err:wineboot:ProcessRunKeys Error running cmd L"C:\\windows\\system32\\winemenubuilder.exe -a -r" (1157)
[PIPELIGHT:WIN:silverlight5.0] embedded mode         is on.
[PIPELIGHT:WIN:silverlight5.0] windowless mode       is off.
[PIPELIGHT:WIN:silverlight5.0] linux windowless mode is off.
[PIPELIGHT:WIN:silverlight5.0] force SetWindow       is off.
[PIPELIGHT:WIN:silverlight5.0] window class hook     is on.
[PIPELIGHT:WIN:silverlight5.0] strict draw ordering  is off.
[PIPELIGHT:WIN:silverlight5.0] replaced API function CreateWindowExA.
[PIPELIGHT:WIN:silverlight5.0] replaced API function CreateWindowExW.
[PIPELIGHT:WIN:silverlight5.0] replaced API function TrackPopupMenuEx.
[PIPELIGHT:WIN:silverlight5.0] replaced API function TrackPopupMenu.
fixme:ntdll:EtwRegisterTraceGuidsW (0x7b8d1f07, 0x7b96f118, {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}, 1, 0x68f628, (null), (null), 0x7b96f118): stub
fixme:ntdll:EtwRegisterTraceGuidsW   register trace class {aa087e0e-0b35-4e28-8f3a-440c3f51eef1}
[PIPELIGHT:WIN:silverlight5.0] init successful!
[PIPELIGHT:WIN:silverlight5.0] OpenGL Vendor: Intel Open Source Technology Center
[PIPELIGHT:WIN:silverlight5.0] OpenGL Renderer: Mesa DRI Intel(R) Haswell Mobile x86/MMX/SSE2
[PIPELIGHT:WIN:silverlight5.0] Your GPU is in the whitelist, hardware acceleration should work.
1500922322191   addons.manager  DEBUG   Starting provider: PreviousExperimentProvider
1500922322191   addons.manager  DEBUG   Registering shutdown blocker for PreviousExperimentProvider
1500922322192   addons.manager  DEBUG   Provider finished startup: PreviousExperimentProvider
1500922322196   DeferredSave.extensions.json    DEBUG   Starting write
1500922322196   DeferredSave.addons.json    DEBUG   Starting write
1500922322209   DeferredSave.extensions.json    DEBUG   Write succeeded
1500922322210   DeferredSave.addons.json    DEBUG   Write succeeded

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_ref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_unref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_ref: assertion 'object->ref_count > 0' failed

(/usr/lib/firefox/firefox:22291): GLib-GObject-CRITICAL **: g_object_unref: assertion 'object->ref_count > 0' failed

    at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:113)
    ... 7 more

spring boot似乎以其他方式管理selenium。也许有人知道如何使用springboot运行这个代码示例。请帮帮忙。

EN

回答 2

Stack Overflow用户

发布于 2017-07-25 03:39:29

不确定您使用springboot做什么,因为您的代码没有使用它,但是为了它的价值,Springboot有一个与典型的不同的主类。

试着像这样改变你的main:

代码语言:javascript
复制
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class Main implements CommandLineRunner {
    public static void  main(String[] args)
    {
        SpringApplication.run(Main.class, args);
    }

    @Override
    public void run(String... args) throws Exception {
        System.setProperty("webdriver.gecko.driver", "/home/rafal/geckodriver");
        WebDriver webDriver = new FirefoxDriver();
        webDriver.get("http://google.com");
    }
}

SpringApplication.run方法将启动一个tomcat服务器并执行其他一些使Spring高兴的magic,并且run method利用Spring框架在Spring初始化之后但在SpringApplication.run方法完成之前立即执行逻辑。

票数 0
EN

Stack Overflow用户

发布于 2017-08-12 04:24:44

我必须明确地定义所有的selenium依赖项,而不仅仅是selenium-java。使用这些其他selenium依赖项更新您的gradle依赖项。

代码语言:javascript
复制
compile "org.seleniumhq.selenium:selenium-server:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-java:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-leg-rc:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-api:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-chrome-driver:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-edge-driver:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-firefox-driver:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-ie-driver:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-opera-driver:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-remote-driver:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-safari-driver:${seleniumVersion}"
compile "org.seleniumhq.selenium:selenium-support:${seleniumVersion}"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45288338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档