У меня есть решение, которое состоит из пары проектов.У меня есть 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.Я очистил решение и сделал восстановление.Если я запускаю специальный инструмент для каждого файла функций по отдельности, я никогда не получаю эту проблему.
Я ценю вашу помощь!