Я смотрю на небольшую (~ 70kLOC, включая сгенерированную) C # (.NET 4.0, немного Silverlight) кодовую базу, которая имеет очень низкий охват тестированием. Сам код работает в том смысле, что он прошел пользовательское приемочное тестирование, но он хрупкий и в некоторых областях не очень хорошо продуман. Я хотел бы добавить твердое покрытие модульных тестов для устаревшего кода, используя обычные подозрения (NMock, NUnit, StatLight для битов Silverlight).
Мой обычный подход - начать работать над проектом, модульным тестированием и рефакторингом, пока я не буду удовлетворен состоянием кода. Я делал это много раз в прошлом, и это сработало хорошо.
Однако на этот раз я подумываю использовать генератор тестов (в частности Pex ) для создания тестовой среды, а затем вручную ее дополнить.
Мой вопрос: использовали ли вы генераторы модульных тестов в прошлом, когда начинали работу над устаревшей кодовой базой, и если да, то порекомендуете ли вы их?
Я опасаюсь, что сгенерированные тесты будут пропускать семантические нюансы кодовой базы, что приведет к страшной ситуации с тестами ради метрики покрытия, а не с тестами, которые четко выражают предполагаемое поведение в коде.