Может ли кто-нибудь объяснить регрессионный тест слова понятным способом?
Регрессионный тест - это тест, который выполняется, чтобы убедиться, что ранее работавшие функции по-прежнему работают после изменения в других частях системы. Статья в Википедии довольно хорошо объясняет, что это такое.
Ваши модульные тесты автоматически становятся регрессионными, и это одно из их самых больших преимуществ. После того, как эти тесты будут написаны, они будут запускаться в будущем всякий раз, когда вы добавляете новые функции или изменяете существующие. Вам не нужно явно писать регрессионные тесты.
Во время регрессионного теста тестеры запускают с помощью функций тестирования вашего приложения, которые, как было известно, работали в предыдущей сборке.
Они специально ищут части приложения, которые, возможно, не были напрямую изменены, но зависят от (и могли иметь остаточные ошибки) кода, который был изменен.
Эти ошибки (вызванные ошибками в зависимом коде, хотя они работали раньше) известны как регрессии (потому что функция работала правильно, а теперь содержит ошибку ... и, следовательно, регресс).
Несмотря на старую шутку "Конгресс" не противоположность «прогрессу»; "регресс" есть. Чтобы ваш код регрессировал, он должен «двигаться назад», что обычно означает, что какое-то плохое поведение, которое у него когда-то было, которое вы исправили, вернулось. «Регресс» - это возврат ошибки (хотя могут быть и другие интерпретации). Следовательно, регрессионный тест - это тест, который проверяет, что вы исправили ошибку, и тест, который вы запускаете периодически, чтобы убедиться, что ваше исправление все еще на месте и все еще работает.
http://en.wikipedia.org/wiki/Regression_testing
По сути, протестируйте обновленный код, чтобы убедиться, что вы не добавили новых ошибок и что его функциональность по-прежнему работает как раньше.