Превратить конкретную ошибку в сбой в ruby ​​Test::Unit

Я хотел бы получить способ сгенерировать ошибку в конкретном методе теста внутри Test::Unit::TestCase и превратить ее в ошибку с более дружественным родовым сообщением. Я продолжаю думать, что это должно быть возможно с некоторым наследством, но я не могу полностью разобраться с этим.

class CalenderTest001 < Test::Unit::TestCase
  def testZoneCal001
    Fixture.reset
    $driver = Selenium::WebDriver.for :firefox
    $driver.get "http://myTestSite.com/"
    $driver.find_element(:id, "IDthrowsAnError").click
  end
end

Эффект, который я хотел бы, заключаться в том, чтобы весь объект был завернут в конечный блок начала спасения, при этом спасательный блок выглядел примерно так.

rescue Selenium::WebDriver::Error::NoSuchElementError => e
  #mark this test as a failure not an error

1 ответ

Вы можете использовать конструкцию assert_nothing_raised:

def testZoneCal001
  assert_nothing_raised "Something went wrong!" do
    Fixture.reset
    $driver = Selenium::WebDriver.for :firefox
    $driver.get "http://myTestSite.com/"
    $driver.find_element(:id, "IDthrowsAnError").click
  end
end
Другие вопросы по тегам