本文主要演示如何在Ubuntu上搭建Watir-Webdriver与Cucumber环境,用于自动化测试。

1. Ubuntu环境

A. 安装

因为我的工作机是Windows,所以采用虚拟机的方式使用Ubuntu。

1. 首先安装虚拟机软件,可以使用VMware workstation、VirtualBox等虚拟机软件。

2. 在虚拟机中安装Ubuntu,我使用了Ubuntu 13.10 32位.

注意:Ubuntu 32位与64位对于我们的环境搭建没有区别,因为我的虚拟机内存为1G,所以使用了Ubuntu 32位;如果你的虚拟机内存大于2G,可以使用Ubuntu 64位,此时需要注意在电脑的BIOS中开启硬件虚拟化选项。

B. 配置

安装完成后,需要设置系统的Terminal选型。

打开一个GNOME Terminal,然后去到 编辑 --》 配置文件首选项 --》 标题和命令,勾选“已登录Shell方式运行命令"。具体可以参见: https://rvm.io/integration/gnome-terminal

2. Chrome安装

A. 安装Chrome

Ubuntu上的Chrome需要从Chrome官网下载安装文件,然后双击运行安装即可。

B. 安装Chrome Webdriver

为了Webdriver正常使用Chrome,需要安装Chrome Webdriver。

可以从http://chromedriver.storage.googleapis.com/index.html下载对应版本的chrome driver。

下载完成后,解压文件,并将文件移动到指定位置,并赋予读取执行权限。

例如我的chromedriver放在Downloads目录下,将chromedriver文件放到/usr/bin目录, 并赋予读和执行的权限。

sudo cp Downloads/chromedriver /usr/bin
sudo chmod +x /usr/bin/chromedriver

3. Ruby安装

A. RVM安装

在Linux上推荐使用rvm进行ruby的版本管理和安装。

(1)在Linux Shell下执行以下命令安装rvm

\curl -L https://get.rvm.io | bash -s stable --auto-dotfiles

(2)验证安装

如果安装和配置成功,每次打开一个新的Shell会话,rvm都会被加载。可以打开一个新的Terminal,执行以下命令进行测试。

type rvm | head -n 1

该命令的输出应该是

rvm is a function

如果你的系统是中文,上述命令的输出也是中文的.

(3) 检查依赖项

打开一个Terminal,执行命令检查依赖项.

rvm requirements

(4) 修改bash_profile文件

在安装rvm的时候,安装完成后会有以下提示:

Upgrade Notes:

  * WARNING: You're using ~/.profile, make sure you load it,
add the following line to ~/.bash_profile if it exists
otherwise add it to ~/.bash_login: source ~/.profile * No new notes to display.

所以需要打开 ~/.bash_profile文件,在文件的最后添加如下行:

if [ -f "$HOME/.profile" ] ; then
source "$HOME/.profile"
fi

B. Ruby安装

打开Terminal,执行以下命令安装ruby。

rvm install 1.9.3
rvm gemset create autotest
rvm use 1.9.3@autotest --default

解释:

(1)watir-webdriver网站描述最合适的ruby版本是1.9.3,所以我们安装的是1.9.3.

(2)创建一个单独的gemset是为了保证环境的互不干扰,可以将自动化测试所需要的gem都安装到autotest这个gemset里面。

(3)设置默认的ruby使用环境。

4. Watir-Webdriver安装

watir-webdriver来负责跟浏览器进行交互。

打开一个Terminal,执行以下命令安装:

gem install watir-webdriver --no-ri --no-rdoc

以下是我的屏幕输出,仅供参考:

andy@ubuntu:~$ gem install watir-webdriver --no-ri --no-rdoc
Fetching: rubyzip-0.9.9.gem (100%)
Fetching: ffi-1.8.1.gem (100%)
Building native extensions. This could take a while...
Fetching: childprocess-0.3.9.gem (100%)
Fetching: websocket-1.0.7.gem (100%)
Fetching: selenium-webdriver-2.33.0.gem (100%)
Fetching: watir-webdriver-0.6.4.gem (100%)
Successfully installed rubyzip-0.9.9
Successfully installed ffi-1.8.1
Successfully installed childprocess-0.3.9
Successfully installed websocket-1.0.7
Successfully installed selenium-webdriver-2.33.0
Successfully installed watir-webdriver-0.6.4
6 gems installed

5. Cucumber安装

Cucumber是行为驱动开发的一种工具,可以很好的与多种语言集成.自动化测试使用cucumber中的feature文件描述软件行为, 使用watir-webdriver执行浏览器操作.

这里同样使用gem安装, 打开一个Terminal,执行以下命令安装:

gem install cucumber --no-ri --no-rdoc

以下是我的屏幕输出,仅供参考:

andy@ubuntu:~$ gem install cucumber --no-ri --no-rdoc
Fetching: builder-3.2.2.gem (100%)
Fetching: diff-lcs-1.2.4.gem (100%)
Fetching: multi_json-1.7.6.gem (100%)
Fetching: gherkin-2.12.0.gem (100%)
Building native extensions. This could take a while...
Fetching: cucumber-1.3.2.gem (100%)
Successfully installed builder-3.2.2
Successfully installed diff-lcs-1.2.4
Successfully installed multi_json-1.7.6
Successfully installed gherkin-2.12.0
Successfully installed cucumber-1.3.2

Ubuntu上搭建Watir-Webdriver与Cucumber环境的更多相关文章

  1. 在Ubuntu上搭建kindle gtk开发环境

    某个角度上说,kindle很类似android,同样的Linux内核,同样的Java用户层.不过kindle更注重简单.节能.稳定.Amazon一向认为,功能过多会分散人们阅读时候的注意力. Kind ...

  2. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)

    首先要了解一下Hadoop的运行模式: 单机模式(standalone)        单机模式是Hadoop的默认模式.当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,便保守地选 ...

  3. 在ubuntu上搭建交叉编译环境---arm-none-eabi-gcc

    最近要开始搞新项目,基于arm的高通方案的项目. 那么,如何在ubuntu上搭建这个编译环境呢? 1.找到相关的安装包:http://download.csdn.net/download/storea ...

  4. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) (转载)

    Hadoop在处理海量数据分析方面具有独天优势.今天花了在自己的Linux上搭建了伪分布模式,期间经历很多曲折,现在将经验总结如下. 首先,了解Hadoop的三种安装模式: 1. 单机模式. 单机模式 ...

  5. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)【转】

    [转自:]http://blog.csdn.net/hitwengqi/article/details/8008203 最近一直在自学Hadoop,今天花点时间搭建一个开发环境,并整理成文. 首先要了 ...

  6. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

  7. Ubuntu上搭建Git服务器

    下面我们就看看,如何在Ubuntu上搭建Git服务器.我们使用VMware虚拟机安装两台Ubantu系统,分别命名为gitServer和gitClient_01. 1.安装OpenSSH并配置SSH无 ...

  8. Ubuntu下搭建Hyperledger Fabric v1.0环境

      多次尝试才正常启动了Fabric,如遇到各种莫名错误,请参考如下一步步严格安装,特别用户权限需要注意. 一.安装Ubuntu16 虚拟机或双系统,虚拟机有VirtualBox或者VMware,Ub ...

  9. 《从0到1学习Flink》—— Mac 上搭建 Flink 1.6.0 环境并构建运行简单程序入门

    准备工作 1.安装查看 Java 的版本号,推荐使用 Java 8. 安装 Flink 2.在 Mac OS X 上安装 Flink 是非常方便的.推荐通过 homebrew 来安装. brew in ...

随机推荐

  1. Xcode6中autolayout和sizeclass的使用

    一.关于自动布局(Autolayout) 在Xcode中,自动布局看似是一个很复杂的系统,在真正使用它之前,我也是这么认为的,不过事实并非如此. 我们知道,一款iOS应用,其主要UI组件是由一个个相对 ...

  2. C# 5.0 TAP 模式下的HTTP Get和Post

    标题有点瘆人,换了工作之后很少写代码了,之前由于签了保密协议,不敢把代码拿出来分享给大家,只能摘抄网上的, 今斗胆拿出来晒晒,跪求指点,直接上代码吧 public class HTTPHelper : ...

  3. 3.9 spring-自定义标签解析

    到这里,我们已经完成了分析默认标签的解析与提取过程,或许设计的内容太多,我们忘了我们是冲哪个函数开始了的, 让我们再次回顾一下默认标签解析方法的起始方法. 入口如下: /** * Parse the ...

  4. MSMQ(消息队列)续

    在上一篇我简单介绍了MSMQ的相关概念,本篇将以代码说明 Message Message是MSMQ的数据存储单元,我们的用户数据一般也被填充在Message的body当中,因此很重要,让我们来看一看其 ...

  5. jquery下拉列表选中项改变时获取新选项的属性值

    $("#textSel").change(funtion(){ var selVal=$(this).val(); var selText=$("#textSel opt ...

  6. hdu 4648

    求一个数列中  去掉一些连续的数之后 不改变对m取余后的值 就是求一个最长的连续子序列 对m取余后为0 我的方法可能比较水 #include<iostream> #include<c ...

  7. 【leetcode】Combination Sum II (middle) ☆

    Given a collection of candidate numbers (C) and a target number (T), find all unique combinations in ...

  8. 命令格式 kill -3 pid

    命令格式 kill -3 pid 作用 打印进程号为pid的进程中,每个线程的执行日志 到 nohup文件 中,如果nohup的输出做了重定向,那么输出到重定向以后的文件中. 命令格式 top -Hp ...

  9. 轻量级Java_EE企业应用实战-第5章Hibernate的基本用法-001

    1. package org.crazyit.app.domain; import javax.persistence.*; /** * Description: <br/> * ��վ: ...

  10. Android:自定义适配器

    无论是ArrayAdapter还是SimpleAdapter都继承了BaseAdapter,自定义适配器同样继承BaseAdapter 实例:Gallery实现图片浏览器 <?xml versi ...