Полное раскрытие: я никогда не использовал AutoMoq (хотя я просто подписался, чтобы подписаться на него на GitHub, так как он выглядит интригующим, и мне нравятся вещи, которые сокращают шаблон).
Тем не менее, выглядитКак инструмент AutoMoq был разработан для другого случая использования, чем у вас.Похоже, что он использует его для «проверки на будущее» против неработающих модульных тестов, если добавлена зависимость, добавленная другим конструктором, и для возможности создания объекта по умолчанию с чем-то там для зависимостей, предположительно, чтобы избежать исключений нулевой ссылки.
После прочтения страницы проекта AutoMoq я бы предположил, что если бы Даррен писал ваш конкретный модульный тест, он, вероятно, просто использовал бы Moq из коробки.То есть для этого конкретного теста , вам, вероятно, следует пройти тест, который вы опубликовали.Похоже, что AutoMoq нацелен на предоставление разумного поведения по умолчанию, когда вы не хотите задавать все свои зависимости в тесте.Но в вашем случае вы do хотите указать эти конкретные зависимости.
То, что вы используете обычный Moq для этого конкретного теста, не означает, что вы не можете использовать AutoMoq для других тестов.Остальные ваши тесты (где оба целых числа равны нулю или что-то в этом роде) будут рассчитаны на будущее, но вам, возможно, придется пережить этот разрыв, если вы добавите другой параметр конструктора в ваш класс Dummy.
(Вытакже всегда можно получить исходный код AutoMoq и изменить его в соответствии с вашими потребностями).