Вот простое объяснение для каждого из упомянутых тестов и когда они применимы:
Модульный тест Модульный тест выполняется на автономной единице (обычно это класс или метод).) и должен выполняться всякий раз, когда юнит реализован или обновление юнитов завершено.
Это означает, что он запускается всякий раз, когда вы пишете класс / метод, исправляете ошибку, меняете функциональность ...
Интеграционный тест Интеграционный тест направлен на проверку того, насколько хорошо несколько устройств взаимодействуют друг с другом.Этот тип теста следует выполнять всякий раз, когда устанавливается новая форма связи между блоками или меняется характер их взаимодействия.
Это означает, что он запускается всякий раз, когда недавно написанный блок интегрируется в остальную часть системы.или всякий раз, когда юнит, который взаимодействует с другими системами, обновлялся (и успешно завершил свои юнит-тесты).
Регрессионный тест Регрессионные тесты выполняются всякий раз, когда что-либо изменяется в системе, вчтобы убедиться, что новых ошибок не было.
Это означает, что он запускается после всех исправлений, обновлений, исправлений ошибок.Регрессионное тестирование можно рассматривать как особый случай комбинированного модульного теста и интеграционного теста.
Приемочный тест Приемочные тесты проводятся всякий раз, когда необходимо проверить, что подсистема (возможно, вся система)выполняет все свои спецификации.
Это означает, что он в основном выполняется перед завершением нового результата или объявлением о завершении более крупной задачи.Посмотрите на это как на последнюю проверку, чтобы убедиться, что вы действительно достигли своих целей, прежде чем бежать к клиенту / боссу и объявить о победе.
По крайней мере, так я узнал, хотя я уверен, что есть и другиепротивоположные взгляды.В любом случае, я надеюсь, что это поможет.