Есть ли веская причина, по которой вы пытаетесь высмеивать физический класс, а не интерфейс? Я спрашиваю об этом, потому что есть 2 потенциальные проблемы с поддельным FormsAuthenticationService:
Класс может не иметь значения по умолчанию
конструктор без параметров (в котором
случае, вам нужно указать
перегруженный метод
mocks.PartialMock).
SetAuthCookie должен быть виртуальным. Фальшивые фреймворки обычно могут макетировать только незапечатанные классы и только виртуальные члены такого класса.
Чтобы обойти эти проблемы, я бы рекомендовал вместо этого использовать ложную аутентификацию. У насмешивающихся интерфейсов нет этих ограничений. Вот код, который вы бы написали:
var authentication = _mocks.DynamicMock<IAuthentication>();
Expect.Call(() => authentication.SetAuthCookie(null, null)).IgnoreArguments();