使用Centos,Apache,PHPUnit,Selenium RC,
我正在尝试测试在我的一台服务器上运行的selenium RC。
java -jar selenium-server-standalone-2.4.0.jar
最初我得到了firefox创建配置文件的错误,它没有加载任何东西并给出错误。
其次,我尝试使用给定的个人资料位置。
java -jar selenium-server-standalone-2.4.0.jar -firefoxProfileTemplate “/root/.mozilla/firefox/”&
仍显示错误
错误 - 无法启动新的浏览器会话,关闭浏览器和 清除所有会话数据
信息 - 得到的结果:无法启动新的浏览器会话:在会话空启动浏览器时出错
请分享您的观点可能是什么问题, 运行Mock,它正在运行,出于测试目的,但是firefox,无法在浏览器会话中休息。
注意:它不是GUI模式(NO X),它有firefox版本3.6.18,
09:48:20.312 INFO - Got result: Failed to start new browser session: Error while launching browser on session null
09:48:39.659 INFO - Command request: getNewBrowserSession[*firefox3, http://google.co.uk] on session null
09:48:39.659 INFO - creating new remote session
09:48:39.660 INFO - Allocated session 17b9149077f648d3bc89b3f106466c6c for http://google.co.uk, launching...
09:48:39.860 INFO - Preparing Firefox profile...
09:49:00.017 ERROR - Failed to start new browser session, shutdown browser and clear all session data
java.lang.RuntimeException: Timed out waiting for profile to be created!
at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.waitForFullProfileToBeCreated(FirefoxChromeLauncher.java:360)
at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.populateCustomProfileDirectory(FirefoxChromeLauncher.java:114)
at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.launch(FirefoxChromeLauncher.java:83)
at org.openqa.selenium.server.browserlaunchers.FirefoxChromeLauncher.launchRemoteSession(FirefoxChromeLauncher.java:412)
at org.openqa.selenium.server.BrowserSessionFactory.createNewRemoteSession(BrowserSessionFactory.java:375)
at org.openqa.selenium.server.BrowserSessionFactory.getNewBrowserSession(BrowserSessionFactory.java:125)
at org.openqa.selenium.server.BrowserSessionFactory.getNewBrowserSession(BrowserSessionFactory.java:87)
at org.openqa.selenium.server.SeleniumDriverResourceHandler.getNewBrowserSession(SeleniumDriverResourceHandler.java:785)
at org.openqa.selenium.server.SeleniumDriverResourceHandler.doCommand(SeleniumDriverResourceHandler.java:422)
at org.openqa.selenium.server.SeleniumDriverResourceHandler.handleCommandRequest(SeleniumDriverResourceHandler.java:393)
at org.openqa.selenium.server.SeleniumDriverResourceHandler.handle(SeleniumDriverResourceHandler.java:146)
at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:1530)
at org.openqa.jetty.http.HttpContext.handle(HttpContext.java:1482)
at org.openqa.jetty.http.HttpServer.service(HttpServer.java:909)
at org.openqa.jetty.http.HttpConnection.service(HttpConnection.java:820)
at org.openqa.jetty.http.HttpConnection.handleNext(HttpConnection.java:986)
at org.openqa.jetty.http.HttpConnection.handle(HttpConnection.java:837)
at org.openqa.jetty.http.SocketListener.handleConnection(SocketListener.java:243)
at org.openqa.jetty.util.ThreadedServer.handle(ThreadedServer.java:357)
at org.openqa.jetty.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
09:49:00.048 INFO - Got result: Failed to start new browser session: Error while launching browser on session null
答案 0 :(得分:3)
经过一整天的研究,我得到了解决方案,如果是这样的话,这可能对大家有用..
如果有任何问题:由于显示问题,您可能会遇到一些问题,例如firefox配置文件和firefox午餐,以及无法加载。
Firefox配置文件问题:如果您在给定的计算机中没有,则从另一台计算机复制并粘贴。 Firefox Lunching问题:在null上没有会话: yum install xorg-x11-Xvfb&& Xvfb:99 -ac&& export DISPLAY =:99&&火狐强> 如果您发现有关xvfb:99的任何问题,可能必须删除锁定文件。
服务器已激活显示99 如果此服务器不再运行,删除/tmp/.X99-lock 然后重新开始。
Firefox应该没有错误地启动,并保持运行(直到你用Control-C杀死它)
答案 1 :(得分:1)
它不断给我同样的错误(错误 - 无法启动新的浏览器会话,关闭浏览器并清除所有会话数据),无论我做了什么。我在安装了firefox的linux机器上运行Selenium,我试图无头地运行它。
以下是我如何解决问题:
1.安装xvfb(虚拟显示管理器)及其依赖项
sudo apt-get install xvfb sudo apt-get apt-get install libgl1-mesa-dri xfonts-cyrillic xfonts-100dpi xfonts-75dpi
2.像这样运行xvfb
sudo Xvfb:99 -ac
这应该让它在display:99上运行。你会看到一些输出
3.打开一个新终端并输入。
export DISPLAY =:99
java -jar selenium-server-standalone-2.37.0.jar
这会将显示设置为:99。因此,从该终端窗口打开的任何需要使用显示的内容都将在xvfb管理的虚拟显示器(不可见)上打开。第二行启动selenium服务器,由于selenium将尝试启动firefox,它将在这个不可见的显示器上启动它。
然后运行您的测试。这应该得到测试设置,浏览器将不可见。