2

すべてのテストケースの前に作成し、@connすべてのテストケースに使用できるようにしたいので、次のようにしました:

class SQLTest < Test::Unit::TestCase
    def self.before_suite                                                       
        @conn = PG.connect(dbname:'MapSwitcher',host:'localhost', user:'Lin')
    end
    def  test_employee_table_have_5_entries
        result = @conn.exec("SELECT COUNT(*) FROM employees")
        assert_equal(result.getvalue(0,0).to_i, 5)
     end

end

そして、エラーが発生しました:

noMethodError: private method `exec' called for nil:NilClass

@connテストケースでは にアクセスできないようですが、

4

1 に答える 1

1
class SQLTest < MiniTest::Unit::TestCase
  def setup
    @conn = PG.connect(dbname:'MapSwitcher',host:'localhost', user:'Lin')
  end

  def test_employee_table_have_5_entries
    result = @conn.exec("SELECT COUNT(*) FROM employees")
    assert_equal(result.getvalue(0,0).to_i, 5)
  end
end
于 2013-09-03T13:51:59.750 に答える