2017-01-27 2 views
2

Foo.feature을 편집하면 SpecFlow가 Foo.feature.cs을 덮어 쓰지 않고 Foo1.feature.cs을 새로 만듭니다. 그런 다음 중복 된 파일은 중복 된 심볼로 인해 컴파일 오류를 발생시킵니다.SpecFlow 기능 파일을 편집 할 때 .feature.cs 파일이 중복됩니다.

내 프로젝트의 .feature 파일 중 하나에서만 발생합니다. 다른 모든 파일은 정상적으로 작동합니다. 모든 .feature 및 .feature.cs 파일은 소스 제어하에 있으며 Foo.csproj 파일에 추가됩니다.

답변

2

은 내가 문제를 찾은 것 같아 - 내 .csproj 파일에 나는이 항목을했다 :

<None Include="Foo.feature"> 
    <Generator>SpecFlowSingleFileGenerator</Generator> 
    <LastGenOutput>Foo1.feature.cs</LastGenOutput> 
</None> 

내가 <LastGenOutput>가 SpecFlow 혼란이라고 생각합니다. 어디서 왔는지는 모르지만 <LastGenOutput>Foo.feature.cs</LastGenOutput>으로 변경하면 문제가 해결됩니다.

SpecFlow 및 "LastGenOutput"에 대한 검색 후이 스레드 - https://groups.google.com/forum/#!topic/specflow/SpOihmvoAOQ을 발견했습니다. 동일한 문제 및 해결책을 요약합니다.

문제는 매우 성가심을 나타냅니다. 가능한 해결책 (위험 부담 있음)

  1. Visual Studio의 모든 YourFeature1.feature.cs 파일을 삭제하십시오. 프로젝트를 저장하다.

    YourFeature.feature에

    변화를

YourFeature1.feature.cs :

  • 가까운 비주얼 스튜디오, 이것과 같은 라인을 찾아 메모장
  • 로 .csproj 파일을 엽니 다 .cs

    저장하고 Visual Studio에서 프로젝트를로드하십시오. 즐겨.

  • 하지만 해결책을 이미 알고 있어야 해당 스레드를 찾을 수 있습니다.

    +1

    .feature 파일을 복사하기 전에이 문제가 발생했습니다. 이것은 나를 위해 그것을 고정. –

    관련 문제