簡體   English   中英

為什么我需要使用minitest / autorun?

[英]Why do i need to use minitest/autorun?

為什么我需要minitest/autorun而不是test/unit來生成單元測試

require 'test/unit'

class Brokened
  def uh_oh
    "I needs fixing"
  end
end

class BrokenedTest < Minitest::Test
  def test_uh_of
    actual = Brokened.new
    assert_equal("I'm all better now", actual.uh_oh)
  end
end

運行上面的代碼,解釋器引發警告

你應該要求'minitest / autorun'

您的代碼示例將以NameError結尾: uninitialized constant Minitest

你有兩種可能性:

  • test/unitTest::Unit::TestCase或。結合使用
  • 使用require 'minitest/autorun'Minitest::Test結合使用。

不推薦使用test/unit ,建議使用minitest(MiniTest更快更小)。

如果你切換測試寶石,你必須改變一些東西:

  • require "minitest/autorun"替換require "test/unit" require "minitest/autorun"
  • Minitest::Test替換Test::Unit::TestCase with
  • 沒有assert_nothing_raised詳情
  • assert_raise成為assert_raises
  • 或許其他一些問題

您可以使用require 'minitest'而不是require 'minitest/autorun' - 您將不會遇到語法錯誤,但也沒有測試執行。 如果要執行測試,則必須自己調用它們(請參閱minitest-a-test-suite-with-method-level-granularity

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM