我在一个Rails3.2应用程序中有一些需要由用户的USER_AGENT驱动的功能。基本上,对于某些较旧的浏览器,我需要以不同的方式呈现页面。
如何使用水豚/黄瓜测试我的视图是否正确响应?
我看过这篇文章,但它看起来并不适用于最新的水豚--它基本上破解了水豚存根环境参数的方式:
我想要的是一个黄瓜步骤的定义,如下所示:
When /^I visit the page with an unsupported browser$/ do
user_agent = "Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.0.2) Gecko/200
作为我网站集成测试的一部分,我正在使用黄瓜和水豚。似乎水豚不能模仿cookie的使用。
例如,我在用户登录时设置了cookie:
def sign_in(user)
cookies.permanent.signed[:remember_token] = [user.id, user.salt]
current_user = user
end
但是,当我稍后使用cookies.inspect获取cookies的值时,它返回{}这是水豚的已知限制吗?如果是这种情况,我如何在多个请求上测试一个登录用户?
我应该添加我的测试:
Scenario: User is
我有一个使用黄瓜,水豚和硒驱动器的测试。这个测试应该进入一个表单并提交它。正常的文本是
Scenario: Fill form
Given I am on the Form page
When I fill in "field1" with "value1"
And I fill in "field2" with "value2"
And I press "OK"
Then I should see "Form submited"
问题是,--我在表单中没
谁能告诉我rspec,水豚和黄瓜之间的区别?
group :development, :test do
gem 'rspec-rails', '~> 2.0'
end
group :test do
gem 'capybara', '~>2.1.0'
end
在JavaScript中,我将Jasmine视为我的单元测试框架。这三个gem在Ruby环境中做什么?
我有Ruby on Rails后端和一个挂载ReactJS前端的视图。使用devise + jwt进行身份验证。我使用黄瓜水豚来测试前端。如何在测试中登录?如何在测试步骤中将jwt放在头中?
功能
...
Background:
Given I am loged in user
...
步骤
Given(/^I am loged in user$/) do
how can I put jwt in headers here?
end
我试图在Cucumber步骤中获得cookie值:
步骤定义
When /^I log in$/ do
# code to log in
end
Then /^cookies should be set$/ do
cookies[:author].should_not be_nil
end
控制器
class SessionsController < ApplicationController
def create
cookies[:author] = 'me'
redirect_to authors_path
end
end
但这不管用
我已经集成了最新版本的selenium-webdriver与水豚和黄瓜。如果我尝试使用firefox作为selenium驱动程序来运行rake任务,则得到错误'Childprocess:LaunchError‘,如果将chromedriver设置为默认selenium驱动程序,则会抛出错误'unable to connect to chromedriver’。
按照建议,我已经设置了所有chromedriver路径。还使用了gem的"chromedriver-helper“。但都不管用。
我正在测试一个网站,在右边有一个垂直的登录表单,在底部有一个水平的表单。两者都有相同的名称“电子邮件”和“密码”字段。所以我雇用了capybara的within来搜索我感兴趣的领域。web表单中有趣的部分如下所示:
我有两个独立的项目,其中我正在试验沙司实验室的自动化。第一个项目是纯水原的例子,修改后可以测试上面显示的页面。第二个项目是黄瓜实现完全相同的测试。这些都是非常简单的,一次硬编码的测试,只是为了证明这两种技术的概念。
这里是海原的有趣部分,仅举一个例子:
within(:css, ".right-container.login-form") do
f
我对黄瓜很陌生。这是我的场景
Scenario: Create new custom subscription
Given I logged in as an Account Admin
And I visit Manage subscription page
When I click create new subscription1
When I click create new subscription2
When I click create new subscription3
When I click create new subscription4
When I click crea