与普通 mstests 结合时,找不到该步骤的匹配步骤定义

No matching step definition found for the step when combining with normal mstests

我们已经开发了一个框架来针对我们的应用程序编写单元和集成测试,它处理我们的许多基础知识,例如自动清理自身等。当我们开始针对同一个应用程序编写 SpecFlow 测试时,我们扩展了以前的框架,这样我们就不必重新发明轮子了。

这很好用...通常。我们发现,当我们 运行 大组这些测试在一起时(结合正常的 MSTests 和 SpecFlow 生成的测试),有时 SpecFlow 测试会失败, "No matching step definition found." 个错误。

我可以 运行 单独进行上述任何测试,并且它们工作正常。我什至可以抓取大量测试,而且它们会正常工作。旁注:运行所有这些测试连同附加的调试器不会导致故障发生。

我们的一些测试像这样扰乱了 appconfig:

AppConfig.Change("SomeTestConfig.config");

这搞乱了 SpecFlow,以至于它无法找到额外的程序集来加载绑定。