selenium-webdriver - 如何通过 Bamboo 执行 Selenium 测试?

标签 selenium-webdriver maven-3 bamboo

我们正在尝试使用 Selenium CI 运行一些 Selenium 测试。我们正在使用 maven 构建项目并使用 Selenium 网络驱动程序。

我关注了此 link 中的一篇博文 作为引用

当我在本地(没有 Bamboo)运行 Maven 项目时,它运行良好。但是,当我尝试在 Windows 服务器中使用 Bamboo 代理来使用它时,出现了错误。

org.openqa.selenium.WebDriverException: Failed to connect to binary
FirefoxBinary(C:\Program Files (x86)\Mozilla Firefox\firefox.exe) on port 
7055; process output follows:
Build info: version: '2.44.0', 
revision: '76d78cf323ce037c5f92db6c1bba601c2ac43ad8', 
time: '2014-10-23 13:11:40' System 
info: host: 'M',
ip:'myIP',
os.name: 'Windows 7', 
os.arch: 'amd64', 
os.version: '6.1', 
java.version: '1.8.0_11' 
Driver info: driver.version: FirefoxDriver

然后我搜索了这个错误,假设是插件导致的错误。

其中很少有:

但没有任何效果。

最佳答案

找到了解决该问题的方法。我将其发布为任何将经历这种情况的人的答案。但我认为对此必须有更好的答案。如果您知道更好的方法,请发布。

首先(对我们而言)这种情况仅在我们尝试使用 Bamboo 代理进行 Selenium 测试时才会发生。因此,如果我们仔细观察,代理是由服务启动的。所以进程(Wrapper.exe)正在运行,因为它是由“SYSTEM”运行的。因此,当代理试图运行一个程序(在我们的例子中是 firefox.exe)时,该程序也将由“SYSTEM”启动。

但是“SYSTEM”并不是登录PC的用户。所以它不能与桌面交互。因此出现这个错误。

所以我们要做的是由我的用户运行代理进程(Wrapper.exe),因此当代理启动另一个程序(如 firefox)时。它将作为可以与桌面交互的我的用户启动的进程运行。 当我们这样做时,测试就会像魅力一样运行!

我们所做的工作是:停止服务并使用“bamboo-agent-home\bin”中的“BambooAgent.bat”运行 wrapper.exe。您可以通过将 bin 文件的快捷方式添加到启动文件夹来执行此操作。

关于selenium-webdriver - 如何通过 Bamboo 执行 Selenium 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28492901/

相关文章:

bamboo - Bamboo 能否将 HTTP 400 Bad 请求解释为失败

javascript - 如何在selenium中显示10秒内的警报

java - maven -> 配置文件 -> 激活 - 需要所有条件还是只需要一个?

java - 搜索并列出 .m2(本地)maven 存储库

maven - 如何通过存储库共享一个通用的 build.gradle?

reactjs - 错误 : Cannot find module 'C:\...\node_modules\isexe\index.js' . 请验证 package.json 是否具有有效的 "main"条目

jsf-2 - Selenium 和 JSF 2.0

javascript - Protractor 获取模型值

Python Selenium 不断检查页面源代码中的短语

c++ - 如何使用 Bamboo CI 处理 C++ CMake 项目之间的依赖关系?