在我的 Global.asax ** Application_Start()中**我有 AutoMapper 的配置,只要应用程序运行,就会触发此配置。
我在控制器中使用 AutoMapper 。
我有测试项目来测试我的控制器,每当我的测试项目被触发时,我都需要触发AutoMapper的这种配置。
我的测试项目中有一个地方,我在 Global.asax 中有 Application_Start()这样的地方来调用此配置方法那里的AutoMapper?
答案 0 :(得分:1)
尝试将初始化方法添加到测试类并设置[TestInitialize()] - 属性。
namespace TestNamespace
{
[TestClass()]
public class TestClass
{
[TestInitialize()]
public void Initialize()
{
// some initialization code
}
}
}
答案 1 :(得分:0)
对于我们这些仍在寻找其他选择的人来说。
在App_Start
文件夹中,添加一个类文件AutoMapperConfig.cs
namespace MyNameSpace
{
public class AutoMapperConfig
{
public static void Register()
{
// Your AutoMapper configuration should go in here
}
}
}
在global.asax
Application_Start()
方法中添加
AutoMapperConfig.Register();
现在在您的测试类中,您应该能够调用相同的配置方法(您需要引用mvc项目)。
[TestMethod]
public void AutoMapper_Configuration_Should_Succeed()
{
AutoMapperConfig.Register();
Mapper.AssertConfigurationIsValid();
}
或者(如果您有多个需要配置的测试)
[TestInitialize()]
public void Initialize()
{
AutoMapperConfig.Register();
}
[TestMethod]
public void AutoMapper_Configuration_Should_Succeed()
{
Mapper.AssertConfigurationIsValid();
}