这一系列文章目的不是讲ruby,也不是讲selenium-webdriver,而是通过一个登录soso首页的小例子讲怎样一步一步写好自动化测试。目标是:面向对象编程,实现逻辑与数据分离。

如果你觉得已经学会了selenium-webdriver这个工具,而且也可以自己写一些小例子,但是似乎又是在云里雾里,不知道怎样写出来一个 成品,不确定应该用哪种开发框架,用什么测试框架。打个比方,就好像你已经会去市场买菜、把菜切好,会用厨房的灶具打火、回锅、放油,但是就是不知道应该 怎样把菜做好。这一系列文章的目的就是写明怎样把“菜做好”

开篇前介绍一个学习ruby和selenium-webdriver的地址:http://17test.info/

ruby+selenium-webdriver学习视频教程:http://www.boobooke.com/goods-37.html

前期准备:
一.ruby
 1.版本:1.92
2.下载地址:http://rubyinstaller.org/downloads/  (这个地址需要FQ出去,或者去其他的地方下载)
3.安装:
双击安装包自动安装,安装过程中出来勾选项,全部勾选即可。
4.检查ruby安装情况:
命令行输入:

1
ruby -v 

出现如下信息证明安装成功:

1
ruby 1.9.2p180 (2011-02-18) [i386-mingw32] 

5.检查rubygem是否安装
命令行中输入:

1
gem -v 

6.更新rubygem
命令行中输入:

1
gem update --system 

7.命令行中再次输入:

gem -v 

返回:1.8.24 说明已更新至最新版本

二.DevKit
1.安装
双击下载的7z文件,指定解压路径,路径中不能有空格。如C:\DevKit,这个路径就是<DEVKIT_INSTALL_DIR>。
命令行中执行命令:

1
2
3
cd <DEVKIT_INSTALL_DIR
ruby dk.rb init 
ruby dk.rb install 

(PS:这里有可能会提示

1
Please update your PATH to include build tools or download the DevKit from 'http://rubyinstaller.org/downloads' and follow the instructions at 'http://github.com/oneclick/rubyinstaller/wiki/Development-Kit'

可以尝试下手动编辑下config.yml文件,将ruby的安装目录加到config.yml文件中

config.yml文件只有执行ruby dk.rb init命令后才会生成)

2.验证是否安装成功
命令行中输入如下命令:

1
gem install rdiscount --platform=ruby 

出现结果如下:

1
2
3
4
5
6
7
Fetching: rdiscount-1.6.8.gem (100%) 
Temporarily enhancing PATH to include DevKit... 
Building native extensions.  This could take a while... 
Successfully installed rdiscount-1.6.8 
1 gem installed 
Installing ri documentation for rdiscount-1.6.8... 
Installing RDoc documentation for rdiscount-1.6.8...

三.selenium-webdriver
1.安装
命令行中输入命令:

1
gem install selenium-webdriver 

2.验证是否安装成功
命令行中输入命令:

gem list selenium-webdriver 

出现如下提示:

1
2
3
4
*** LOCAL GEMS *** 
   
   
selenium-webdriver (2.21.0

四.rspec
1.安装
命令行中输入如下命令:

1
gem install rspec 

五.文本编辑器
下载地址:http://download.csdn.net/detail/janne09/4401925

来源:http://www.cnblogs.com/timsheng/archive/2012/09/13/2683343.html

ruby+selenium-webdriver一步一步完成自动化测试-----准备篇的更多相关文章

  1. 解决Ruby在IE11中报Unable to get browser (Selenium::WebDriver::Error::NoSuchWindowError)的错误

    转载地址:http://www.tuicool.com/articles/BRnqeu2 I was updating the browser WebDrivers for    Seleno    ...

  2. selenium webdriver (python) 第一版PDF

    前言 如果你是一位有python语言基础的同学,又想通过python+ selenium去实施自动化,那么你非常幸运的找到了这份文档,我也非常荣幸能为你的自动化学习之路带来一丝帮助. 其实,我在sel ...

  3. Selenium WebDriver + Grid2 + RSpec之旅(一)----准备篇

    Selenium WebDriver + Grid2 + RSpec之旅(一)             ----准备篇 前言 在Web 2.0 应用中,在浏览器种类盛行的时代,我们在测试过程中不仅要模 ...

  4. selenium webdriver (python)

    selenium webdriver (python) 第一版PDF Posted on 2013-08-30 22:59 虫师 阅读(221) 评论(0) 编辑 收藏 前言 如果你是一位有pytho ...

  5. selenium webdriver (python)的基本用法一

    阅在线 AIP 文档:http://selenium.googlecode.com/git/docs/api/py/index.html目录一.selenium+python 环境搭建........ ...

  6. Selenium的PO模式(Page Object Model)|(Selenium Webdriver For Python)

            研究Selenium + python 自动化测试有近两个月了,不能说非常熟练,起码对selenium自动化的执行有了深入的认识. 从最初无结构的代码,到类的使用,方法封装,从原始函数 ...

  7. Selenium WebDriver + Grid2 + RSpec之旅(五)---面向对象设计用例

    Selenium WebDriver + Grid2 + RSpec之旅(五) ----面向对象设计用例 前几节讲了怎么一步一步的从零开始到编写出一个简单的测试用例,这一节将要讲一下怎么让测试用例变得 ...

  8. selenium webdriver(3)---操作页面对象

    页面对象的相关操作可以通过接口文件org.openqa.selenium.WebElement查看,本文只是对象接口的使用方式,具体的实现方式在org.openqa.selenium.remote.R ...

  9. selenium webdriver 如何添加cookie

    一. webdriver中常用的cookie方法 webdriver中提供了操作cookie的相关方法: get_cookies()                  获得cookie信息 add_c ...

随机推荐

  1. 跨域资源共享(CORS)-漏洞整理

    绕过方法整理 绕过 - 仅对域名校验 #POC #"Access-Control-Allow-Origin: https://xx.co & Access-Control-Allow ...

  2. 记一次 Json 对象转换为 Java 对象的问题

    1.描述 最近在使用 Jackson 将 Json 串转换回 Java 对象的时候遇到了 ClassCastException 错误,特此记述. 2.问题复现 问题出现的节点在于属性节点的 JavaT ...

  3. 水题(三角形与扇形面积计算sin()应用)

    J - Sincerely Gym - 101350J Physics cat likes to draw shapes and figure out their area. He starts by ...

  4. 1571. [Usaco2009 Open]滑雪课Ski

    传送门 可以想到 $dp$,设 $f[i][j]$ 表示当前等级为 $i$,时间为 $j$ 的最大滑雪次数 显然上课不会上让自己等级降低的课,所以第一维 $i$ 满足无后效性 然后直接枚举 $i,j$ ...

  5. azkaban简单使用

    步骤 1.通过web服务器创建项目,项目名称和描述都是必须填的2.上传zip包 job定义 1.简单的job一个job就是一个properties文件,只不过文件是以.job结尾,文件里面定义了job ...

  6. JavaScript 内置对象 Array 数组

    Array 数组 1.创建数组 构造函数 new Array() 小括号内可以是数组元素个数,也可以是数组项 数组字面量表示法 var arr = [1,2,3,4,5]; 2.数组长度 arr.le ...

  7. elasticsearch 基础 —— Get API

    Get API get API允许根据其id从索引中获取指定类型的JSON文档.以下示例从名为twitter的索引获取JSON文档,该索引类型名为_doc,id值为0: GET twitter/_do ...

  8. python常用函数 G

    groupby(Sorted_list, key) 将已排序的序列按关键字分组. 例子: group/s(int) 提出正则表达式匹配分组截获的字符串,groups返回括号匹配的字符. 例子: get ...

  9. Sass字符运算

    在 Sass 中可以通过加法符号“+”来对字符串进行连接.例如: $content: "Hello" + "" + "Sass!"; .bo ...

  10. ltp-ddt realtime_cpu_load涉及的cyclictest 交叉编译

    Cyclictest 是 rt-tests 下的一个测试工具,也是rt-tests 下使用最广泛的测试工具,一般主要用来测试使用内核的延迟,从而判断内核的实时性.   1.下载源码 git clone ...