Я бы посоветовал протестировать тест - это хорошая идея, которую нужно сделать. Просто убедитесь, что то, что вы создаете для тестирования своего приложения, не является более сложным, чем само приложение. Как было сказано ранее, TDD является хорошим подходом даже при создании автоматизированных функциональных тестов (лично я бы не стал так делать, но в любом случае это хороший подход). Модульное тестирование вашего кода также является хорошим подходом. ИМХО, если вы автоматизируете тестирование GUI, просто продолжайте с любыми доступными ручными тестами (у вас должны быть шаги, исходные сценарии, ожидаемые результаты и т. Д.), Убедитесь, что они прошли. Затем для другого теста, который вы можете создать и который еще не был написан вручную, выполните их модульное тестирование и следуйте подходу TDD. (тогда, если у вас есть время, вы можете протестировать остальные).
И наконец, ключевое слово на основе IMO - лучший подход, который вы могли бы использовать, поскольку он дает вам наиболее гибкий подход.