Я люблю писать модульные тесты и согласен с тем, что они являются отличным способом тестирования кода, предотвращения регрессий и т. Д. Однако я не могу их писать, поскольку подавляющее большинство кода, над которым я работаю изо дня в день, - это приложения. код, который отображает пользовательский интерфейс для пользователя. Есть ли хороший способ модульного тестирования кода приложения? Каковы лучшие практики здесь?
Я не ищу конкретного ответа, такого как структура и т. Д. Но, скорее, в целом, как вы подходите к этой проблеме?
unit-testing
applications
Джастин этир
источник
источник
Ответы:
Для проверки реального пользовательского интерфейса Selenium работает хорошо.
Если вам нужны реальные модульные тесты, ваша стратегия состоит в том, чтобы вытолкнуть как можно большую часть логики из реального пользовательского интерфейса, обычно в объекте ViewModel. Затем вы можете написать модульные тесты для объекта ViewModel.
Другими словами, добавьте как можно меньше логики в реальный пользовательский интерфейс, чтобы модульное тестирование можно было проводить в другом месте.
источник
Я добился успеха в модульном тестировании моего приложения с помощью MSTest, тестировании Javascript с помощью QUnit и получении результатов этих тестов с помощью одного модульного теста MSTest, в котором используется WatiN (мне предложили Selenium , который также имеет возможность записывать тесты, но нашел WatiN лучше для автоматизации чисто).
источник