模拟单元测试异步任务设置返回null

时间:2020-04-21 22:00:50

标签: c# unit-testing

我有一个TestMethod异步任务,该任务正在使用ReturnsAsync模拟服务设置,但由于某种原因,结果始终返回null。

    [TestMethod]
        public async Task GetCustomerAsync_Returns_CustomerResults()
        {
            var customerResults = _fixture.Create<CustomerResults>();

            _mockCustomerService.Setup(s => s.GetCustomerAsync(1)).ReturnsAsync(customerResults);

            var result = await _customerManager.GetCustomerDetails(1);

            Asset.IsNotNull(result);
        }

        public async Task<CustomerResults> GetCustomerDetails(int id)
        {
            var results = await _customerService.GetCustomerAsync(id);
            return results;
        }

1 个答案:

答案 0 :(得分:1)

您应该已经发布了理解问题所需的所有代码,创建了_mockCustomerService_fixture变量等。 话虽如此,我可能可以猜测您正在创建mockerService,而不是“刷新”它。对_customerManager的调用未使用您要使用的_mockCustomerService。您可以在这里AutoFixture Freeze

了解更多
相关问题