用rspec执行自动化测试用例

  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说明用例通过了。事实上也不知道这个例子恰不恰当,先记下来再说。

 

posted @ 2015-02-09 14:53  A BUG Hunter  阅读(425)  评论(0编辑  收藏  举报