Чтобы ответить на ваш вопрос, возможно, проще взглянуть на все три типа тестов рядом друг с другом.
Unit Test - Для проверки отдельной единицы кода. Например, если бы у меня был класс Item
, который составлял часть сайта электронной коммерции, у меня было бы несколько юнит-тестов, чтобы проверить, что класс Item функционировал должным образом. Это может включать в себя тест, чтобы доказать, что функция поиска возвращает элементы, которые соответствуют определенным критериям.
Функциональный тест - Чтобы проверить, что, когда отдельные устройства объединены, они работают вместе, как и ожидалось. Например, чтобы функция поиска работала, мы ожидаем отправить определенный RESTful URL для поиска элемента, который будет возвращать конкретный ответ. Он будет использовать наш контроллер и классы моделей для выполнения кода и достижения полной функции.
Приемочный тест - Также известный как тесты Selenium - это гораздо больший набор тестов. Они тестируют сценарий, через который может пройти пользователь, который может охватывать множество функциональных тестов, который, в свою очередь, может включать в себя множество модульных тестов. Они больше связаны с обработкой пользовательского пути или сценария, а не с отдельными частями функциональности.
Что касается типов утверждений, которые используются в FunctionalTests, я также использовал assertFalse
и assertTrue
, используя метод getContent
для объекта ответа.