您的位置:軟件測(cè)試 > 開(kāi)源軟件測(cè)試 > 開(kāi)源功能測(cè)試工具 > Selenium
ruby+selenium-webdriver自動(dòng)化測(cè)試系列
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/4/11 14:06:04 ] 推薦標(biāo)簽:

多個(gè)測(cè)試用例

1.D盤新建文件夾test005,文件結(jié)構(gòu)與“邏輯與數(shù)據(jù)分離中一致”

2.login_dialog.rb文件內(nèi)容與上一篇“面向?qū)ο缶幊?rdquo;中l(wèi)ogin_dialog.rb內(nèi)容一致

3.login_main_page.rb文件內(nèi)容與上一篇“面向?qū)ο缶幊?rdquo;中l(wèi)ogin_main_page.rb內(nèi)容一致

4.login_data.yml文件中編寫如下內(nèi)容:
 
data:
  mainPage:
    url: http://www.soso.com
    title: 搜搜更懂你
 
  login:
    wrong:
      username: test
      password: test
      message: 您輸入的帳號(hào)或密碼不正確,請(qǐng)重新輸入。意見(jiàn)反饋
 
    allNotExist:
      username:
      password:
      message: 您還沒(méi)有輸入帳號(hào)!意見(jiàn)反饋
 
    usernameNotExist:
      username:
      password: test
      message: 您還沒(méi)有輸入帳號(hào)!意見(jiàn)反饋
 
    passwordNotExist:
      username: test
      password:
      message: 您還沒(méi)有輸入密碼!意見(jiàn)反饋

  5.login_spec.rb文件中編寫如下內(nèi)容:
 
#encoding: utf-8
require "rspec"
require 'yaml'
require 'selenium-webdriver'
 
require File.dirname(__FILE__)+'/../tool/login_dialog'
require File.dirname(__FILE__)+'/../action/login_main_page'
 
describe "soso login" do
  include LoginDialog
  #before(:all) do
  #  @problem=YAML.load(File.open(File.dirname(__FILE__)+'/http://www.cnblogs.com/sosoLogin/config/login_data.yml'))
  #  @dr=Selenium::WebDriver.for :firefox
  #  @url=@problem["data"]["mainPage"]["url"]
  #  @dr.get @url
  #end
  before(:each) do
    @problem=YAML.load(File.open(File.dirname(__FILE__)+'/../config/login_data.yml'))
    @dr=Selenium::WebDriver.for :firefox
    @url=@problem["data"]["mainPage"]["url"]
    @dr.get @url
    @login_element=LoginMainPage.new(@dr)
  end
  after(:each) do
     close_browser
  end
  it "should should open soso url" do
    @dr.title.should eql (@problem["data"]["mainPage"]["title"])
  end
 
  it "should return username and password is wrong" do
    @login_element.login(@problem["data"]["login"]["wrong"]["username"],@problem["data"]["login"]["wrong"]["password"])
    err_message.should eql (@problem["data"]["login"]["wrong"]["message"])
  end
 
  it "should return username and password are not exist" do
    @login_element.login(@problem["data"]["login"]["allNotExist"]["username"],@problem["data"]["login"]["allNotExist"]["password"])
    err_message.should eql (@problem["data"]["login"]["allNotExist"]["message"])
  end
 
  it "should return username is not exist" do
    @login_element.login(@problem["data"]["login"]["usernameNotExist"]["username"],@problem["data"]["login"]["usernameNotExist"]["password"])
    err_message.should eql (@problem["data"]["login"]["usernameNotExist"]["message"])
  end
 
  it "should return password is not exist" do
    @login_element.login(@problem["data"]["login"]["passwordNotExist"]["username"],@problem["data"]["login"]["passwordNotExist"]["password"])
    err_message.should eql (@problem["data"]["login"]["passwordNotExist"]["message"])
  end
end

6.命令行運(yùn)行命令:

cd d: est005

rspec -f doc

得到如下結(jié)果:
?
soso login
  should should open soso url
  should return username and password is wrong
  should return username and password are not exist
  should return username is not exist
  should return password is not exist
 
Finished in 49.11 seconds
5 examples, 0 failures

  運(yùn)行通過(guò)

上一頁(yè)1234567下一頁(yè)
軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠(chéng)聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd