Ruby的Selenium以及selenium-client是Web应用集成测试的常用工具。今天我装上这两个gem之后,却发现以下代码跑不起来:
require "rubygems"
gem "selenium-client", ">=1.2.16"
require "selenium/client"
begin
@browser = Selenium::Client::Driver.new \
:host => "localhost",
:port => 4444,
:browser => "*firefox",
:url => "http://www.google.com",
:timeout_in_second => 60
@browser.start_new_browser_session
@browser.open "/"
@browser.type "q", "Selenium seleniumhq.org"
@browser.click "btnG", :wait_for => :page
puts @browser.text?("seleniumhq.org")
ensure
@browser.close_current_browser_session
end
第一个错误是说找不到firefox-bin,这个好解决,在/usr/local/bin下面建一个软连接,指向/Applications/Firefox.app/Contents/MacOS/firefox-bin即可
cd /usr/local/bin
sudo ln -s /Applications/Firefox.app/Contents/MacOS/firefox-bin firefox-bin
第二个错误是说sqlite库的版本太低。google了一番,发现最好的办法就是用Selenium-server.jar的最新版,替换gem库中的那个版本,可以到这里下载:
http://code.google.com/p/selenium/downloads/detail?name=selenium-server-standalone-2.0a4.jar
被替换的那个文件一般位于/Library/Ruby/Gems/1.8/gems/Selenium-1.1.14/lib/selenium/openqa/selenium-server.jar.txt,如果你的gem安装地址不同,可以使用gem list -d Selenium查看一下。
这番折腾之后,终于运行正常了。
分享到:
相关推荐
1. 支持Chrome 44及以上版本:这意味着它可以处理在这些浏览器版本上运行的自动化测试。 2. 兼容WebDriver协议:遵循WebDriver W3C规范,提供了一种标准化的方式来控制浏览器。 3. 提供丰富的API:允许开发者访问...
通常,我们可以在ChromeDriver的官方网站上找到对应版本的下载链接,根据自己的操作系统(Windows、Mac或Linux)和Chrome浏览器的版本号选择合适的驱动程序。 安装新版本的ChromeDriver后,我们需要在Selenium测试...
Appium 真机运行调试常见问题解决方法 Appium 是一个开源的自动化测试框架,支持多种移动设备和平台,但是在真机运行调试时会碰到各种问题。以下是常见的问题解决方法: 一、解决 ideviceinstaller 安装问题 在 ...
5. **安装配置Selenium和Bromine**:书中会详细介绍如何在不同的操作系统(如Windows、Mac、Linux)上安装Python环境,以及如何安装和配置Selenium和Bromine的依赖库。 6. **页面对象模式**:这是一种良好的测试...
可能遇到的问题及解决方法。 #### 二、WebDriver 操作 **2.1 操作浏览器基本方法** ##### 2.1.1 打开网页 使用 `driver.get(url)` 方法打开指定 URL。 ##### 2.1.2 设置休眠 使用 `time.sleep(seconds)` 方法...
1. **安装与配置**:如何在不同的操作系统(Windows、Linux、Mac OS)上安装Selenium WebDriver和相应的浏览器驱动,例如ChromeDriver或GeckoDriver。 2. **基本用法**:如何初始化WebDriver对象,打开一个网页,...
对于遇到的问题,可以在Stack Overflow等平台找到解决方案,或者参与开源社区讨论。 总结来说,Selenium 2.38.1是Python开发者的强大工具,它提供了完善的Web自动化测试功能,覆盖了从基础的页面导航到复杂的用户...
Selenium Grid则是一个分布式执行测试脚本的工具,它可以在多台机器上并行运行多个测试用例,从而提高测试效率。Selenium Grid通过一个中心节点(hub)来管理多个节点(node),每个节点负责不同的操作系统和浏览器...
- **跨平台兼容性**:能够在Windows、Mac OS和Linux等不同操作系统上运行。 - **浏览器兼容性**:支持Internet Explorer、Mozilla Firefox等多种主流浏览器,有助于发现并解决浏览器之间的兼容性问题。 - **多种编程...
Selenium的核心功能是模拟真实用户在浏览器上的操作,如点击按钮、填写表单、导航网页等,从而对Web应用进行全方位的测试。这个" Selenium样品框架"很可能是为了展示或教学如何构建和使用Selenium测试用例和脚本。 ...
本文将详细讲解与“geckodriver-v0.20.1 for MAC(64位)下载”相关的知识点,包括 Selenium、GeckoDriver 的作用以及在Mac操作系统上安装和使用的过程。 Selenium 是一个支持多种编程语言的自动化测试工具,如Java...
标题中的“MacBookPro M1 chromedriver”表明我们讨论的主题是关于在苹果最新M1芯片架构的MacBook Pro上使用Chrome浏览器的WebDriver工具。WebDriver是一个自动化测试接口,允许程序员控制和自动化Web浏览器的行为,...
Selenium 测试直接运行在浏览器中,就像真正的用户操作一样。它主要用于自动化 Web 应用程序的测试,但也可以用于演示自动化等其他用途。 **Selenium 的主要优势包括:** 1. **免费开源:** 不需要考虑购买成本,...
解决这些问题通常需要检查Chrome和ChromeDriver的版本是否匹配、确认执行脚本的用户有执行ChromeDriver的权限、以及确认ChromeDriver的路径设置正确。 总的来说,"chromedriver_mac64_2.38"是一个适用于MAC 64位...
标题中的"chromedriver+geckodriver for Mac"指的是在Mac操作系统上使用的两个自动化测试工具:ChromeDriver和GeckoDriver。...在实际使用中,需要注意驱动版本的适配、安装路径的设置以及可能遇到的性能和兼容性问题。
ChromeDriver是用于自动化Google Chrome浏览器的工具,它是Selenium ...记住,始终确保ChromeDriver与Chrome浏览器版本的匹配,以及在运行测试时考虑到各种可能出现的问题,这样可以确保测试的有效性和可靠性。