Как насмехаться с базовым базовым classом

У меня есть базовый class под названием «Вопрос» и несколько дочерних classов, таких как «TrueFalse», «MultipleChoice», «MatchPairs» и т. Д. …

Базовый class имеет методы с логикой, которые используют все дочерние classы, такие как отправка баллов и повышение событий.

Я установил свои модульные тесты для дочерних classов, но я не уверен, как я могу настроить модульные тесты для методов в базовом classе.

Я сделал некоторые поиски, и я понимаю, что мне нужно создать Mock classа, но я не уверен, как это сделать, поскольку я только видел, как это сделать на объект-объект.

У меня есть Moq & NUnit, установленный в проекте, поэтому идеал id нравится использовать это. Я все еще новичок в программировании, и это мой первый раз, когда я добавляю модульные тесты, поэтому я ценю любые советы, которые вы можете мне дать.

Сначала я сделал поиск на сайте и нашел пару подобных вопросов, но они не приводили ни одного примера о том, как это сделать, просто чтобы его издевались.

Большое спасибо.

Из этого ответа кажется, что вам нужно что-то в этом роде:

[Test] public void MoqTest() { var mock = new Moq.Mock(); // set the behavior of mocked methods mock.Setup(abs => abs.Foo()).Returns(5); // getting an instance of the class var abstractBaseClass = mock.Object; // Asseting it actually works :) Assert.AreEqual(5, abstractBaseClass.Foo()); }