我已经安装了selenium-server-standalone-2.42.2。debian虚拟盒中的jar
并安装了火狐29.0
并尝试使用phpUnit(目录中唯一的文件)运行以下脚本:
<?php
class TestLogin extends PHPUnit_Extensions_Selenium2TestCase{
public function setUp()
{
$this->setHost('localhost');
$this->setPort(4444);
$this->setBrowser('firefox');
$this->setBrowserUrl('http://debian-vm/phpUnitTutorial');
}
public function testHasLoginForm()
{
$this->url('index.php');
$username = $this->byName('username');
$password = $this->byName('password');
$this->assertEquals('', $username->value());
$this->assertEquals('', $password->value());
}
}
我得到以下错误:
1) TestLogin::testHasLoginForm
PHPUnit_Extensions_Selenium2TestCase_WebDriverException: Unable to connect to host
127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
Error: no display specified
Error: no display specified
这是什么意思?
我尝试了几条红线,显然我必须做以下几点:
1) 要在命令shell中键入此命令
export PATH=:0;
结果:我也犯了同样的错误。
2) 我已经安装了vnc4server,并将debian vm:1作为一个应用程序,然后设置export PATH=debian vm:1
使用realvnc运行它,在查看器中(正常工作)我遇到了同样的问题。
如今,设置headless就像将选项传递给selenium浏览器驱动程序一样简单。在大多数环境中,这可以通过在运行测试之前设置env变量MOZ_HEADLESS
来实现,即尝试:
export MOZ_HEADLESS=1
然后,重新运行您的测试,它应该无头运行。
如果你运气不好,而且它没有拾取环境变量,试着在驱动程序配置中启用无头支持。例如:使用phpunit-selenium lib,执行以下操作:
$this->setDesiredCapabilities(['moz:firefoxOptions'=> ['args' => ['-headless']]]);
$this->setDesiredCapabilities(['chromeOptions'=>['args'=>['headless']]]);
有关更多选项,请参见php webdriver wiki。
当然,脚本是一种方法,但是迭代所有可能的显示值不如使用正确的显示值好。而且至少在debian/ubuntu中不需要xvfb。只要正确,就可以使用当前的显示会话变量在本地或远程运行Selenium。请看我的帖子http://thinkinginsoftware.blogspot.com/2015/02/setting-display-variable-to-avoid-no.html但简而言之:
# Check current DISPLAY value
$ echo $DISPLAY
:0
# If xclock fails as below the variable is incorrect
$ xclock
No protocol specified
No protocol specified
Error: Can't open display: :0
# Find the correct value for the current user session
$ xauth list|grep `uname -n`
uselenium/unix:10 MIT-MAGIC-COOKIE-1 48531d0fefcd0a9bde13c4b2f5790a72
# Export with correct value
$ export DISPLAY=:10
# Now xclock runs
$ xclock
您收到此错误,因为您尚未设置显示
变量。以下是如何在无头机器上执行测试的指南。
您必须先安装Xvfb和浏览器:
apt-get install xvfb
apt-get install firefox-mozilla-build
然后启动Xvfb:
Xvfb &
设置显示
并启动Selenium:
export DISPLAY=localhost:0.0
java -jar selenium-server-standalone-2.44.0.jar
然后你就可以运行你的测试了。
OpenCV错误:未指定的错误(该函数未实现。使用Windows、GTK 2.x或Carbon支持重建库。如果您在Ubuntu或Debian上,请安装libgtk2.0-dev和pkg config,然后重新运行cmake或configure脚本),位于cvShowImage的/io/OpenCV/modules/highgui/src/window文件中。cpp,第545行回溯(最后一次调用):
问题内容: 我想将文件从Ubuntu主机复制到Docker容器。 我使用14.04 LTS存储库中的Docker 1.6.2。 当我尝试复制时出现错误: 同样成功,我可以输入乱码而不是文件名和路径: 问题答案: 版本1.6.2不允许从主机复制到容器,您需要至少升级到1.8以获得该支持。
大家好,我有一个问题,当我试图复制一个文件从主机到docker容器,我得到了这个错误。 这是我的命令docker cp /usr/zhy/init.sqldb001:/root 这似乎不起作用。这是我的docker参数。 客户端版本:1.6.2客户端API版本:1.18 Go版本(客户端):go1.3.3 Git提交(客户端):7c8fca2 OS/Arch(客户端):linux/amd64服务器
问题内容: 我已从网站下载并以以下方式运行: 我选择所需的选项并为(libgdx 1.6.2)生成项目。当我单击生成按钮时,该工具不会引发任何错误。 运行时,我转到文件>打开…,然后选择生成的ipr文件。 当我尝试运行桌面启动器时,抛出下一个错误: 我尝试使用其他构建工具和Android API(当我按下生成按钮时,大多数都会向我发出警告)。我正在使用构建工具20.0.0和API 20,并且使用此
我正在使用库。 正在调用,但没有显示错误。可能是什么问题?我怎么解决这个?
我正在尽我最大的努力,但我无法找到我的解决方案。 sugarcrm。尝试安装时,日志文件出现以下错误。 2017年11月1日星期三07:06:13[651035][无-][致命]创建表时出错:aos\u products\u quotes:查询失败:创建表aos\u products\u quotes(id char(36)不为NULL,名称文本NULL,date\u entered dateti