какой тип "assert" мне следует использовать в rspec для проверки предварительных условий? - PullRequest
4 голосов
/ 02 марта 2012

Я использую rspec с ruby ​​на рельсах для тестирования.

Вопрос - В спецификации, если я должен был сделать перекрестную проверку, предварительное условие правильно устанавливается перед началом теста, какой подход рекомендуется?

Например, используя rspec ".«утверждение типа» не похоже на то, что это будет правильным, поскольку я проверяю только предварительное условие ...

Ответы [ 3 ]

5 голосов
/ 02 марта 2012

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

2 голосов
/ 02 марта 2012

Должен быть совершенно допустимым в этой ситуации, так как это условие должно быть действительным в начале теста. В качестве очень тривиального примера:

it "should increment by one" do
  value = 10
  value.should eql(10)
  value += 1
  value.should eql(11)
end
0 голосов
/ 06 сентября 2012

Я не думаю, что в текущем RSpec есть такая особенность, было бы неплохо иметь какой-то другой метод для этих предварительных условий, такой как

it "should increment by one" do
  value = 10
  value.must eql(10) # This is a necessary pre-condition, not the actual test
  value += 1
  value.should eql(11)
end

Но яПолагаю, что такого метода для различения вещей не существует, но гем с заданным rspec может представлять интерес.

...