SpecFlow + Selenium-WebDriver:跨步骤共享WebDriver?

use*_*509 3 bdd selenium webdriver specflow

假设我有一个使用两个不同类中包含的步骤的场景.有没有办法让他们俩都能在IWebDriver不经过同一个实例的情况下拥有句柄ScenarioContext.Current["webdriverVariableName"]

那太难看了.有更干净的方式吗?

我打算创建一个具有public static IWebDriver在每个场景开始时分配的属性的类,这样我的所有步骤都可以引用它,但是当我开始并行运行它时,我认为这不会起作用,因为每个场景将覆盖全局驱动程序.

foo*_*ode 6

Specflow提供依赖注入机制,因此您可以在步骤中注入Web驱动程序实例.

请参阅https://github.com/techtalk/SpecFlow/wiki/Context-Injection

请参阅"Avanced选项"部分.