2012-09-07 17 views

risposta

9

assert_equal è definito nelle sottoclassi di Test::Unit::TestCase, quindi sono disponibili solo in tale classe. Potresti avere qualche successo con include Test::Unit::TestCase per caricare quei metodi sull'ambito corrente.

Più probabilmente si potrebbe essere meglio scrivere i test in un breve file e li esecuzione con ruby ./my_file.rb

5

Ecco come vengono utilizzate affermazioni:

class Gum 
    def crisis; -42 end 
end 

# and as for testing: 

require 'test/unit' 

class GumTest < Test::Unit::TestCase 
    def test_crisis 
    g = Gum.new 
    assert_equal -42, g.crisis 
    end 
end 
+0

Grazie, questo sembra utile! – TDHM

6

È possibile utilizzare incorporato rubino test errore

raise "Message you want to throw when error happens" if/unless "Condition when you want to throw the error " 

O

Se si ricevono messaggi di errore quando si tenta di utilizzare affermazioni, come "NoMethodError: metodo non definito` assert' per principale: oggetto", quindi aggiungere questo alla parte superiore dello script:

require "test/unit/assertions" 
include Test::Unit::Assertions