Ruby 红宝石无头宝石屏幕尺寸不受尊重

Ruby 红宝石无头宝石屏幕尺寸不受尊重,ruby,watir-webdriver,headless,xvfb,Ruby,Watir Webdriver,Headless,Xvfb,我正在使用Ruby、Watir Webdriver和Headless gem运行Watir测试 以下是设置无头环境的代码: headless = Headless.new(dimensions: "1600x900x24") 如果测试崩溃,我们的测试环境会自动捕获屏幕截图。我希望看到的屏幕截图是1600x900,但是图像大约是1050x818(+/-几个像素),并且网页本身被缩放以适应这个区域 我将无头尺寸更改为3200x1800x24,屏幕截图为1585x1718。 我将无头尺寸更改为50x

我正在使用Ruby、Watir Webdriver和Headless gem运行Watir测试

以下是设置无头环境的代码:

headless = Headless.new(dimensions: "1600x900x24")
如果测试崩溃,我们的测试环境会自动捕获屏幕截图。我希望看到的屏幕截图是1600x900,但是图像大约是1050x818(+/-几个像素),并且网页本身被缩放以适应这个区域

我将无头尺寸更改为3200x1800x24,屏幕截图为1585x1718。 我将无头尺寸更改为50x90x24,屏幕截图为187 x 8,在这种情况下,整个网页不可见

对这种行为有何解释?如何将无头屏幕设置为1600 x 900?我想知道这是不是Xvfb的一个问题,或者是Headless在Xvfb中的工作方式,但我不太了解它是如何工作的,我今天在Xvfb上所做的阅读并没有为我阐明这一点


我关心的不是屏幕截图,而是页面的缩放以适应1050 x 818的缩小尺寸。在这个大小下,我正在编写的测试的某些页面元素被包装在屏幕上,不可单击,这首先导致测试崩溃。

我以前在Jenkins服务器上运行headless时遇到过这个问题。问题在于Xvfb。您可以在命令行中设置屏幕分辨率,如下所示:

Xvfb :1 -screen 0 1600x900x24

谢谢你的回复。我已经试着实施你的建议好几个小时了,但到目前为止还没有奏效。我犯了很多错误,其中有几个我通过谷歌搜索得到了澄清。希望我能想出如何克服这个问题,这在网络上的一些地方都有报道,但我还没有找到一个可以在我的机器上运行的修复方法:“[dix]无法初始化字体路径元素/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,从列表中删除!”然后我可以继续我的Watir测试了!嗯,我从来没有遇到过这个问题。你能发布你用来启动Xvfb的命令吗?如果我复制并粘贴你上面建议的命令,我会收到我报告的关于TrueType的错误消息,这会导致系统挂起,并且我再也没有收到命令提示符
sh-e'/usr/bin/Xvfb:1-屏幕0 1600x900x24'
显示“sh:0:无法打开/usr/bin/Xvfb:1-屏幕0 1600x900x24”。我的TrueType目录为空,不确定是否正确
sudo dpkg query-W-f='${Status}${Package}'xvfb
reports“install ok installed xvfb.”
sudo apt get-y install x-ttcidfont-conf cabextract ttf mscorefonts installer
告诉我确实有最新版本的x-ttcidfont-conf。是的,我对此不知所措。在查看了一些配置之后,这更像是我的命令,所以可以尝试一下吗?对不起,我帮不上什么忙了<代码>Xvfb:0-交流-屏幕0 1600x900x24;export DISPLAY=:0唉,这个命令没有让我得到任何进一步的信息。非常感谢你的努力。希望我能弄明白。如果我这样做了,我会发布更新。