Подтвердить что ты не робот

Unit Test? Интеграционный тест? Регрессионный тест? Вступительный тест?

Есть ли кто-нибудь, кто может четко определить эти уровни тестирования, поскольку мне трудно дифференцироваться при проведении TDD или модульного тестирования. Пожалуйста, если кто-нибудь может понять, как, когда их реализовать?

4b9b3361

Ответ 1

Коротко:

Тестирование устройств - вы unit test каждый отдельный фрагмент кода. Подумайте о каждом файле или классе.

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

Регрессионное тестирование - после интеграции (и, возможно, исправления) вы должны снова запустить свои модульные тесты. Это регрессионное тестирование, чтобы гарантировать, что дальнейшие изменения не нарушили какие-либо юниты, которые уже были протестированы. Тестирование устройства, которое вы уже выполнили, подготовило модульные тесты, которые можно запускать снова и снова для регрессионного тестирования.

Приемочные тесты - когда пользователь/клиент/бизнес получают функциональность, которую они (или ваш испытательный отдел) проведут приемочные испытания, чтобы убедиться, что функциональность соответствует их требованиям.

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

Ответ 2

Unit test: когда он терпит неудачу, он сообщает вам, какая часть вашего кода должна быть исправлена.

Тест интеграции: когда он терпит неудачу, он сообщает вам, что части вашего приложения не работают вместе, как ожидалось.

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

Тест регрессии: когда он терпит неудачу, он сообщает вам, что приложение больше не ведет себя так, как оно использовалось.

Ответ 3

Я попробую:

  • Unit test: разработчик должен написать один для проверки отдельного компонента или класса.
  • Тест интеграции: более обширный тест, который будет включать несколько компонентов или пакетов, которые должны сотрудничать
  • Тест регрессии: внесение одного изменения в приложение заставляет вас повторно запускать ВСЕ тесты и проверять ВСЕ функции.
  • Приемочный тест: Конечные пользователи или QA делают это до подписания, чтобы принять поставку приложения. В нем говорится: "Приложение удовлетворяет моим требованиям".

Ответ 4

Здесь приведено простое объяснение для каждого из указанных тестов и когда они применимы:

Unit Test A unit test выполняется в автономном блоке (обычно это класс или метод) и должен выполняться всякий раз, когда блок был реализован или обновление блока завершено.

Это означает, что он запускается всякий раз, когда вы написали класс/метод, исправили ошибку, изменили функциональность...

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

Это означает, что он запускается всякий раз, когда недавно написанный блок интегрирован в остальную часть системы или когда обновляется блок, который взаимодействует с другими системами (и успешно завершил его модульные тесты).

Регрессионный тест Регрессионные тесты выполняются всякий раз, когда что-либо было изменено в системе, чтобы проверить, не были ли введены новые ошибки.

Это означает, что он запускается после всех исправлений, обновлений, исправлений ошибок. Регрессионное тестирование можно рассматривать как частный случай комбинированного теста unit test и интеграции.

Приемочный тест Приемочные тесты выполняются всякий раз, когда необходимо проверить, что подсистема (возможно, вся система) выполняет все свои спецификации.

Это означает, что он в основном выполняется перед завершением нового выпуска или объявлением завершения более крупной задачи. Посмотрите это как свою последнюю проверку, чтобы убедиться, что вы действительно выполнили свои цели перед тем, как бежать к клиенту/боссу и объявить о победе.

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

Ответ 5

Unit Test: мой единственный метод работает правильно? (НЕТ зависимостей или зависимостей насмехаются)

Интеграционный тест: - мои два отдельно разработанных модуля, которые работают при вместе?

Регрессионный тест: Я что-то сломал, изменив/написал новый код? (тесты на единицу/интеграцию с каждой фиксацией - это технически (автоматическое) регрессионное тестирование). Чаще всего используется в контексте QA - ручное или автоматическое.

Приемочный тест: тестирование, выполненное клиентом, что он "принимает" поставляемый SW

Ответ 6

Интеграционное тестирование: Интеграционное тестирование тестирует интерфейс между модулями программного приложения. Различные модули сначала тестируются индивидуально, а затем объединяются в систему. Тестирование интерфейса между небольшими блоками или модулями является интеграционным тестированием. Обычно он проводится тестером интеграции программного обеспечения и является продолжением разработки. Для интеграционного тестирования доступны различные методы. Юнит-тестирование: Юнит-тестирование - это практика тестирования небольших фрагментов кода, обычно отдельных функций, одиночных и изолированных. Если ваш тест использует какой-либо внешний ресурс, такой как сеть или база данных, это не unit тест.