Ruby:
Написание тестов
Как это сделать:
В Ruby для тестирования используются Minitest и RSpec — давайте использовать RSpec. Сначала установите его:
gem install rspecСоздайте тестовый файл, calculator_spec.rb:
RSpec.describe Calculator do
describe "#add" do
it "суммирует два числа" do
expect(Calculator.new.add(3, 7)).to eql(10)
end
end
endЗапустите тест с помощью:
rspec calculator_spec.rbВывод:
F
Ошибки:
1) Calculator#add суммирует два числа
Ошибка/Ошибка: expect(Calculator.new.add(3, 7)).to eql(10)
NameError:
неинициализированная константа CalculatorСоздайте calculator.rb:
class Calculator
def add(a, b)
a + b
end
endСнова запустите тесты.
Вывод:
.
Завершено за 0.002 секунды (файлы загружены за 0.08 секунд)
1 пример, 0 неудачГлубокое погружение
Тестирование в Ruby ведет свои корни от Test::Unit, но RSpec, представленный в 2005 году, революционизировал тестирование в Ruby благодаря “разработке, ориентированной на поведение”. Альтернативы RSpec включают Minitest и Test::Unit. RSpec сосредоточен на читаемости и бизнес аспектах; Minitest более минималистичен и быстрее. Типично, тесты имитируют использование программного обеспечения, проверяя функции, данные и крайние случаи. Для существующих проектов начните с тестирования наиболее критичных частей.
Смотрите также
- RSpec GitHub: github.com/rspec/rspec
- Minitest: rubygems.org/gems/minitest
- “Эффективное тестирование с RSpec 3”: Читайте для получения дополнительной информации о принципах и паттернах RSpec.