Тестировать рекомендую на базе unittest модуля.
Мои рекомендации:
1. Тесты часто ломаются с абсолютными путями. Вывод: заготовить заранее шаблоны, которые относительно какого-либо каталога. А перед проверкой "действительный" результат подредактировать путем вычленения корневой директории
2. Тесты часто ломаются связанные с датой. Вывод: Перед тестом задать дату от которой отталкиваться и смотреть на "не более N секунд" или "дата1 не больше даты2, которая 2 строчками ниже" и т.д. и т.п.
3. Тесты часто ломаются если меняется IP . Вывод: привязываться только к тому что есть IP и что он рабочий, но какое его значение "фиалетово" или задать диапазон в которых он выделяется
Наборы:
1. Одна функциональность - один набор
2. Если функциональность под разными углами смотрите все равно это один набор, но разные тесты
3. В тестах чаще думайте о вынесении конфигурации куда-либо в словарь, чтобы можно легко было написать новый тест
Мой вам совет: Если тест уже ничего не тестирует, не бойтесь мысли "Я же его столько писал, столько времени потратил", удалите его! Он свое отслужил.
Второстепенный совет: Всегда и как можно чаще просматривайте тесты на хрупкость и актуальность на "сегодняшний момент"