我想在我的黄瓜功能中创建一个后台步骤,所以我只注册一个新用户,并将用户登录,然后我就可以为登录的用户运行我的场景。
我想在许多其他功能和场景中重复使用它。
任何提示?
我该怎么说呢?
Given I am a user who registers
And then logs in
喜欢那个?
答案 0 :(得分:2)
我通常把它写成......
Given I am logged in as a "<RoleTitle>"
RoleTitle
当然可以是别的。
这一步看起来像
Given /^I am logged in as a "([^"]*)"$/ do |role|
# either run actual steps to register
# OR
# use pickle/factories to setup user accounts, if
# bypassing the registration forms are possible
# Once created I will (try to) create a pickle reference
find_model! %{user: "#{role}"}, {:id => User.last.id} # change approach if you need multiple users
# then log the user in
end
答案 1 :(得分:0)
实际注册对您的测试很重要吗?或者只是用户的存在?
在我们的测试中,我们有:
When I am logged in as an administrator #or whatever type of user you want
如果尚未存在,则此步骤将创建一个管理员。
答案 2 :(得分:0)
如果您不关心用户的电子邮件地址或其他属性,请使用以下内容:
Given I am signed in
如果您需要设置一些数据,请使用Factory Girl并使用以下内容:
Given the following user exists:
| email | name |
| mark@example.com | Mark Twain |
And I sign in as "mark@example.com"
有关Factory Girl步骤定义的信息:
http://robots.thoughtbot.com/post/284805810/gimme-three-steps
编写认证步骤定义的想法: