Specflow 如何使用 Nunit 3 实现 AppDomain 隔离

SoM*_*arn 5 appdomain specflow nunit-3.0

我已经在 Specflow 2.0、nUnit 3.X、TeamCity 和 Visual Studio 2013 中编写了自动化测试。我试图并行运行测试,但它们失败了,因为代码使用静态类/对象。

在 Specflow 网站上,建议使用PARALLEL EXECUTION WITH MEMORY (APPDOMAIN) ISOLATION运行线程安全测试(如果架构依赖于静态状态) http://www.specflow.org/documentation/Parallel-Execution/

但是没有关于如何做到这一点的信息,甚至谷歌搜索我也找不到任何相关文章。

如果有人能帮助我了解我们如何做到这一点,我真的很感激。

谢谢你的帮助,萨蒂

And*_*ich 0

如何配置隔离取决于您使用的测试运行器。
我不是 100% 确定 NUnit 确实支持应用程序域隔离,但找出可并行属性文档是一个好的开始:https://github.com/nunit/docs/wiki/Parallelizing-Attribute

如果您使用 SpecFlow+Runner ( http://www.specflow.org/plus/ ),则可以实现应用程序域或进程分离。
以下是 SpecFlow+Runner 中不同模式的博文:https://the-engineers.net/2016/04/08/using-specflowrunners-parallelization-features/


全面披露:我是 SpecFlow+Runner 的开发者之一