加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Cucumber:从表中选择一个元素进行删除或添加

发布时间:2020-12-17 02:59:18 所属栏目:百科 来源:网络整理
导读:我在使用 ruby on rails开发的应用程序中有下表: 我想在黄瓜中创建一个测试,我从表中选择一个用户并将其删除或编辑. 我不知道这个步骤的定义是什么. 我希望能够做到这样的事情: Feature: User Manegement In order to manage users As an admin I want to
我在使用 ruby on rails开发的应用程序中有下表:

我想在黄瓜中创建一个测试,我从表中选择一个用户并将其删除或编辑.

我不知道这个步骤的定义是什么.

我希望能够做到这样的事情:

Feature: User Manegement
         In order to manage users
         As an admin 
         I want to see a users list and change user properties

Background:
Given the following activated users exists
  | name         | email                    | 
  | Alice Hunter | alice.hunter@example.com |
  | Bob Hunter   | bob.hunter@example.com   |
And the following user records
  | name     | email                    | 
  | Jonh Doe | jonh.doe@example.com     |

    Scenario: I delete a user from the table
      Given I am logged in as admin
      When I follow "Administration"
      And I follow "User Management"
      And I delete "Alice Hunter"
      Then I should not see "Alice Hunter"`

有人可以帮忙吗?
谢谢.

@brad

错误返回:

wrong number of arguments (2 for 1) (ArgumentError)
  ./features/step_definitions/table_steps.rb:26:in `within'
  ./features/step_definitions/table_steps.rb:26:in `/^I delete "(.*)"$/'

解决方法

经过一番广泛的搜索和轻微的重构,我设法解决了这个问题.

我使用了以下步骤:

When /^as admin I (press|follow|check|uncheck|choose) "([^"]*)" for (.*) whose (.*) is "([^"]*)"$/ do |action,whatyouclick,class_name,var_name,value|
  unless var_name == "id" then
    id = eval(""#{class_name}".classify.constantize.find_by_#{var_name}("#{value}").id.to_s")
  else
    id = value
  end
  within("tr[id=as_admin__#{class_name}-list-#{id}-row]") do
    case action
      when "press"
        click_button(whatyouclick)
      when "follow"
        click_link(whatyouclick)
      when "check"
        check(whatyouclick)
      when "uncheck"
        uncheck(whatyouclick)
      when "choose"
        uncheck(whatyouclick)
    end
  end
end

我也对webrat的RDoc感兴趣,但我发现的一切似乎都不合时宜.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读