AutoMapper AssertConfigurationIsValid是否足以确保良好的映射?

时间:2012-08-20 12:49:29

标签: c# unit-testing automapper

我想问你一个关于AutoMapper的问题。我们正在对我们的映射进行单元测试:

var dtoFiltrePersonne = new DtoFiltrePersonne { Prop1 = "Test", Prop2 = 1234 };
Mapper.CreateMap<FiltrePersonne, DtoFiltrePersonne>();
var filtrePersonne = DtoAutoMappeur<DtoFiltrePersonne, FiltrePersonne>.Instance.MapFromDtoToEntity(dtoFiltrePersonne);
Assert.AreEqual(dtoFiltrePersonne.Prop1, filtrePersonne.Prop1);
Assert.AreEqual(dtoFiltrePersonne.Prop2, filtrePersonne.Prop2);

我想知道这个单元测试是否提供相同的覆盖范围?

Mapper.CreateMap<FiltrePersonne, DtoFiltrePersonne>();
AutoMapper.AssertConfigurationIsValid()

我调查了AutoMapper Configuration documentation,这对我来说并不是很清楚。我是否需要对每个映射进行单元测试,或者只使用AssertConfigurationIsValid方法?

1 个答案:

答案 0 :(得分:22)

它说:

  

执行此代码会产生AutoMapperConfigurationException   描述性消息。 AutoMapper检查以确保每一个   单个目标类型成员具有相应的类型成员   来源类型。

每个成员都与目标类型相关。它可能不是是正确的(因为总有异常情况),但它至少会测试每个属性是否从源类型移动到目标。