Не совсем. Ваш ClassToTest
сложно проверить из-за его дизайна. Если вы хотите иметь возможность поменять их зависимости для фиктивных объектов, то вам нужно подумать о том, как эти зависимости вводятся - но просто создание их в конструкторе не является подходом, который вам поможет. Вы можете использовать конструктор инъекций:
public class ClassToTest
{
MyObject _foo;
public void MethodToTest(Myobject foo)
{
_foo = foo;
Console.WriteLine(foo.ToString());
}
}
или вы можете использовать инъекцию свойства:
public class ClassToTest
{
public MyObject Foo { get; set; }
public void MethodToTest()
{
}
}
Первый может больше соответствовать вашему примеру, если вы хотите вывести консоль там; часто это лучший подход, когда ваша зависимость должна иметь зависимость для объекта, а не для дополнительной.
Вы могли бы сделать намного хуже, чем исследовать понятия внедрение зависимости и инверсия управления .