Я использую Pex и Moles для моего низкоуровневого модульного тестирования, но я также изучаю MSpec для проверки бизнес-логики и хотел бы продолжать использовать Moles для согласованности.Проблема, я думаю, заключается в том, что MSPec использует анонимные методы, поэтому нет способа применить атрибут HostType ("Moles").Например:
Because of = () =>
employeeList = EmployeeManager.GetUsersByRoles(rolesToLoad);
It should_return_a_list_of_employees = () =>
employeeList.ShouldNotBeNull();
Я издеваюсь над провайдером ролей, вызываемым внутри «GetUsersByRoles», и когда я пытаюсь запустить этот тест через MSpec, я получаю стандартное «Моулз требует, чтобы тесты были в инструментальном процессеmsgstr "ошибка, с инструкцией добавить [HostType (" Moles ")] в мой метод тестирования.Есть ли какой-нибудь обходной или другой вариант, доступный здесь?
Примечание: я скачал MSMSpec.tt и изменил его, чтобы включить атрибут в сгенерированные VSTests, но я хотел бы иметь возможность запускать тесты MSpecнепосредственно через своего бегуна или TestDriven.net, чтобы я мог получить дружественный вывод для BA и владельцев бизнеса.