>>> На главную <<<

Основные принципы тестровния

Три основных принципа тестирования

Правильность

Чистый, удобный в сопровождении код

Продуктивный поток операций

Написание [изолированные-тесты] способствует выталкиванию программного кода из главного приложения, т.е. разделению приложения на сервисы. Развитием этой идеи является [[функциональное-ядро]] - написание такого ядра приложения, которое тестируется миниально или не тестируется вовсе и которое написано в парадигме [[функциональное-программирование]], поощряющее #модульные_тесты . Все остальне вынесено в сервисы.

Вики-справочник test double

Вся эта концепция подробно в TDD книге

Виды и термины тестов

Концепции тестирующего программного продукта

Некоторые определения

История пользователя - описание того, как приложение будет работать с точки зрения юзера. Используется [приемочные-тесты]

Ожидаемая неполадка - когда тест не срабатывает и ошибка, которую он выдает ожидаема.

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

Правило красный/зеленый/рефакторизируй

Если фрагмент кода повторяется больше двух раз (клюнуло трижды) - нужна [рефакторизация]

todo - место для фиксации рабочих моментов, которые происходят во время программирования и требуют завершения в будущем

Разные тесты не должны влиять друг на друга.. Для этого любое потенциальное состояние обнуляется в конце теста. Это называется обеспечением изоляции и управлением глобальным состоянием

Лучше не допускать методов time.sleep, так как неизветсно сколько придется ждать. Лучше установить время и прогнать повторно. Тест должен ждать ровно столько, сколько нужно. Не стоит опираться на неявные ожидания [selenium]

Нельзя писать новые тесты, пока мы не добились работоспособности на текущем уровне. Т.е. пока не заработал текущий уровень [интеграционные-тесты], нельзя переходить на следующий. Следует разбивать работу на маленькие достижения и маленькие задачи.

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

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

Начальная настройка проекта

Основной поток операций TDD

img

Выход за пределы тестирования только на сервере разработки

Обшие приемы тестирования

Плюсы тестирования

Минусы тестов

>>> На главную <<<