rspec是一款行为驱动开发(BDD)的工具,不过在这里用于测试,准确来说应该是测试驱动开发(TDD)吧。事实上我也没搞清楚。作为初学者不清楚就不清楚吧,以后会知道的。写博客无非就是写写学习笔记,不纠结了。

一、安装rspec

  在安装好gem的基础上直接使用以下命令就可以安装了

gem install rspec

  安装好之后可以检查一下安装是否成功,出现版本号则安装成功

rspec -v

二、使用rspec的知识准备

describe:定义用例组(test cases)

it:定义用例(example)

expect:断言

一个用例组可以包含多个测试用例

三、一个简单的例子

  在本地建立一个文件夹,创建一个rb文件,example_spec.rb,这里要注意的是命名一定要以_spec结尾,才能被解析。

#encoding: gbk

require 'selenium-webdriver'

describe "验证登录是否成功" do
it "should have 右上角用户名 on the page" do
dr = Selenium::WebDriver.for:firefox
url = "http://www.baidu.com"
dr.get url
dr.find_element(:xpath =>%Q{//*[@id='u1']/a[6]}).click
dr.find_element(:id,'TANGRAM__PSP_8__userName').send_keys('XXXXXXXXX@qq.com')
dr.find_element(:id,'TANGRAM__PSP_8__password').send_keys('XXXXXXXX')
dr.find_element(:id,'TANGRAM__PSP_8__submit').click
sleep 3
expect(dr.find_element(:class,'user-name')).to be_displayed
end #it
end #describe

  上述例子是一个用例组中包含一个验证登录百度是否成功的测试用例,很简单,简单说明了describe、it和expect的使用。执行测试用例需要在命令窗口,去到该rb文件所在目录下,输入

rspec -f doc test_spec.rb即可执行,如下图,没有failures说明用例通过了。事实上也不知道这个例子恰不恰当,先记下来再说。

最新文章

  1. ime-mode:disabled 关闭文本框输入法
  2. Eclipse较为常用快捷键
  3. 素数筛 uva 543
  4. 利用PHP读取文件
  5. UITableView 系列之自定义 UITableViewCell
  6. CSS3通配符
  7. [安卓学习]AndroidManifest.xml文件内容详解
  8. swift项目-模仿团购(主界面的搭建,以及首页的一些细节)
  9. iBatis入手案例
  10. Function语义学之member function
  11. cssline-height行高 全解
  12. 新手学js的效果图1---( 淘宝等商城货物查看特效)
  13. @FeignClient
  14. 点击页面上的元素,页面删除removeChild()
  15. Hailstone冰雹序列问题
  16. Pycharm基本设置和插件安装
  17. CSDN社区之星专訪:我的蜕变之路
  18. SQL RAISERROR 用法
  19. [LeetCode] 112. Path Sum_Easy tag: DFS
  20. 详述MySQL服务在渗透测试中的利用

热门文章

  1. 数据量大了一定要分表,分库分表组件Sharding-JDBC入门与项目实战
  2. CF习题集一
  3. 树形DP 学习笔记(树形DP、树的直径、树的重心)
  4. eureka注册中心的使用
  5. 如何打印完整的MYSQL带参数SQL日志信息
  6. Python自动化办公知识点整理汇总
  7. QT下UDP套接字通信——QUdpSocket 简单使用
  8. 比原链(Bytom)正式开源Bytom-JavaScript库
  9. 云原生数据库mysql对共享存储分布式文件系统的接口需求分析
  10. Qt信号与槽使用方法最完整总结