Ruby on rails генерирует тесты для вас. Дают ли они ложное чувство безопасности? - PullRequest
0 голосов
/ 04 апреля 2010

Отказ от ответственности: я не использовал RoR и не генерировал тесты. Но я все же позволю себе опубликовать этот вопрос.

Обеспечение качества теоретически невозможно получить на 100% правильно в целом (неразрешимая проблема;), и на практике это трудно.

Многие разработчики не понимают, что написание хороших автоматических тестов - это искусство, и это сложно.

Когда я слышу, что RoR создает для вас тесты, я очень скептически отношусь. Это не может быть так просто.

Тестирование - это общая концепция; это относится ко всем языкам. Так же как и концепция контрактов кода, она аналогична для языков, которые ее поддерживают. Кодовые контракты не генерируются сами собой. Программист должен добавить требования и обещания вручную, немного подумав об алгоритме / функции. Если человек ошибается, инструменты будут распространять ошибку. Точно так же и с тестированием - требуется человеческое суждение о том, что должно произойти. Тесты не пишутся сами собой, и мы далеки от того дня, когда бизнес-аналитик может просто поговорить с компьютером и неофициально сообщить ему, каковы требования, и заставить компьютер выполнять всю работу.

В этом нет магии ... как RoR может генерировать для вас хорошие тесты?

Пожалуйста, пролите немного света на это. Мнения в порядке, потому что это вики сообщества. Спасибо!

1 Ответ

9 голосов
/ 04 апреля 2010

Где вы читали, что Rails генерирует тесты? Это не так. Он генерирует простую тестовую заглушку по умолчанию для каждой модели или контроллера, созданную с помощью инструмента командной строки.

Допустим, вы создаете модель для поста в блоге:

script/generate model post

Rails автоматически генерирует файл:

test/unit/post_test.rb

Имеет следующий контент:

require 'test_helper'

class PostTest < ActiveSupport::TestCase
  # Replace this with your real tests.
  def test_truth
    assert true
  end
end

Как видите, содержание теста по-прежнему зависит от вас.

Подробнее о тестировании Rails: http://guides.rubyonrails.org/testing.html

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