2013-04-10 52 views
1

我有一个服务器,A,有日食,testNG,硒,和东西上设置它。我有另一台服务器B,其上安装了Bamboo。运行测试NG硒测试通过SSH

我能够在服务器A上运行一个testNG脚本,该脚本在我开发的Web应用程序上运行一组硒测试。我使用了eclipse中显示的vm属性中的java命令,通过Bamboo在服务器B上创建一个ssh任务。

然而,它似乎只是坐在那里,并没有真正完成竹子的工作。

我试图从另一台笔记本电脑ssh到服务器A,并运行相同的命令。我没有收到任何错误消息或任何内容,但系统似乎只是冻结。

我该如何解决这个问题?

回答

2

安装Xvfb,它伪装成显示器,但不显示在任何地方。
sudo apt-get install xvfb

如果你想减少错误添加这些字体,但这些警告并不重要。
sudo apt-get install xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic

然后开始运行,并将显示器设置为系统不会使用的东西。这是我做的,记住&让终端在后台运行某些东西。
Xvfb :99 -ac &
export DISPLAY=:99firefox &

另外我是有轨服务器断开连接时我退出SSH终端上的红宝石问题。要解决这个问题,请使用Screen。屏幕运行另一个终端,不受ssh的影响。
sudo apt-get install screen

然后在你做上面的东西之前就开始屏幕。
screen


为了摆脱当前屏幕窗口只需点击“按Ctrl + A”然后“d”,并取回screen -r类型。

0

下面是您的选择吗?主机A:有浏览器和一个selenium-rc总是运行并监听任何(4444)端口; 主机B:有TestNG +构建作业并且有指向主机A的硒-rc的测试。

这是在不同主机上运行的硒和ci的常规设置。

如果服务器A运行一个linux/unix,然后只是ssh和ing浏览器(与硒,你最终会试图启动浏览器)将不会成功。

0

尝试将DISPLAY环境变量设置为“:0”(或者无论您的机器上的显示器是什么 - 您可以通过GUI启动终端并运行“echo $ DISPLAY”来检查)。我可以用下面的命令启动Firefox通过ssh:

SSH,某 “ENV DISPLAY =:0火狐”

但严重的是,我第二patrungel的建议 - 使用硒电网/ RC。它是专为这种事情设计的。