Я предпочитаю следовать тестовой разработке (TDD) при использовании Visual Studio - или любого другого языка / IDE в этом отношении. По сути, вы утверждаете, что хотите, чтобы ваш код выполнял , написав сначала модульный тест , подтвердите, что тест не пройден, а затем заполните пробелы в тестируемом методе. Гораздо проще сказать, чем сделать, но как только вы к этому привыкнете, это становится очень естественным и быстрым - не говоря уже о том, что в вашем коде гораздо меньше дефектов!
Для инструмента, где вы можете тестировать некоторый код по ходу работы, я рекомендую LinqPad (а также есть SnippetCompiler ). Хотя они не позволяют выделять код и выполнять его, вы можете копировать и вставлять в него, получая практически те же результаты.
Для написания модульных тестов в VS вы можете использовать NUnit или любой из его клонов. Я не рекомендую VS для тестеров для модульного тестирования.
Я использую NUnit в своем текущем проекте и стал поклонником ReSharper для интеграции набора тестов в Visual Studio.