Зачем вам нужны первые два шага в этом конкретном сценарии, чтобы пройти через браузер. Конечно, вы знаете, что опубликованная статья - это просто запись в вашем хранилище данных. Конечно, у вас, вероятно, есть сценарии, которые показывают, что вы можете создать статью, используя свой веб-интерфейс, например
Scenario: Create article
Given I can create an article
When I create an article
Then I should have created an article
но как только они у вас есть, вам больше не нужно просматривать веб-интерфейс каждый раз, когда вам нужно создать статью. Вместо этого вы можете ускорить процесс либо
1) Вызов напрямую службы, которая создает статью (предпочтительно)
2) Запись непосредственно в базу данных для создания соответствующей записи статьи
Таким образом, ваш сценарий станет чем-то вроде
Scenario: View my published article
Given I have published an article # shortcuts and does not use a browser
When I view my article # uses a browser
Then ...
Теперь ваш сценарий использует только один браузер, и ваша проблема исчезла. Теперь вы можете использовать различные методы, чтобы гарантировать возможность просмотра статей в различных браузерах.
Этот шаблон ярлыков для Givens и использования только пользовательского интерфейса для When имеет дополнительное преимущество, заключающееся в ускорении ваших сценариев. Вы не можете легко использовать его для каждого данных, некоторые вещи, такие как «Учитывая, что я вошел в систему», должны проходить через браузер, но подавляющее большинство Givens могут быть ярлыками.