@ Schaf,
ViewModel должен иметь возможность доступа к фактической модели.Все они инициализируются до того, как для них будут доступны какие-либо данные.Это не то, как они предназначены для использования.
Конструкция Model-View-ViewModel предназначена для объединения различных точек данных для представления определенного набора информации и одновременного тестирования.В режиме отладки ресурсы не используются, потому что это, по сути, набор статических объектов (изображений, списков, которые не изменяются и т. Д.), Которые вызываются в реальном времени выполнения.
Кроме того, в вашем сценарии кажется, что ваш доступ к данным интегрирован в саму ViewModel.Предполагается, что тестирование в режиме отладки - это «белый ящик», чтобы обеспечить легкий доступ к потоку и преобразованию данных от начала до конца.По умолчанию для этого требуется, чтобы тестируемые классы (в данном случае ViewModels) были доступны непосредственно из Test Harness, и, следовательно, должны иметь возможность создания экземпляров независимо от общего контекста приложения (где живут ресурсы приложения), которыйне полностью собраны в режиме отладки.
Итак, чтобы ответить на ваш вопрос, да, неспособность протестировать ваши ViewModel в режиме отладки напрямую связана с тем, что они находятся под ResourceDictionary.Если вы вытащите ваши ViewModel в их собственную папку в решении, на том же уровне, что и ваша модель, вы сможете получить к ним доступ в режиме отладки и проверить не только доступ к данным, но и то, что информация, которая заполняет каждую ViewModel, являетсяправильный набор информации для соответствия бизнес-правилам, которым вы пытаетесь соответствовать.