Bežecká npm test v debug terminálu v VSCode

0

Otázka

Snažím sa vytvoriť konfiguračný v mojom štarte.json, ktorá bude prebiehať npm test v priečinku, v ktorom .js súbor nachádza. Beh npm test ručne v terminál funguje, pričom sa príslušný príkaz z scripts súčasťou mojej package.json:

"scripts": {
    "start": "node --experimental-json-modules nodeserver.js",
    "test": "export MY_VAR=abc && node --experimental-json-modules nodeserver.js"
},

Najmä, keď beží npm test priamo v terminál, env var uvedené v test skript line nadobudne účinnosť a --experimental-json-modules vlajka je odovzdaný node.

Toto je môj začať.json:

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "command": "npm test",
            "name": "Run npm test",
            "request": "launch",
            "type": "node-terminal"
        }
    ]
}

To je skoro ako-je z jednej z preddefinovaných možností navrhol v editore, a je veľmi podobné tejto.

Ale keď som sa spustiť túto konfiguráciu na nodeserver.js súbor, som si:

enter image description here

Zdá sa, že to beží node bez vlajky som uvedených v konfigurácii? Čo som nedorozumenia o tom, ako tento launch.json systém funguje?

UPRAVIŤ viac hral som okolo, tým viac sa zdá, ako keby konfigurácie je len úplne ignorovať, tak, že to používa predvolené node.js konfigurácia... ja som výbere config z drop-down a stlačíte ikonu prehrať:

enter image description here

Malo by to fungovať?

Na rozdiel od spustenia npm start v terminál, len "automatické" spôsob, ako dostať toto do práce je otvorením package.json a kliknutím na malú Debug tlačidlo, ktoré sa objaví pri scripts značky:

enter image description here

Ale ja by som chcel prísť na to, ako používať launch.json správne tak, že môžem prejsť prostredia premenných atď prostredníctvom že miesto.

debugging node.js npm visual-studio-code
2021-11-23 19:08:15
2
0

Môžete sa pokúsiť vytvoriť npm test skript priamo vo vašom začať.json, ako je uvedené vyššie:

{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
    {
        "name": "Run npm test",
        "request": "launch",
        "type": "node",
        "args": ["--experimental-json-modules", "${workspaceFolder}/nodeserver"],
        "env": {
           "MY_VAR": "abc"
        }

    }
]
}
2021-11-29 11:39:31

Presne to isté sa deje s týmto launch.json príliš... zdá sa, ako keby konfigurácie je len úplne ignorovať, tak, že to používa predvolené node.js začať konfiguráciu.
drmrbrewer
0

spustenie.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "pwa-node",
            "request": "launch",
            "name": "Launch Program",
            "skipFiles": [
                "<node_internals>/**"
            ],
            "program": "${workspaceFolder}\\index.js"
        },
        {
            "type": "pwa-node",
            "request": "launch",
            "name": "Run Test",
            "skipFiles": 
            [
                "<node_internals>/**"
            ],

            // You can specify enviorment variables per config here
            // using key value pairs
            "env": 
            {
                "test_variable": "test value"
            },

            // You can also specify a .env file that contains them
            "envFile": "${workspaceFolder}/.env",

            // Here you specify the file you want launched
            "program": "${workspaceFolder}\\test.js",

            // add args to nodejs here
            "runtimeArgs": 
            [
                "--experimental-json-modules"
            ],
        }
    ]
}

Na odkaz: https://code.visualstudio.com/docs/nodejs/nodejs-debugging

2021-12-02 10:34:50

Presne to isté sa deje s týmto launch.json príliš... zdá sa, ako keby konfigurácii (vrátane --experimental-json-modules arg) je len úplne ignorovať, tak, že to používa predvolené node.js spustenie konfigurácie, bez akýchkoľvek args. Možno som len spustenie to nesprávne... ako ste to urobiť? Spôsob, akým robím to je v pôvodnom príspevku.
drmrbrewer

@drmrbrewer som vyberte profil, a potom stlačte kláves F5. Len som dal, že sa prepnúť test a fungovalo to. i.imgur.com/CiRXX6X.png
John

Áno. F5 je ekvivalentom to, čo som robil... stlačení tlačidla "play" vedľa názvu profilu... stále mám rovnaké chyby a runtime args uvedené sú len je úplne ignorovaný... tušenie, čo sa deje.
drmrbrewer

V iných jazykoch

Táto stránka je v iných jazykoch

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................