Создание набора тестов Ruby - PullRequest
0 голосов
/ 11 января 2019

Нужна помощь в создании / выполнении тестового набора через тест / модуль в Ruby. У меня есть два тестовых случая, которые определены в классе, и у класса есть единственный метод. Класс наследуется от Test :: Unit :: TestCase. Чего я хочу достичь, так это когда я запускаю свой набор тестов, должны вызываться методы в классе и выводиться результаты, однако при запуске моего набора тестов выводится следующее

Test::Unit::TestSuite::STARTED
Test::Unit::TestSuite::STARTED::OBJECT
Test::Unit::TestSuite::STARTED
Test::Unit::TestSuite::STARTED::OBJECT
Test::Unit::TestSuite::FINISHED

Test::Unit::TestSuite::FINISHED::OBJECT
Test::Unit::TestSuite::STARTED
Test::Unit::TestSuite::STARTED::OBJECT
Test::Unit::TestSuite::FINISHED
Test::Unit::TestSuite::FINISHED::OBJECT
Test::Unit::TestSuite::FINISHED
Test::Unit::TestSuite::FINISHED::OBJECT

Пробовал поиск, но не смог найти решение.

require 'test/unit'
require 'test/unit/testcase'
require 'test/unit/ui/console/testrunner'
require 'test/unit/testsuite'
require 'test/unit/testresult'

class TC_HelloWorld < Test::Unit::TestCase
  def hello
    puts "Hello world!"
  end
end    
class TC_HelloWorld1 < Test::Unit::TestCase
  def hello
    puts "Hello1"
  end
end
class TS_HelloWorld
  def self.suite()
    suite = Test::Unit::TestSuite::new
    suite << TC_HelloWorld.suite
    suite << TC_HelloWorld1.suite

    return suite
  end
end

tr = Test::Unit::TestResult::new

TS_HelloWorld.suite.run(tr) do|result|
  puts(result)
end

1 Ответ

0 голосов
/ 11 января 2019

Вам необходимо добавить в префикс ваши методы тестирования к строке test_. Например:

class TC_HelloWorld < Test::Unit::TestCase
  def test_hello                          # method name updated here
    puts "Hello world!"
  end
end 

Это отражено в документации : «Добавьте метод, начинающийся с« test », в ваш класс».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...