是否有一种单元测试Rails项目的新方法?

时间:2014-04-28 19:30:12

标签: ruby-on-rails ruby unit-testing

我正在关注http://www.railstutorial.org/的教程,到目前为止,所有开发工作都进展顺利。然而,当我开始进行单元测试时,我遇到了一个问题。

例如,其中一项测试如下:

require 'spec_helper'

describe "Static pages" do
  describe "Home page" do
    it "should have the content 'Sample App'" do
      visit '/static_pages/home'
      expect(page).to have_content('Sample App')
    end
.
.
.
  end
end

为了让测试工作,我必须将其更改为require 'test_helper',但是当我尝试bundle exec rake test时,它会给我一些关于没有这种describe方法的错误。

我能够成功运行的一项测试如下:

require 'test_helper'

class StaticPagesTest < ActionDispatch::IntegrationTest
  def test_connection    
    get "/about"
    assert_response :success, "missing about page"
    assert_select 'title', "About Us"
  end
end

我只是想知道解析单元测试的方式是否有一些变化,因为它似乎是完全不同的语法。有什么我需要做的不同,以获得&#34;描述&#34;工作方法,还是只有一种新方法来完成同样的任务?

1 个答案:

答案 0 :(得分:1)

第一个代码块使用rspec框架,而第二个代码块使用Test::Unit框架。

两者都是合法的单元测试框架,每个框架都有自己的优势,每个框架都有自己的语法......

现在已经存在了很长一段时间,所以,回答你的问题 - 不,没有任何改变......