Нужно ли включать файл class.feature.cs в систему контроля версий?

2

Используя Specflow 2.1, NUnit 3.4 и Visual Studio 2015, я исправляю отправку исходного кода в git. Когда я добрался до Foobar.feature.cs он говорит, что он автогенерируется. Я вижу в файле csproj, что он скомпилирован (имеет смысл) и что он зависит от файла функции и что он сгенерирован.

<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>

так что ничего необычного там нет. После того, как мой код попадет в начало/мастер, мы будем запускать сборку jenkins, поэтому из любопытства я переместил файл feature.cs, попытался построить, и сборка завершилась неудачно из-за недостающего файла. Я открыл файл функции, ничего не изменил, но нажал save (так, чтобы генератор создал файл), а теперь снова работает.

Есть ли способ обойти это? Я бы предпочел не иметь автоматически сгенерированный код в источнике, когда он может быть сгенерирован.

Теги:
specflow
msbuild
jenkins

1 ответ

2
Лучший ответ

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

Если вы не хотите их проверять, вы можете сгенерировать их, когда будете строить.

См. Http://www.specflow.org/documentation/Generate-Tests-from-MsBuild/ для объяснения, как это сделать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню