Как и при любом тестировании, необходимо начинать с известного состояния , а по завершении теста очистить до чистого состояния .
. Также,тестовый код часто пропускается как ненастоящий код и, следовательно, не поддерживается должным образом ... это важнее, чем код .Как минимум столько же дизайна, должно войти в архитектуру ваших тестов.Запланируйте разумные уровни абстракции, т.е. если вы тестируете веб-приложение, подумайте о том, чтобы иметь такие уровни: абстракция взаимодействия с вашим браузером, абстракция ваших компонентов на страницах, абстракция страниц и ваши тесты.Тесты взаимодействуют со страницами и компонентами, страницы взаимодействуют с компонентами, компоненты взаимодействуют с уровнем взаимодействия с браузером, а уровень взаимодействия с браузером взаимодействует с вашей (возможно, сторонней) библиотекой автоматизации браузера.
Если ваш тестовый код не поддерживается должным образомили хорошо продуманные, они становятся помехой, а не помощником в написании нового кода.
Если ваша команда плохо знакома с тестированием, существует множество кодов кодирования , которые стремятся научитьВажность хороших тестов (и из этого вытекает хороший код), как правило, они ориентированы на уровень модульного тестирования, однако многие принципы одинаковы.