Начало работы с тестами в Rails - PullRequest
3 голосов
/ 03 июня 2009

Мы решили использовать рельсы для создания небольшого нашего проекта. Это действительно небольшой проект, который, вероятно, займет шесть человеко-месяцев или меньше. Все люди, работающие над проектом, являются новичками в Rails и имеют ограниченный опыт веб-программирования.

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

Какого рода автоматизированные тесты мы должны делать, и есть ли какие-нибудь свободно доступные учебники, которые бы помогли нам в этом?

Ответы [ 5 ]

4 голосов
/ 04 июня 2009

Рассмотрим три «ветви» шаблона проектирования MVC (модель-представление-контроллер), на котором основан Rails.

Просмотры

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

Контроллеры

Минимальная логика (общепринятым является работа с «тонкими контроллерами»). Тестирование (в каталоге «test / функциональный») должно быть простым и, как мы надеемся, главным образом связано с навигацией и проверкой содержимого ответов. Начните с идеи сделать их как можно более простыми как можно дольше, чтобы вы были готовы к более сложным темам тестирования, когда они необходимы.

Модель

Здесь живет логика бизнеса / домена. Хранение в моделях облегчает тестирование, и это хорошо, потому что вы должны писать большинство своих тестов по моделям, особенно в самый ранний период разработки. Использование тестов для определения поведения до его реализации дает дополнительное преимущество, направляя ваш код к более чистому, отделенному дизайну, поэтому постарайтесь сделать это как можно больше.

Вероятно, стоит взглянуть на Предписания Rails от Ноэля Раппина - есть книга и (бесплатный) вводный PDF-документ, в котором подробно рассматриваются вопросы тестирования, связанные с Rails.

0 голосов
/ 04 июня 2009

Ifa от Thoughtbot - это очень простая в использовании и интуитивно понятная среда тестирования, с опциями естественного языка и небольшим количеством "магии", которую нужно изучать с помощью учебников и чтения API.

Дейв Томас, один из авторов фантастической книги по Rails Agile Web Development с Rails предлагает хороший, быстрый обзор Shoulda .

0 голосов
/ 04 июня 2009

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

0 голосов
/ 04 июня 2009

Возможно, вы также захотите получить книгу Agile Web Development с Rails . Есть глава об использовании системы тестирования рельсов.

Для тестов более высокого уровня вы можете посмотреть Watir или Fitnesse или Selenium .

0 голосов
/ 03 июня 2009

Для всех вещей, рельсы, есть Railscasts. Вот хороший пример при тестировании с помощью rspec: Link! (ищите больше хороших вещей), и я не могу рекомендовать автотест более высоко. После этого вы можете многое сделать в зависимости от теста, который хотите написать. (селен, светильники)

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