У меня есть два модульных теста, которые используют TypeMock Isolator, чтобы изолировать и подделать метод из sqlMembershipProvider asp.net.TypeMock Isolator: WillThrow() истекает через границы единичных тестов?
В тесте 1 у меня есть:
Isolate.WhenCalled(
() =>
Membership.CreateUser(...)))
.WithExactArguments()
.WillThrow(new Exception());
В тесте 2 у меня есть:
Isolate.WhenCalled(
() =>
Membership.CreateUser(...)))
.WithExactArguments()
.WillReturn(new MembershipUser(...));
Когда я бегу каждый тест сам по себе оба они проходят успешно.
Когда я запускаю, оба теста тест номер 1 проходит первый и передает, затем тест номер 2 пробегов и не за исключением брошенного в тесте 1.
Почему бы WillThrow()
инструкции в испытании 1 «кровоточить над» к тест 2? В конце концов, тест 2 явно определяет другое поведение - WillReturn()
?
Вы не указали полный фрагмент кода, поэтому я задам очевидный вопрос ... У вас есть тесты/класс с атрибутом «Изолированный», или вы вызываете «Isolator.Cleanup» для сброса поведения ? http://www.typemock.com/rule-missing-isolated-attribut – forsvarir
@forsvarir Спасибо. При добавлении атрибута '[Isolated]' исправлена проблема. Вы хотите опубликовать это как ответ, чтобы я мог его принять? – urig