Когда я выполняю все контрольные тесты для всех моих контроллеров, некоторые из них не выполняются, но проходят индивидуально.
Я использовал Dispose (), где я использовал ту же переменную, что и в модульном тесте, но тем не менее она не исправляет.
В моем проекте я сделал общую настройку Пример: AbcMock
public class AbcMock
{
public static Mock<IAbcMock> abcMock;
public static void Setup()
{
abcMock = new Mock<IAbcMock>();
abcMock.Setup(x => x.GetAll(It.IsAny<Guid>())).Returns(1);
}
}
Затем я сделал общую настройку для всех служб в другом файле
скажем, baseController.cs имеет следующую настройку
public Mock<IAbcMock> abcMock ;
abcMock = AbcMock.abcMock;
AbcMock.Setup();
Мой тестовый контроллер actul
public class AbcMockTestController : baseController
{
AbcService abcService ;
public ClaimExpertRolesMockTestController()
{
abcService = new AbcService (foo.Object, boo.Object);
}
[Fact]
public void GetAll_Passing_Valid_Data()
{
abcMock.Setup(x => x.GetAll(It.IsAny<Guid>())).Returns(2);
var result = abcService.GetAll(Guid.NewGuid());
Assert.Equal(ProcessStatusEnum.Success, result.Status);
}
[Fact]
public void GetAll_Passing_Valid_Data()
{
abcMock.Setup(x => x.GetAll(It.IsAny<Guid>())).Returns(3);
var result = abcService.GetAll(Guid.NewGuid());
Assert.Equal(ProcessStatusEnum.Success, result.Status);
}
}
Это мои настройки для моего кода PROD. Прочитав много статей, я узнал, что из-за того, что мой фиктивный объект статичен, возникает проблема из-за того, что мой тестовый пример проходит индивидуально, но проваливается после выполнения всего. Итак, какие-либо предложения, как я могу решить мою проблему без значительного изменения моего кода?