Какой метод тестирования выбрать? [Rails] - PullRequest
5 голосов
/ 14 марта 2010

Сегодня я начинаю новый проект для клиента.

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

Я слышал о RSpec, Mocha, Webrat и Cucumber. Пожалуйста, имейте в виду, что я никогда не писал регулярных тестов, поэтому мои знания по тестированию в целом весьма ограничены.

Как бы вы предложили мне начать?

Спасибо!


Спасибо за все ответы! Я опубликовал соответствующий вопрос, который может заинтересовать тех, кто просматривает этот вопрос в будущем. Вы можете найти его здесь .

Ответы [ 3 ]

4 голосов
/ 14 марта 2010

Я предпочитаю использовать Rspec и Cucumber вместе. Я также предпочитаю капибару вебрат.

Rspec прекрасно подходит для интеграции и структуры рельсов. Технически это тестирование поведения, но на практике это похоже на юнит-тестирование. Он также позволяет группировать и определять «спецификации» или тесты rspec в любой структуре, которая вам нравится, с блоками «описать».

Огурец высшего уровня. Это то, во что вы будете переводить свои пользовательские истории. Например, вы можете решить, что ваши пользователи должны иметь возможность изменить свой пароль, поэтому вы напишите что-то вроде этого:

 Scenario: Change password
    Given I am logged in
    And I am on the change password page
    When I fill in "p4ssw0rd" for "old_password"
    And I fill in "newp4ssw0rd$$" for "new_password"
    Then my password should be "newp4ssw0rd$$"

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

1 голос
/ 14 марта 2010

Здесь вы можете ознакомиться с самыми популярными средами тестирования http://ruby -toolbox.com /

Приветствия

1 голос
/ 14 марта 2010

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

  • RSpec больше для модульного тестирования. Модульное тестирование - это тестирование наименьшей части, обычно это методы ваших моделей.

  • WebRat больше подходит для тестирования функциональности, так как конечный пользователь будет тестировать его из браузера. Вы фактически проверяете взаимодействие и проверяете, возвращает ли оно правильное представление / данные.

  • Cucumber больше похож на тестирование на основе поведения или сквозное тестирование. Это больше для проверки бизнес-логики в соответствии с различными сценариями или данными.

Конечно, вы можете использовать их все вместе. Например, я могу использовать Cucumber для выполнения сквозного тестирования, и это будет включать функциональное тестирование с использованием WebRat и Rspec. Надеюсь, это поможет вам начать.

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