Arquivos de recursos do Specflow com as mesmas etapas que fazem com que várias instâncias do navegador sejam iniciadas

Eu tenho pelo menos 3 arquivos .feature no meu projeto de testes do C # Specflow no qual eu tenho a etapa, por exemplo:

Given I am at the Home Page

Quando eu escrevi pela primeira vez o passo no arquivoFeateure1.feature e criei o método step, coloquei em um arquivo de passo, digamosSteps1.cs, que herda de uma classe base que inicializa umaFirefoxDriver. Todo meuStepsXXXX.cs classes herdam dessa classe base.

Então eu escreviFeature2.feature, que também tem um passoGiven I am at the Home Page. E o passo foi automaticamente ligado ao deSteps1.cs

Até agora, não há problema. É basicamente o que eu queria - ter etapas reutilizáveis ​​durante o projeto de teste. Mas o problema é, sempre que estou executando um cenário que tem passos em diferentesStepsXXXX arquivos, eu recebo várias instâncias do navegador em execução.

======

Tenho certeza que isso é devido ao fato de que meuStepsXXXX (classes de ligação) todas herdam dessa classe base que possui um IWebDriver próprio, e quando a etapa é chamada, todo o resto (incluindo os métodos de cenário before / after) é chamado. Mas não consigo descobrir como contornar isso.

Eu ainda quero passos reutilizáveis. Eu tentei colocar essas etapas na classe base, mas não funcionou. Pensei em alterar as ligações também, mas specflow usa strings significativas para fazer isso, e não quero alterá-las para strings enganosas.

Alguém já se deparou com isso? Qualquer ajuda é muito apreciada.

questionAnswers(4)

yourAnswerToTheQuestion