Size: a a a

pro.rb (Ruby/Rails / RU)

2020 September 11

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
Ладно, а теперь вопрос в тему - что сейчас лучше почитать про то, как писать тесты на r spec? То есть с нуля и до полноценного покрытия? "Штатный" manual для рельсов мне настолько не зашёл, видимо я не понимаю концепции
источник

AD

Alex Demidov in pro.rb (Ruby/Rails / RU)
Nikolay Turnaviotov
Ладно, а теперь вопрос в тему - что сейчас лучше почитать про то, как писать тесты на r spec? То есть с нуля и до полноценного покрытия? "Штатный" manual для рельсов мне настолько не зашёл, видимо я не понимаю концепции
книжка была от Pragmatic Programmer
источник

FK

Fedor Koshel in pro.rb (Ruby/Rails / RU)
Nikolay Turnaviotov
Ладно, а теперь вопрос в тему - что сейчас лучше почитать про то, как писать тесты на r spec? То есть с нуля и до полноценного покрытия? "Штатный" manual для рельсов мне настолько не зашёл, видимо я не понимаю концепции
Aaron Summer "Everyday rails testing"
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
Хм, спасибо
источник

k

kolas in pro.rb (Ruby/Rails / RU)
основная  фишка тестов - помочь себе будущему
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
Штука в том, что у меня написан достаточно сложный проект панели управления сервисами хостинга - почта - DNS - web site (one site one docker container), осталось добить учётной системой счета/платежи
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
Но вот из-за отсутствия тестов мне как то не хочется открывать код, что-ли
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
Потому что я и сам сейчас после перерыва в разработке потерял контекст
источник
2020 September 12

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Nikolay Turnaviotov
Потому что я и сам сейчас после перерыва в разработке потерял контекст
Ну в принципе это одна из причин для чего пишут понятные тесты
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
М? Видимо я не очень понимаю суть, да. Потому что вот допустим, у меня есть клиент, у него есть контакт, у клиента есть например, тарифный план, в котором есть два сайта с почтой, какими то почтовыми ящиками в домене..
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
Как всю эту архитектуру тестировать
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
Ну, то есть кусочками я понимаю, что если в тарифном плане может быть только два почтовых ящика, мы тестируем чтобы на третий пошёл отказ, и кнопочку добавить - заблокировать..
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Nikolay Turnaviotov
М? Видимо я не очень понимаю суть, да. Потому что вот допустим, у меня есть клиент, у него есть контакт, у клиента есть например, тарифный план, в котором есть два сайта с почтой, какими то почтовыми ящиками в домене..
Тесты разных типов бывают, если тупо то можно разбить на интеграционные и юниты
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Юниты поидее сугубо один класс тестируют, интеграционные тестируют какой то кусок системы
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Какого то супер правильного подхода для интеграционных я не видел, пишутся по опыту и знанию системы
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Суть в том чтобы постараться побольше чистой логики держать которую юнитами легко тестировать
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Остальное интеграционными.
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Плюс часто тестируют через браузер, там просто накидываешь сценарии по своему усмотрению
источник

NT

Nikolay Turnaviotov in pro.rb (Ruby/Rails / RU)
То есть, клиент создаётся и требования полей - один тест, что у клиента должен быть контакт, второй, что тарифный план можно привязать к клиенту только один - это ещё один..
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Nikolay Turnaviotov
То есть, клиент создаётся и требования полей - один тест, что у клиента должен быть контакт, второй, что тарифный план можно привязать к клиенту только один - это ещё один..
Лучше стараться бизнеслогику юнитами тестировать
источник