我在 Visual Studio Code 中遇到了一个持续存在的问题,其中“转到定义”功能(Ctrl+单击)不适用于 SpecFlow 步骤。尽管测试执行成功,IDE 仍无法找到相应的步骤定义。这极大地阻碍了开发效率和对测试流程的理解。
要点:
测试用例执行没有问题。
问题似乎特定于 VS Code 的导航功能。
“转到定义”适用于其他方法和函数。
我正在使用 Appium 进行移动自动化。
使用的扩展:
.NET 工具包
Appium
Appium 套件
适用于 VS Code 的 Appium 工具箱
C#
C# 开发套件
C# 扩展
黄瓜
黄瓜(小黄瓜)全力支持
黄瓜快速
黄瓜步骤定义生成器
功能语法突出显示和片段
小黄瓜的片段和语法突出显示
SpecFlow 步骤定义生成器
SpecFlow 工具
采取的故障排除步骤:
禁用所有与 Cucumber 相关的扩展。
检查了 VS Code 设置的实验性功能和 C# 语言服务配置。
重新启动 VS Code。
重新索引工作区。
清理并重建项目。
更新了 VS Code 和扩展。
Update: I resolved it.
I had to add the following configuration in my settings.json.
{ "cucumberautocomplete.steps": [
"MobileAutomationFramework/StepDefinitions/*.cs",
"MobileAutomationFramework/StepDefinitions/**/*.cs"],
"cucumberautocomplete.syncfeatures": "MobileAutomationFramework/Features/*",
"cucumberautocomplete.strictGherkinCompletion": true,
"cucumberautocomplete.smartSnippets": true,
"cucumberautocomplete.skipDocStringsFormat": true,
"dotnetAcquisitionExtension.existingDotnetPath": [
]
}