В спецэффекте кода есть синтаксическая ошибка или дублированный код - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть решение, которое состоит из пары проектов.У меня есть 3 категории проектов в моем решении.Первая категория включает только файлы .feature.Вторая категория включает только привязки.Третий включает драйверы, которые включают в себя набор функций, используемых в привязках для связи с программным интерфейсом, который я тестирую.

Когда я создаю свое решение, часть кода, содержащегося в файлах (.feature.cs), повреждается.Вот скриншоты того, что я получаю после построения решения:

Ошибки сборки в Visual Studio

Ошибки сборки в Visual Studio

Ниже приведенпример поврежденного файла .feature.cs:

    // ------------------------------------------------------------------------------
//  <auto-generated>
//      This code was generated by SpecFlow (http://www.specflow.org/).
//      SpecFlow Version:2.3.0.0
//      SpecFlow Generator Version:2.3.0.0
// 
//      Changes to this file may cause incorrect behavior and will be lost if
//      the code is regenerated.
//  </auto-generated>
// ------------------------------------------------------------------------------
#region Designer generated code
#pragma warning disable
namespace AcceptanceTests.Controllers.Images
{
    using TechTalk.SpecFlow;


    [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "2.3.0.0")]
    [System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [Microsoft.VisualStudio.TestTools.UnitTesting.TestClassAttribute()]
    public partial class GetImagesFeature
    {

        private static TechTalk.SpecFlow.ITestRunner testRunner;

        pr// ------------------------------------------------------------------------------
//  <auto-generated>
//      This code was generated by SpecFlow (http://www.specflow.org/).
//      SpecFlow Version:2.3.0.0
//      SpecFlow Generator Version:2.3.0.0
// 
//      Changes to this file may cause incorrect behavior and will be lost if
//      the code is regenerated.
//  </auto-generated>
// ------------------------------------------------------------------------------
+ Designer generated code

Обратите внимание на наличие здесь дублированных блоков кода.Похоже, что восстановленный код был добавлен где-то посередине старого кода (где мы видим «pr // ---»).

Другим примером может быть файл за кодом с синтаксической ошибкой, такой как пропущенные скобкиили неправильное форматирование.

Все тестовые проекты в моем решении имеют следующие пакеты:

  • MSTest.TestAdapter v1.3.2
  • MSTest.TestFramework v1.3.2
  • SpecFlow v2.3.1
  • SpecFlow.MsTest v2.3.1
  • .Net Framework 4.6.2

Провайдер модульного тестирования - mstest.v2.

До сих пор я пытался очистить файлы SpecFlow в% TEMP%.Я убедился, что во всех проектах установлена ​​одна и та же версия SpecFlow.Я очистил решение и сделал восстановление.Если я запускаю специальный инструмент для каждого файла функций по отдельности, я никогда не получаю эту проблему.

Я ценю вашу помощь!

1 Ответ

0 голосов
/ 27 февраля 2019

Проблема была вызвана проектами с длинными именами, вложенными папками и описаниями длинных тестовых сценариев.Я укорачиваю описания сценариев в одном из файлов функций, в которых постоянно скрывается задний код, и после этого проблема исчезла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...