1

RSpec 在我的帮助页面上说一切都很好,但不应该如此。什么会导致误报。(我已经多次重启了我的测试套件)。

这是我的规格页面:

require 'spec_helper'

describe "Static pages" do

  subject { page }

  shared_examples_for "all static pages" do
    it { should have_selector 'h1',    text: heading }
    it { should have_selector 'title', text: full_title(page_title) }
  end

.
.
.

  describe "Help page" do
    before { visit help_path }

    let(:heading) { 'Help' }
    let(:page_title) { 'Help' }
  end

.
.
.

end

这是我的帮助页面:

<% provide(:title, '') %>
<h1></h1>
<p>
  Get help on the Ruby on Rails Tutorial at the
  <a href="http://railstutorial.org/help">Rails Tutorial help page</a>.
  To get help on this sample app, see the
  <a href="http://railstutorial.org/book">Rails Tutorial book</a>.
</p>

就是说测试通过了。怎么修?

4

1 回答 1

3

看起来你失踪了:

it_should_behave_like 'all static pages'

describe 'Help Page'块中。您已经为“所有静态页面”定义了共享示例,但没有告诉 rspec '帮助页面'应该表现得像一个。

另外,请查看this answer to a very similar question。它展示了如何重构规范以更清楚地表达意图。

于 2013-02-05T13:49:59.027 回答