2016-07-13 4 views
1

Specflow 2.1, NUnit 3.4 및 Visual Studio 2015 사용하기 소스 코드를 git에 제출하도록 수정했습니다. 내가 Foobar.feature.cs에 도착했을 때 그것이 자동 생성되었다고합니다. csproj 파일에서 컴파일되고 (의미 있음), 기능 파일에 따라 생성된다는 것을 알 수 있습니다.소스 제어에 class.feature.cs 파일을 포함시켜야합니까?

<ItemGroup> 
    <Compile Include="Properties\AssemblyInfo.cs" /> 
    <Compile Include="Foobar.feature.cs"> 
     <AutoGen>True</AutoGen> 
     <DesignTime>True</DesignTime> 
     <DependentUpon>Foobar.feature</DependentUpon> 
    </Compile> 
    <Compile Include="FoobarSteps.cs" /> 
</ItemGroup> 
<ItemGroup> 
    <None Include="App.config" /> 
    <None Include="packages.config" /> 
    <None Include="Foobar.feature"> 
     <Generator>SpecFlowSingleFileGenerator</Generator> 
     <LastGenOutput>Foobar.feature.cs</LastGenOutput> 
    </None> 
</ItemGroup> 

그래서 평범하지 않습니다. 내 코드가 원점/마스터로 푸시 된 후 우리는 젠킨스를 시작하여 호기심에서 벗어나 feature.cs 파일을 밖으로 옮겼다가 빌드하려고 시도했지만 누락 된 파일 때문에 빌드가 실패했습니다. 지형지 물 파일을 열고 변경 사항을 저장하지 않았으므로 (생성기가 파일을 생성하도록) 저장 한 다음 다시 빌드합니다.

이 방법이 있습니까? 차라리 자동 생성 코드를 소스에 생성 할 필요가 없습니다.

답변

2

다른 테스트 주자가 시나리오를 테스트로 인식 할 수있는 코드가 있으므로 코드 숨김 파일이 필요합니다.

해당 항목을 확인하지 않으려는 경우에는 빌드 할 때 생성 할 수 있습니다.

설명 방법은 http://www.specflow.org/documentation/Generate-Tests-from-MsBuild/을 참조하십시오.

관련 문제