Я не уверен, что понимаю ваш пример, потому что на самом деле вы не используете родинки.
Если вы просто хотите "молить" наш собственный не виртуальный метод, в ссылках вашего тестового проектавам просто нужно щелкнуть правой кнопкой мыши по сборке протестированного проекта и выбрать Добавить сборку родинок .Это создаст ссылку HAPAndMoles.Moles.
Затем добавьте соответствующее использование, и вы можете назвать свой класс "moled", начиная с M (Class1 => MCLass1).Я показываю вам пример тестирования поведения MClass1:
using Microsoft.VisualStudio.TestTools.UnitTesting;
using HAPAndMoles;
using HAPAndMoles.Moles;
namespace HAPAndMoles {
[TestClass]
public class UnitTest1
{
[TestMethod]
[HostType("Moles")]
public void TestMethod1()
{
bool called = false;
var bar = new MClass1()
{
fooBar = () => called = true
};
((Class1)bar).fooBar();
Assert.IsTrue(called);
}
}
}
Когда я хочу Моли mscorlib, я щелкаю правой кнопкой мыши по ссылкам тестового проекта и могу Добавить сборку молей для mscorlib .Тогда
using Microsoft.Moles.Framework;
необходим.