Сопоставление функций с определениями шагов в файле настроек для плагина "VSCode Cucumber (Gherkin): полная поддержка языков + форматирование + автозаполнение" - PullRequest
7 голосов
/ 18 января 2020

Итак, я только что скачал плагин "VSCode Cucumber (Gherkin) для полной поддержки языков + форматирование + автозаполнение", чтобы помочь с форматированием огурцов в моем редакторе vscode. Как видно из их документации, плагин «VSCode Cucumber (Gherkin) ...» поддерживает функцию, которая позволит вам увидеть связь между файлами объектов, определениями шагов и объектами страницы, наведя указатель мыши на соответствующий текст в файле .feature. ,

Однако документация плагинов "VSCode Cucumber (Gherkin) ..." по сопоставлению путей между файлами невелика. Кто-нибудь знает, как создать синтаксическую связь между файлами объектов, определениями шагов и объектами страниц при следующей структуре каталогов?

src
├── features
│   ├── accessibility
│   │   └── FeatureFile.feature
│   ├── Directory
│   │   ├── featureFile.feature
│   │   ├── SomeDirectory
│   │   │   ├── FeatureFile.feature
│   ├── step_definitions
│   │   ├── SomeDirectory
│   │   │   ├── someFile.js
│   │   │   ├── given.js
│   │   │   └── then.js
│   │   ├── given.js
│   │   ├── someFeature.js
│   │   ├── then.js
│   │   └── when.js
├── pageobjects
│   ├── SomeDirectory
│   │   ├── SomeFeature

Для справки, это пример их документации того, как должен выглядеть файл конфигурации vscode для включения этих функций

{
"cucumberautocomplete.steps": [
    "test/features/step_definitions/*.js",
    "node_modules/qa-lib/src/step_definitions/*.js"
],
"cucumberautocomplete.syncfeatures": "test/features/*feature",
"cucumberautocomplete.strictGherkinCompletion": true,
"cucumberautocomplete.strictGherkinValidation": true,
"cucumberautocomplete.smartSnippets": true,
"cucumberautocomplete.stepsInvariants": true,
"cucumberautocomplete.customParameters": [
    {
        "parameter":"{ab}",
        "value":"(a|b)"
    },
    {
        "parameter":/\{a.*\}/,
        "value":"a"
    },
],
"cucumberautocomplete.pages": {
    "users": "test/features/page_objects/users.storage.js",
    "pathes": "test/features/page_objects/pathes.storage.js",
    "main": "test/features/support/page_objects/main.page.js"
},
"cucumberautocomplete.skipDocStringsFormat": true,
"cucumberautocomplete.formatConfOverride": {
    "And": 3,
    "But": "relative",
},
"cucumberautocomplete.onTypeFormat": true,
"editor.quickSuggestions": {
    "comments": false,
    "strings": true,
    "other": true
}

1 Ответ

1 голос
/ 27 января 2020

cucumberautocomplete.steps должен иметь массив допустимых путей. В вашем случае вы можете просто указать ["path_to_src/features/step_definitions/*.js"]. И если вы хотите прочитать шаги в любых папках в sr c, вы можете просто упомянуть ["path_to_src/**/*.js"]

...