Specflow文件夹结构调整后.feature文件丢失仅显示.feature.cs求助
Specflow目录迁移后feature文件被标记Ignored无法显示解决方案
首先排查.gitignore规则冲突
异常文件标Ignored通常是Git忽略规则命中导致,VS的Git集成会同步标记匹配规则的文件为忽略状态,最终Specflow插件无法识别为合法功能文件。在项目根目录执行git check-ignore -v 异常feature文件的完整路径,如果输出了对应的忽略规则,直接调整项目或全局.gitignore文件,排除对应feature文件路径即可。修复项目文件的项关联配置
- 右键项目选择「卸载项目」,再次右键选择「编辑项目文件(.csproj/.vbproj)」
- 查找所有对应异常feature文件的配置节点,正常Specflow feature文件的配置格式如下:
<None Update="feature文件的相对路径"> <Generator>SpecFlowSingleFileGenerator</Generator> <LastGenOutput>对应feature文件名.feature.cs</LastGenOutput> </None> <Compile Update="对应feature文件名.feature.cs"> <DependentUpon>对应feature文件名.feature</DependentUpon> <DesignTime>True</DesignTime> <AutoGen>True</AutoGen> </Compile>- 确认feature文件没有被错误配置为
<Ignored>节点,修正所有错误配置后保存项目文件,重新加载项目即可。
重置VS组件缓存和Specflow插件缓存
关闭所有VS窗口,删除以下两个目录的全部内容:%LOCALAPPDATA%\Microsoft\VisualStudio\<你的VS版本号>\ComponentModelCache%TEMP%\SpecFlow
重启VS后右键解决方案执行「清理解决方案」,再执行「重新生成解决方案」。
强制重置步骤绑定
如果上述操作完成后仍存在步骤绑定找不到的问题,打开VS菜单栏「工具」->「选项」->「Specflow」,勾选「启用运行时步骤发现」,重启VS后重新生成项目即可。
内容的提问来源于stack exchange,提问作者Mumfi
相关产品推荐
相关产品推荐

