SpecFlow - выполнить ScenarioOutline из контекстного меню Visual Studio
Можно ли на самом деле запустить набор ScenarioOutline или отдельную строку из набора ScenarioOutline из Visual Studio?
В документации SpecFlow кратко упоминается, что можно запустить ScenarioOutline из контекстного меню Visual Studio, как если бы вы использовали стандартный сценарий. Я пытался выполнить тесты, нажимая в различных областях файла Feature, но безрезультатно. Единственный способ выполнить тесты ScenarioOutline - это запустить всю функцию.
Я использую Visual Studio 2013 Professional с расширением SpecFlow, пакетом NuGet и SpecRun в качестве тестового прогона.
1 ответ
У меня такое чувство, что это связано с ошибкой в текущей версии, которая неправильно отображает номера строк из теста обратно в файл объектов.
Я исправил это в версии v2, бета-версия которой доступна здесь.
Это также будет зависеть от того, какую тестовую среду вы используете, так как она будет работать только в том случае, если спецпоток настроен не генерировать тесты строк, из-за способа отображения между строками и функцией для работы. Строковые тесты используются по умолчанию для всех сред тестирования, кроме MSTest (который тогда не поддерживается), поэтому в дополнение к бета-версии вам также потребуется настроить specflow, чтобы не создавать тесты строк.
Вы можете прочитать о конфигурации здесь, и, как вы видите, вам нужно добавить это в вашу конфигурацию:
<specFlow>
<generator allowRowTests="false"/>
</specFlow>
Как только это будет сделано, я уверен, что вы сможете щелкнуть строку примера и запустить один тест, но я не использую specrun или обычно не использую визуальную студийную интеграцию, поэтому не уверен. Я обычно использую ncrunch, и это позволяет мне это делать, а также правильно определяет пример как исходную строку для тестов.