最近项目上想使用可视化测试的黑盒测试,为此我去再学习了ruby界中的出名的cucumber测试框架,以前只是大约摸了一下,并没有深究,这次要求是测试中要可视化每个特征功能(Feature)按我所设定的情景(Scenario)跑一次,而现在我主要实现了web自动化测试,(GUI的还在研究这个框架的可行性),
成都创新互联公司是一家专注于成都做网站、网站制作与策划设计,唐山网站建设哪家好?成都创新互联公司做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:唐山等地区。唐山做网站价格咨询:18980820575
首先介绍下我使用的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
项目环境配置
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 #设置javascript服务 Capybara.register_driver :rack_test do |app| Capybara::Selenium::Driver.new(app,:browser => :chrome)#设置阅览器默认使用firefox end ActionController::Base.allow_rescue = false
下面是一些语法介绍主要是capybara页面操作
首先介绍一个技巧在ruby中可以这样打印类所有的方法
puts capybara.methods
像上面就会打印所有capybara的方法
下面就是capybara的一些语法
page.current_url #获取当前的url
还有关于windows下关于找不到firefox阅览器设置方法
Selenium::WebDriver::Firefox::Binary.path='C:\Program Files (x86)\Mozilla Firefox\firefox.exe'
这是当selenium找不到阅览器时候使用的
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款