溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

學習札記——BDD測試框架之cucumber 與capybara工具使用總結(jié)

發(fā)布時間:2020-05-26 00:04:28 來源:網(wǎng)絡(luò) 閱讀:1745 作者:JackSongBlack 欄目:編程語言

最近項目上想使用可視化測試的黑盒測試,為此我去再學習了ruby界中的出名的cucumber測試框架,以前只是大約摸了一下,并沒有深究,這次要求是測試中要可視化每個特征功能(Feature)按我所設(shè)定的情景(Scenario)跑一次,而現(xiàn)在我主要實現(xiàn)了web自動化測試,(GUI的還在研究這個框架的可行性),

首先介紹下我使用的GEM如下所示

group :development, :test do
  gem "selenium-webdriver"
  gem "database_cleaner"
  gem "rspec-rails"
  gem "rspec", '~>2.11.0'
  gem "cucumber-rails"
  gem "webrat"
  gem "rspec-mocks"
  gem "spork", '~> 1.0rc'
  gem "factory_girl", '~>2.6.4'
  gem "factory_girl_rails", '~>1.7.0'
  gem "capybara" ,"2.1.0"
  gem "poltergeist","1.3.0"
end

項目環(huán)境配置

genertor cucumber install --capybara --spork

在生成的env.rb中這樣配置

require 'rubygems'
require 'cucumber/rails'
require 'capybara/rails'
require 'capybara/cucumber'
require 'capybara/dsl'
require 'capybara/session'
require 'cucumber/rspec/doubles'
require 'database_cleaner/cucumber'
require 'selenium-webdriver'
require 'database_cleaner'
require 'database_cleaner/cucumber'
begin
  DatabaseCleaner.strategy = nil
      #:transaction
rescue NameError
  raise "You need to add database_cleaner to your Gemfile (in the :test group) if you wish to use it."
end
Capybara.javascript_driver = :selenium #設(shè)置javascript服務
Capybara.register_driver :rack_test do |app|
  Capybara::Selenium::Driver.new(app,:browser => :chrome)#設(shè)置閱覽器默認使用firefox
end
ActionController::Base.allow_rescue = false

下面是一些語法介紹主要是capybara頁面操作

首先介紹一個技巧在ruby中可以這樣打印類所有的方法

puts capybara.methods

像上面就會打印所有capybara的方法

下面就是capybara的一些語法

page.current_url #獲取當前的url

還有關(guān)于windows下關(guān)于找不到firefox閱覽器設(shè)置方法

Selenium::WebDriver::Firefox::Binary.path='C:\Program Files (x86)\Mozilla Firefox\firefox.exe'

這是當selenium找不到閱覽器時候使用的

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI