使用 nHibernate 进行集成测试 - BuildConfiguration & BuildSessionFactory 太慢
我正在使用 Fluent 从程序集中添加映射。这需要将近 5 秒钟。然后,获取会话工厂还需要 1.5。无论如何,是否可以从这个人那里获得一次编译输出,并将其序列化到磁盘:
Fluently.Configure(config)
.Mappings(cfg =>
{
cfg.FluentMappings.AddFromAssemblyOf<Entity>()
.Conventions.Add(ForeignKey.EndsWith("Id"));
})
.BuildConfiguration();
我们大约有 15 个模型。有没有更快的方法来做到这一点?我不介意必须手动管理一些缓存的输出。每个测试类别 6 秒以上的处罚是相当残酷的。
I'm using Fluent to add mappings from an assembly. That takes nearly 5 seconds. Then, getting a session factory takes another 1.5. Is there anyway to get a compiled output from this guy once, and serialize it to disk:
Fluently.Configure(config)
.Mappings(cfg =>
{
cfg.FluentMappings.AddFromAssemblyOf<Entity>()
.Conventions.Add(ForeignKey.EndsWith("Id"));
})
.BuildConfiguration();
We have about 15 models. Is there a faster way to do this? I don't mind having to manually managed some cached output. A 6+ second penalty for each test class is pretty brutal.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
序列化配置以供重用是可行的:
http:// /nhibernate.info/blog/2009/03/13/an-improvement-on-sessionfactory-initialization.html
Serializing the configuration for reuse is viable:
http://nhibernate.info/blog/2009/03/13/an-improvement-on-sessionfactory-initialization.html