Я работал над созданием инфраструктуры SpecFlow для моей тестовой среды, теперь я хотел бы расширить возможности ее использования для нескольких сред. Мне было интересно, могу ли я сделать это с помощью BeforeFeature, чтобы я мог использовать теги, чтобы сказать, какую среду я хочу запустить, и какие тесты я хотел бы проводить в любой / каждой среде. Частично проблема, с которой я столкнулся при выяснении этого, заключается в том, что один из сценариев функций, которые я должен запустить, содержит примерную таблицу, которая будет иметь разные значения для Test и Local.
Могу ли я настроить что-то подобное в моем файле определения шага?
[BeforeFeature("Test")]
public static void BeforeFeature_Test()
{
setupEnvironment("Test");
}
[BeforeFeature("Local")]
public static void BeforeFeature_Local()
{
setupEnvironment("Local");
}
Если у меня есть теги @Test и @Local, настроенные в моих файлах функций, могу ли я запустить BeforeFeature таким образом, чтобы получить правильные настройки, которые могут мне понадобиться для моих тестов или среды?
В таблице примеров у меня есть что-то вроде:
Then I should be able to access <weblinks> pages
@Test
Examples:
| weblinks |
| http://test/url1 |
| http://test/url2|
@Local
Examples:
| weblinks |
| http://local/url1 |
| http://local/url2 |
Могут ли теги @Test и @Local работать как для тестов функций, которые я хочу запустить, так и для таблиц примеров?
Я запускаю это в NUnit, и моя конфигурация настроена с помощью allowRowTests = "false", поскольку я заметил кого-то, упомянутого в списке ранее, но это могло быть в более ранней версии SpecFlow, я использую 1.8 в Visual Studio 2010 с WebDriver и C #.