如何更改Webdriver Firefox连接到本地主机的端口?

6
我有一个使用selenium webdriver编写的测试,转为了maven项目,并想通过Jenkins在xvfb上运行。由于显示器选择存在问题,我想尝试更改端口等其他方案。
这是我收到的错误信息:
org.openqa.selenium.firefox.NotConnectedException: 无法在45000毫秒后连接到127.0.0.1上的端口7055。 Firefox控制台输出: 错误:未指定显示器 错误:未指定显示器
以下是我的代码:
File ffExe = new File("/usr/bin/firefox");
FirefoxBinary ffox = new FirefoxBinary(ffExe);
ffox.setEnvironmentProperty("DISPLAY", ":21");
WebDriver driver = new FirefoxDriver(ffox, null);

那么,我该如何告诉 Firefox 使用另一个端口,我应该指定哪个端口?
2个回答

2

你能给我展示一下如何在代码中使用“webdriver.firefox.port”的例子吗?在你提供的页面中,他们先谈到了setProperty,然后又谈到了setPreference,我有些困惑。 - Kaloyan Roussev
System.setProperty("propertyname", "propertyvalue") 系统.setProperty("属性名称", "属性值") - Akbar

2
问题不在于它无法连接到该端口,而是错误的第二部分,即 Jenkins 中没有指定显示器。这就是为什么设置 Firefox 显示器可能不起作用的原因。
通过在终端中输入“env”并记录分配给您的 DISPLAY 变量的数字来查找您的显示器设置。例如,“DISPLAY:1.0”。
接下来,您需要在 Hudson/Jenkins 中设置显示器变量。导航到 Jenkins 登录页面,然后单击“管理 Jenkins>管理节点>主节点>配置”。选中环境变量复选框,然后在名称框中设置“DISPLAY”,将值设置为类似于我们的示例“:1.0”的内容。
此外,您可能需要使用终端中的“xhost +”禁用 xhost 访问控制。

谢谢,我已经尝试了在谷歌上关于这个显示问题的所有内容,但到目前为止都没有起作用。你的帖子中有一些新的东西,我今天会在工作中尝试一下。你能否看一下我的另一个相关主题?http://stackoverflow.com/questions/17925498/shifted-webdriver-test-from-firefox-to-chrome-jenkins-still-thinks-its-firefox - Kaloyan Roussev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接