我在 Ubuntu 系统中使用 Selenium RC。 我想自动化测试,我需要在机器启动时启动 Selenium-server.jar。
我在/ect/init/中创建了 seleniumServer.conf:
start on startup
start on runlevel 3
respawn
exec xvfb-run java -jar /home/condde/selenium-server-1.0.3/selenium-server.jar -port 4444
当我重新启动机器时,它工作正常,进程正在运行。 但是当我执行测试时,结果是:
PHPUnit_Framework_Exception: Could not connect to the Selenium RC server.
有什么想法吗? 谢谢!
最佳答案
我有同样的问题,我的进程有时无法连接到selenium服务器。在深入研究调试日志和 selenium 源代码后,我发现这是因为当 selenium 尝试生成随机数时,如果/dev/random 挂起,java 的 SecureRandom 挂起。所以我用/dev/urandom 替换/dev/random,然后 selenium 服务器工作正常:
sudo mv /dev/random /dev/random.real
sudo ln -s /dev/urandom /dev/random
或者您可以修改$JAVA_HOME/jre/lib/security/java.security
文件并更改属性:
securerandom.source=file:/dev/random
到:
securerandom.source=file:/dev/urandom
也许它有用,但不适合我。
关于启动时的 Selenium 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3666794/