Нет. Действительно насмешливые рамки делятся на 2 лагеря. Те, кто может издеваться над чем-либо, а кто-то другой - только над интерфейсами, абстрактными / виртуальными методами.
Это потому, что они используют очень разные технологии перехвата. Moq, RhinoMocks и т.д. используют динамический прокси-генератор Касла под капотом, который все это создает экземпляр, который предоставляет тот же общедоступный интерфейс. Он использует это для записи взаимодействий с этим объектом, чтобы вы могли проверить его. Абстрактные и виртуальные члены могут быть обмануты, потому что они могут быть производными от этого класса и предотвращать обращения к базовому классу.
Однако Moles и TypeMock Isloator играют непосредственно с IL. Я знаю, что для TypeMock фактически внедряет IL в методы, которые вы пытаетесь смоделировать, чтобы вы могли перехватывать и записывать взаимодействия с ним для тестирования (это также останавливает дальнейшую обработку методов). Я знаю, что Moles создает другую сборку, и вы ссылаетесь на это в своем методе тестирования, но я думаю, что он очень похож на TypeMock.
Если вы хотите смоделировать конкретные не переопределяемые методы, вам придется использовать эти последние фреймворки.