Уже который год учусь писать юнит-тесты, но до сих пор остаются вопросы о правильности.
Пример:
Есть API, написан на Scala PlayFramework 2.2.1. Пишу тесты на Specs2. Для вызова API нужен токен доступа в заголовках, который в моем случае равен dev-token. Более того, метод который я тестирую требует результата работы других методов.
Проблема: Читал, что тесты не должны зависеть от внешних условий.
Вопрос: Нужно ли мне заново создавать dev-token и так-же вызывать другие API в SetUp методе, а потом подчищать результаты в TearDown методе? Или мой тест всегда должен рассчитывать на то, что dev-token существует и другие методы были вызваны?
Как правильно писать тесты? Есть ли 50-ти страничный мануал с примерами? Очень хочу быть TDDшником.