ruby+seleniumwebdriver一步一步完成自动化测试(2)—–一个测试用例

上一篇的小例子可以正常执行通过,但是这并不代表就可以按照这个思路写测试代码了。自动化测试与手工测试是一样的,要有测试用例,有执行有结果,但是上一篇的例子里并没有。

众所周知,java开发用JUnit进行单元测试、C#开发用NUit进行单元测试,selenium-webdriver也需要一个这样的测试框架来执行测试用例,这个框架可以用test::Unit,也可以用文中所用的rspec

目标:利用测试框架rspec创建一个测试用例,运行上一节的代码

1.安装rspec

命令行中执行命令:gem install rspec

2.D盘下新建目录test002

3.test002中新建文件夹spec

4.打开编辑器SciTE新建一个文件

5.文件中编写如下代码

#encoding: gbk

require 'selenium-webdriver'

describe "soso mainpage login" do

it "should return username and password is wrong" do
    dr=Selenium::WebDriver.for :chrome
    url='http://www.soso.com'
    dr.get url  

    link=dr.find_element(:link_text=>'登录')
    link.click
    

    dr.switch_to.frame('login_frame')
    sleep 2
    dr.find_element(:id=>'u').send_keys("test")
    dr.find_element(:id=>'p').send_keys("test")
		dr.find_element(:id=>'verifycode').send_keys("aaaaaa")
    dr.find_element(:id=>'login_button').click  

    dr.find_element(:id=>'err_m').text.should eql ("您输入的帐号或密码不正确,请重新输入。意见反馈")
end #it  

end #describe

  

5.保存文件至工作文件夹下,文件名为:soso_login_spec.rb

6.命令行执行命令:

cd 工作目录

rspec -f doc

soso mainpage login
  should return username and password is wrong

Finished in 11.06 seconds
1 example, 0 failures

  证明测试用例运行成功

原文地址:https://www.cnblogs.com/timsheng/p/2682216.html