Руководство по JUnit. Введение

Тестирование – это процесс проверки функционала программы с целью подтверждения того, что она работает в соответствии с определёнными требованиями. Unit-тестирование – это тестирование, которые пишутся, непосредственно, на уровне разработчика (тестирование определённой сущности – метод или класс). Это крайне важный этап разработки ПО, который помогает создавать качественный продукт.

Юнит-тестирование делится на две большие группы:

  • Ручное тестирование
  • Автоматизированное тестирование
Ручное тестирование Автоматизированное тестирование
Ручное выполнение тестов без помощи каких-либо средств. Использование специальных средств для автоматизированного тестирования
Не программируется

Нет возможности для написания сложных тестов для тестирования сложных моделей поведения.

Программируется

Тестировщики могут написать сложные тесты для тестирования сложных моделей программирования

Низкая надёжность

Ручное тестирование имеет низкую надёжность, так как крайне подвержено влиянию человеческого фактора.

Высокая надёжность

Автоматизированное тестирование точное и надёжное.

 

Большие затраты времени

Связано с тем, что человек имеет крайне ограниченные возможность в скорости работы.

Быстро

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

 


JUnit

JUnit – это фреймворк, разработанный для тестирования программ, написанных с использованием технологии Java. Он лежит в основе TDD (Test-Driven Development) и входит в семейство фрейморков для тестирования xUnit.

Главная идея данного фреймворка – “сначала тесты, потом код”. Это означает, что сначала мы определяем, что должно получиться в результате работы того или иного куска кода и пишем тесты, которые проверяют идентичность результата с требуемым, после чего пишем сам кусок кода, который и будем тестировать. Данный подход увеличивает эффективность работы разработчика и позволяет писать более стабильный код. В результате этого мы получаем меньшее количество времени, которое затрачивается на отладку программы.


Свойства JUnit

  • Фреймворк с открытым исходным кодом, который используется для написания и выполнения тестов.
  • Позволяет писать код более быстро и качественно.
  • Крайне прост в использовании.
  • Поддерживает аннотации для идентификации методов.
  • Поддерживает утверждения для тестирования получаемых результатов.
  • Тесты могут быть организованы  в связки тестов (test suites).
  • Имеет визуальную индикацию состояния тестов (красные – не пройдены, зелёные – пройдены).

Тестовый случай

Тестовый случай (Test Case) в юнит тестировании – это часть кода, которая проверяет ,что другая часть кода  (в частности – метод) работает в соответствии с определёнными требованиями.

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

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

На этом мы заканчиваем обзор фреймворка JUnit.

В следующей статье мы рассмотрим пример создания простого теста.