🔥

Тред (Юрий Дымов)


Давайте обсудим написание тестов. Любите ли вы их писать, исповедуете TDD, BDD, какие инструменты/либы используете. Вот это все

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

Для веб/гибридных у SAP UI5 есть отдельные инструменты для написания Unit Testов. Стандартные приложения ими покрываются

Кастомизация и разработка под ключ тестами не покрывается. На это никогда нет времени/бюджета/желания. На самом деле клиенты просто не

понимают необходимость в написании лишнего кода, который не используется в продуктиве и не готовы платить время/деньги за это

В проектах просто есть фаза "тестирования". Сценарии написали, мышкой потыкали, отчет сделали, акты закрыли - все хорошо

В своих проектах у меня есть два подхода: тестирование "широкими мазками", когда я нажимаю на кнопку и жду определенного эффекта

Если его нет - мне все равно кто виноват. Это нужно, чтобы после рефакторинга отловить, что ничего неожиданного не поломалось

Второй подход к тестированию - это выделение отдельных частей приложения и выкладывание в Open Source

Там уже тесты пишутся на уровне hardcore, с учетом всех вырожденных случаев и code coverage под 100%

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

Теперь по инструментам. Jest у меня чего-то не зашел, использую mocha + chai + enzyme + jsdom для написания тестов логики и компонентов

Для coverage - istanbul. В качестве CI для OS - travis CI.

Мне нравятся бэджики на github, для code coverage использую сервис coveralls. Github предлагает в своих интеграциях codecov

Я потратил 2 часа, чтобы понять, что у меня не так, но проблема оказалась на стороне codecov, причем согласно issue tracker - 2 за месяц

Может это просто совпадение, но теперь много людей узнает, что они не очень. Сорян чуваки, shit happens.