首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获取错误‘MSB4018’GenerateFeatureFileCodeBehindTask任务意外失败。当从特性文件生成步骤定义时

获取错误‘MSB4018’GenerateFeatureFileCodeBehindTask任务意外失败。当从特性文件生成步骤定义时
EN

Stack Overflow用户
提问于 2020-10-28 02:25:06
回答 1查看 2.1K关注 0票数 1

Visual :2017 C#频谱:3.4.31

代码语言:javascript
运行
复制
Severity    Code    Description Project File    Line    Suppression State
Error   MSB4018 The "GenerateFeatureFileCodeBehindTask" task failed unexpectedly.
System.Exception: Unit test Provider already set.
   at TechTalk.SpecFlow.UnitTestProvider.UnitTestProviderConfiguration.UseUnitTestProvider(String unitTestProviderName)
   at TechTalk.SpecFlow.NUnit.Generator.SpecFlowPlugin.GeneratorPlugin.Initialize(GeneratorPluginEvents generatorPluginEvents, GeneratorPluginParameters generatorPluginParameters, UnitTestProviderConfiguration unitTestProviderConfiguration)
   at TechTalk.SpecFlow.Generator.GeneratorContainerBuilder.LoadPlugins(ObjectContainer container, GeneratorPluginEvents generatorPluginEvents, UnitTestProviderConfiguration unitTestProviderConfiguration, IEnumerable`1 generatorPlugins)
   at TechTalk.SpecFlow.Generator.GeneratorContainerBuilder.CreateContainer(SpecFlowConfigurationHolder configurationHolder, ProjectSettings projectSettings, IEnumerable`1 generatorPluginInfos, IObjectContainer parentObjectContainer)
   at SpecFlow.Tools.MsBuild.Generation.WrappedGeneratorContainerBuilder.BuildGeneratorContainer(SpecFlowConfigurationHolder specFlowConfigurationHolder, ProjectSettings projectSettings, IReadOnlyCollection`1 generatorPluginInfos, IObjectContainer rootObjectContainer)
   at SpecFlow.Tools.MsBuild.Generation.GenerateFeatureFileCodeBehindTaskExecutor.Execute()
   at SpecFlow.Tools.MsBuild.Generation.GenerateFeatureFileCodeBehindTask.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() LearningStepByStep  C:\Users\***\.nuget\packages\specflow.tools.msbuild.generation\3.4.31\build\SpecFlow.Tools.MsBuild.Generation.targets   93  
EN

回答 1

Stack Overflow用户

发布于 2020-10-28 12:21:51

如果项目中有以下两个NuGet包,则会出现此错误:

  • SpecRun.SpecFlow*
  • SpecFlow.xUnit
  • SpecFlow.NUnit
  • SpecFlow.MsTest

来自:https://docs.specflow.org/projects/specflow/en/latest/Installation/Unit-Test-Providers.html

从SpecFlow 3开始,您可以通过NuGet包配置要使用的单元测试运行程序。只需删除您不想使用的单元测试运行程序的NuGet包,错误就会消失。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64565635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档