0

私はこれをクラックするための多くの提案を実装しようと高低を検索してきましたが、どれも機能していないようです. これが他の場所で回答されている場合は申し訳ありませんが、私はそれを見つけることができませんでした!

基本的に、現在のビューが特定の基準によってフィルター処理されていることをテストするステップ定義を書くのに行き詰まっています。関連する手順は次のとおりです。

  When I check the following ratings: PG, R
  And I uncheck the following ratings: G, PG-13, NC-17
  And I press "Refresh"
  Then I should see movies with the ratings: PG, R

後者の 2 つのステップ定義は次のとおりです。

And /I press "Refresh"/ do
    click_button("Refresh")
end

Then /I should see movies with the ratings: (.*)/ do |ratings|
    page.should have_content ratings
end

最初のものは機能しません (あいまいだと言います)。2 番目のものは、ページ上にテキスト PG、R が見つからないことを示しています。キュウリは私にとってまったく異質で、とても迷っています。アドバイスをいただければ幸いです。

編集: 要求されたとおり、これはカピバラが操作している Haml です:

-#  This file is app/views/movies/index.html.haml
%h1 All Movies

= form_tag movies_path, :method => :get, :id => 'ratings_form' do
  = hidden_field_tag "title_sort", true if @title_header
  = hidden_field_tag ":release_date_sort", true if @date_header
  Include: 
  - @all_ratings.each do |rating|
    = rating
    = check_box_tag "ratings[#{rating}]", 1, @selected_ratings.include?(rating), :id => "ratings_#{rating}"
  = submit_tag 'Refresh', :id => 'ratings_submit'

%table#movies
  %thead
    %tr
      %th{:class => @title_header}= link_to 'Movie Title', movies_path(:sort => 'title', :ratings => @selected_ratings), :id => 'title_header'
      %th Rating
      %th{:class => @date_header}= link_to 'Release Date', movies_path(:sort => 'release_date', :ratings => @selected_ratings), :id => 'release_date_header'
      %th More Info
  %tbody
    - @movies.each do |movie|
      %tr
        %td= movie.title 
        %td= movie.rating
        %td= movie.release_date
        %td= link_to "More about #{movie.title}", movie_path(movie)

= link_to 'Add new movie', new_movie_path
4

2 に答える 2

0

このステップは で既に定義されている可能性がありますstep_definitions/browsing_steps.rb

の定義を削除しますAnd /I press "Refresh"/

于 2013-11-15T14:20:55.073 に答える
0

あいまいとは、2 つの同じ一致があることを意味するため、どちらを使用すればよいかわかりません。web-steps.rb には、すでに

When /^(?:|I )press "([^"]*)"$/ do |button|
  click_button(button)
end

したがって、独自に指定する必要はありません。

于 2013-11-09T08:51:31.717 に答える