0

我正在使用一个表格来表示一个列表,并且我想使用 RSpec 来测试日期是否出现:

 describe "Checking the rota" do

    let(:service){ FactoryGirl.create(:service)}
    before{ visit root_path } #this is where the rota is displayed
    it{ should have_selector('td', date: service.date) }

  end

据我所知,应用程序本身运行良好,因为当我自己访问页面时轮播显示完美。我很好奇为什么测试失败了。我正在使用的工厂脚本是:

factory :service do
    date Date.today
    leader "Bob"
    singers "Mr T"
    soundAM "Thor"
    soundPM "Wobbles"
  end     

最后是我用来渲染 rota 的存根:

<% if(service.date < Date.today) %>
  <% service.destroy %>
<% end %>
<tr>
    <td><%=link_to service.date, edit_service_path(service.id) %></td>
    <td><%= service.leader %></td>

    ...</tr>

感谢您提前提供任何帮助。

4

1 回答 1

0

我认为正确的路线是:

it{ should have_selector('td', text: service.date) }

取决于您使用的是 Capybara 还是 Webrat

于 2012-07-10T08:00:50.090 回答