我是否应该对如下所示的简单应用服务进行单元测试?
public void Update(UserAccountViewModel viewModel)
{
var instance = Mapper.Map<UserAccountViewModel, UserAccount>(viewModel);
_userAccountService.UpdateInstance(instance);
}
正如您所看到的,它只是接收一个视图模型,使用 AutoMapper 将其映射到域模型并调用域服务方法来更新对象。如果我应该对它进行单元测试,我正在努力查看单元测试的内容!这也许回答了我自己的问题,因为您可能会争辩说,除了 AutoMapper 的工作之外,没有什么可以测试的,我相信我不应该因为其他人的工作而进行单元测试,对吗?
编辑:感谢您的回复。我已经使用了类似这样的东西,它只是测试 UpdateInstance 方法被调用一次:
[TestMethod]
public void GivenViewModelWhenEditingAUserThenTheUpdateInstanceDomainServiceMethodIsCalledOnce()
{
// Arrange
_userAccounts.Clear();
var viewModel = new Mock<UserAccountViewModel>();
// Act
_userAccountAppService.Update(viewModel.Object);
// Assert
_userAccountService.Verify(e => e.UpdateInstance(It.IsAny<UserAccount>()), Times.Once());
}