如何将MEF作为外部DI容器集成到SpecFlow中?
SpecFlow与MEF集成的相关情况
目前并没有公开的、成熟可用的SpecFlow与MEF集成方案或插件。不过你可以参考SpecFlow扩展外部DI容器的机制,自行实现MEF的集成:
- 实现SpecFlow的
IDependencyProvider接口,在接口方法中封装MEF容器的初始化、组件注册以及服务解析逻辑 - 按照SpecFlow的扩展规范,注册自定义的依赖提供者,替换框架默认的DI容器
- 注意对齐MEF的组件生命周期与SpecFlow的测试上下文(如场景级、特性级),保证测试相关实例的正确创建与释放
虽然介绍Autofac集成的旧博客内容已过时,但SpecFlow扩展外部DI容器的核心机制并未有大的改动,你可以结合当前SpecFlow官方文档中关于自定义DI容器的指导来完成MEF的适配工作。
内容的提问来源于stack exchange,提问作者Olaf
相关产品推荐
相关产品推荐

