Я просто позволяю моим тестам зависеть от Autofac, хотя я инкапсулирую это. Все мои TestFixtures наследуются от Fixture, который определен так:

аюсь заставить модульные тесты не полагаться на вызовcontainer.Resolve <T> () за их зависимости.

Я сейчас пользуюсьAutoFac 2.2.4 и попробовалxUnit.NET а такжеNUnit, но оба имеютЭта проблема:

Для этого объекта не определен конструктор без параметров

Как мне пройти эту проблему? Это будет конкретная инфраструктура модульного тестирования, которая будет поддерживать это, или просто как настроена эта инфраструктура?

Разве я не должен этим заниматься? Или я могу настроить тестовый класс для работы с конструктором, который имеет только зависимость?

Вот часть кода:

public class ProductTests : BaseTest
{
    readonly private IProductRepository _repo;

    public ProductTests(IProductRepository r)
    {
        _repo = r;
    }

    //working unit tests here with default constructor
} 

Я решил неправильно инициализировать контейнер в конструкторе базового класса?

public abstract class BaseTest
{
    protected BaseTest()
    {
        var builder = new ContainerBuilder();
        builder.RegisterType<ProductRepository>().As<IProductRepository>();
        builder.Build();
    }
}

Ответы на вопрос(2)

Ваш ответ на вопрос