1 — протестируйте бизнес-правила с помощью своих методов

Ну а что тестировать? Правила бизнеса, однозначно! Не реализуйте унитарные тесты, чтобы охватить все методы и создать числа, сделайте настоящий тест!

Знайте свой метод и проверяйте его на осмысленных потоках, где вы можете гарантировать, что ваша логика работает.

Не проводите бессмысленные тесты.

2 — Дайте четкое и осмысленное название вашему методу

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

Плохой пример:

@Test
public void test1()

Хороший пример:

@Test
public void checkIfCustomerIsBlockedByFraudTest()

Намного легче понять, да? Вы знаете, что ваш метод проверяет, заблокирован ли клиент мошенничеством.

3. Если ваш метод слишком сложен, используйте TDD (разработка через тестирование)

Вам когда-нибудь приходилось реализовывать очень сложный метод? Если да, то это очень сложно проверить, верно? Чтобы упростить реализацию, вы должны использовать TDD и реализовать свой тест перед реализацией вашего метода. Используйте маленькие шаги, сначала сделайте самое простое, а затем заставьте тест работать! Затем продолжайте, пока ваш метод не будет полностью реализован!

Самое интересное в использовании TDD заключается в том, что ваш код уже протестирован! Удивительно, как это может помочь вам! Просто потренируйтесь, и вы увидите, насколько это потрясающе!

4. Создавайте свои классы/методы согласованно

Унитарные тесты очень помогают узнать, хороший у вас код или плохой. Это очень просто: если вы не можете легко протестировать свой код, ваш код не имеет связности или низкой связанности.

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

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

Избегайте ненужного стресса, просто рефакторинг кода.

5 — Знайте разницу между унитарными тестами и интеграционными тестами

В чем разница? Легкий! Унитарные тесты оценивают только один метод. Они проверяют ваш код единолично, метод за методом. Вы не будете использовать информацию из базы данных. Вы будете «мокать» данные, что означает, что вы создадите свои собственные «фальшивые» данные для реализации теста, необходимого для вашего бизнес-правила. Хотя вы не можете взаимодействовать с базой данных, унитарные тесты работают очень быстро и позволяют эффективно тестировать бизнес-правила.

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

Продолжайте в том же духе!

Подпишитесь на меня в Твиттере, чтобы узнать больше о предотвращении ошибок и стресса. Я буду делиться ими каждый день!

Получите свою бесплатную электронную книгу о 5 отличных методах, которые должен знать каждый разработчик, чтобы удвоить скорость программирования и уменьшить количество ошибок в NoBugsProject!

Поделись!