当前位置: 首页 > 知识库问答 >
问题:

Jenkins上的XVFB连接到错误的显示器。显示屏显示黑屏

高朝明
2023-03-14

我试图通过Jenkins在UBUNTU AWS/VM上使用XVFB执行无头铬硒测试。

预构建执行外壳程序:

export DISPLAY=:98
x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :98 -auth /var/run/lightdm/root/:0 -rfbport 5900

当构建开始时,我看到:

Xvfb starting$ /usr/bin/Xvfb :98 -screen 0 1024x768x24 -fbdir /var/lib/jenkins/xvfb-82-..fbdir10942188934689457655
[Jenkins-Headless] $ /bin/sh -xe /tmp/jenkins11502774511620101086.sh
+ export DISPLAY=:98
+ x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :98 -auth /var/run/lightdm/root/:0 -rfbport 5900
17/09/2020 09:50:33 passing arg to libvncserver: -rfbport
17/09/2020 09:50:33 passing arg to libvncserver: 5900
.
.
.

最后:

17/09/2020 09:50:34 x11vnc version: 0.9.13 lastmod: 2011-08-10  pid: 11460
17/09/2020 09:50:34 Using X display :98
17/09/2020 09:50:34 rootwin: 0x298 reswin: 0x200001 dpy: 0x1a57e8f0
.
.
The VNC desktop is:      jenkins-it02:0
PORT=5900

现在,通过 MAC 上的终端,我使用 ssh -L 5900:本地主机:5900 qa_user@my.aws.ip 命令连接到 VM。

并使用 VNC 查看器,我正在连接到本地主机:5900。它连接了,但我只看到一个黑屏。我期待屏幕上的Chrome浏览器窗口。

我该如何解决这个问题并在vncviewer上观看Chrome window?

共有1个答案

傅乐湛
2023-03-14

我自己找到了解决办法。对于有相同问题的任何人:

我做错的是我用了< code>driver = new ChromeDriver(选项);在我的代码中而不是< code > driver = new remote web driver(new URL(" http://my . AWS . IP:4444/wd/hub "),options);

进行此更改后,我在EC2中下载了selenium-server-standalone.jar。

然后,在开始测试之前,我对EC2执行ssh -X qa_user@my.aws.ip并执行:

Xvfb :99 -ac -screen 0 1280x1024x24 &
export DISPLAY=:99
java -jar /home/qa_user/Selenium/selenium-server-standalone.jar

现在,执行测试,同时我打开了一个新的终端,并执行了以下操作:

ssh -L 5900:本地主机:5900 qa_user@my

设置好屏幕后,我这样做了:

x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :99 -auth /var/run/lightdm/root/:0  -rfbport 5900

接下来,打开VNC浏览器,连接到localhost:5900,你会看到Chrome执行。

稍后,如果需要,您可以将所有这些移动到Jenkins预构建的执行shell:)

 类似资料:
  • 我目前正在编写一个游戏,你必须避免小行星。我不得不处理一些混乱的坐标,我不得不猜测精灵的坐标。我现在有了描述我的世界的任意单位。不幸的是,我的游戏屏幕不能完全工作。当我想渲染我的小行星时,游戏屏幕会显示一个黑屏。 上面显示的代码工作正常,并向我展示了以下内容: 当我在GameScreen类中添加小行星的渲染方法时,GameScreen只是黑色的: 小行星等级: 小行星等级:

  • 我目前正在开发一个应用程序,我需要在其中播放一个视频。一切都很好。但是如果我的应用程序被发送到后台,然后又被发送到前台,它会显示一个实心的黑屏。 请给我提供一个解决这个问题的办法。

  • 显示文字或者表情。 用法 Your browser does not support the video tag. 案例:保险箱 说明:使用旋钮制作密码器,通过显示屏显示密码。输入密码正确后指示灯亮起,按下按钮保险箱被开启。 所需模块:电源、蓝牙模块、按钮、旋钮、显示屏、双舵机驱动、舵机驱动包、转接线10cm。

  • 显示屏模块能够显示输入值。你也可以通过编程自定义要显示的信息,如数字、标点和表情信息等。 净重量:12.4g 体积:24×48×14mm 参数 工作电压:DC 5V 抗跌落能力:1.5m 工作温度:-10℃~55℃ 工作湿度:<95% 特点 支持图像、表情、ASCII编码字符等多种输出。

  • 我在Eclipse中导入了lwjgl。老师也给了我们一个BaseWindow应用程序来导入Eclipse。应用程序应显示1024x768黑色窗口。但我看到的不是黑色的窗口,而是黑白条纹在显示屏上闪烁。截图:http://i.stack.imgur.com/JHsMC.png我无法显示条纹的图片,因为它们在屏幕截图上不可见。但还有一个明显的错误。 这是BaseWindow的源代码。java文件: 这

  • 我是python新手,我想用pygame在屏幕上可视化一个算法。这是我的代码: 但这总是显示一个黑色或有点深灰色的屏幕。有人知道我做错了什么吗?我尝试了多个教程,它们都给了我相同的屏幕。 我正在使用MacOS 10.14