Невозможно запустить сценарий SpecFlow из Visual Studio 2012 Ultimate Edition
Я установил Visual Studio 2012 Ultimate Edition и настроил SpecFlow. Я использовал следующую конфигурацию для запуска тестов в файле config.xml:
<specFlow>
<unitTestProvider name="MsTest" />
</specFlow>
Я смог создать семплы и скомпилировать их правильно. Но когда я попытался запустить сценарии из контекстного меню с опцией "Запустить сценарии сценариев" или "Сценарии Debug SpecFlow", я не вижу никаких действий. Он просто говорит: "Сформировать успех", и больше ничего не происходит позже.
Может ли кто-нибудь объяснить, есть ли другой способ выполнения сценариев?
Спасибо заранее.
Ответы
Ответ 1
У меня уже был весь этот набор настроек, но я все еще не смог запустить сценарии из контекстного меню.
Пока я не рассмотрел параметры SpecFlow ( "Инструменты" > "Параметры" > "SpecFlow" ) и установите " VisualStudio2012" как Инструмент тестирования тестового запуска (в разделе "Тестирование" ).
По какой-то причине он был установлен в "VisualStudio2010MsTest", а затем сценарии не запускались из контекстного меню.
Ответ 2
Ваш файл app.config должен быть:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler, TechTalk.SpecFlow" />
</configSections>
<specFlow>
<unitTestProvider name="MsTest" />
</specFlow>
</configuration>
Вот ссылка в вики SpecFlow.
Затем заново создайте свое решение, и вы сможете увидеть и запустить тесты. Вы можете видеть и запускать тесты из Test/Windows/Test Explorer.
Также убедитесь, что у вас есть ссылка на: Microsoft.VisualStudio.QualityTools.UnitTestFramework из вашего тестового проекта.
Вот шаги:
- Создайте новый проект: В моем случае MVC 4
- Добавить "Unit Test Project" в решение
- Добавить пакет SpecFlow nuget в "Unit Test Project"
- Добавьте одну случайную функцию/тест SpecFlow 5) Запустите тест, чтобы убедиться
он работает
Ответ 3
Я знаю, что это очень старый пост. У меня была такая же проблема в течение последних 4 дней, и, наконец, я решил ее с помощью случайных ссылок StackOverflow. Чтобы сэкономить время для других разработчиков, это может помочь:
- Изменить версию ReSharper от 10 до 8.2
- Инструменты > Расширение и обновление > Поиск в Интернете > Адаптер тестирования NUnit > Установка
- Visual Studio 2013
- Specflow Последняя версия
- Установить Unit test провайдер NUnit с помощью командного окна диспетчера пакетов nuget. Инструменты- > Диспетчер пакетов Nuget → Консоль диспетчера пакетов. Запустите это в окне - установите пакет specflow.Nunit
- Перезапустите Visual Studio.
- Перейдите в > something.Feature > щелкните правой кнопкой мыши по описанию сценария > запустить unit test ИЛИ запустить сценарий расплывания.
Unit test должен появиться сеанс.
Надеюсь, что это поможет другим, имеющим ту же проблему.