실행 npm 테스트에서는 디버그에서 터미널 VSCode

0

질문

나를 만들려고 구성 내에서 실행됩니다.json 는 것이 실행 npm test 에 있는 폴더 .js 파일을 수 있습니다. 실행 npm test 수동으로 터미널에서 잘 작동하고,관련 명령에 scriptspackage.json:

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

특히,실행하는 경우 npm test 직접 터미널에서,env var 에서 지정 test 스크립트선효과 --experimental-json-modules 깃발로 전달됩 node.

이것은 나의 실행합니다.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"
        }
    ]
}

이것은 거대로 하나에서 미리 정의된 옵션에서 제시한 편집기와 매우 유사하 .

하지만 실행할 때 이에 대한 구성 nodeserver.js 파일을 얻을:

enter image description here

그것을 실행하는 것으로 보인 node 없이 국가 구성에 지정된? 나는 무엇을 오해하는 방법에 대해 이 launch.json 계획 작동합니까?

편집을 더 많이,더 많은 것 같으면 구성은 단지 완전히 무시하도록 사용하여 기본 node.js 구성...나는 선택 config 에서 드롭다운 메뉴를 누르면 플레이 아이콘:

enter image description here

해야 하는 작동하는가?

에서 떨어져 실행 npm start 터미널에서만"자동적인"방법의이 작동하려면 열어 package.json 을 클릭하면 작은 디버그 버튼이 나타납하여 scripts 태그:

enter image description here

그러나 나는 그 밖으로 사용하는 방법 launch.json 제대로 전달할 수 있도록 환경 변수 등을 통해하는 대신 합니다.

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

할 수 있을 만들려고 하 npm 테스트를 스크립트에서 직접 실행합니다.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": [
    {
        "name": "Run npm test",
        "request": "launch",
        "type": "node",
        "args": ["--experimental-json-modules", "${workspaceFolder}/nodeserver"],
        "env": {
           "MY_VAR": "abc"
        }

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

정확히 동일한 발생 이 launch.json 그것은 보인다면 구성은 단지 완전히 무시하도록 사용하여 기본 node.js 시작 구성이 있습니다.
drmrbrewer
0

실행합니다.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"
            ],
        }
    ]
}

참고: https://code.visualstudio.com/docs/nodejs/nodejs-debugging

2021-12-02 10:34:50

정확히 동일한 발생 이 launch.json 그것은 보인으로 구성(을 포함하여 --experimental-json-modules arg)은 그냥 되는 완전히 무시하도록 사용하여 기본 node.js 시작 구성없이,args. 어쩌면 나를 이렇게 잘못은 그것을 하고 있는가? 방법은 있어요 그것은 원래에 게시합니다.
drmrbrewer

@drmrbrewer 내 프로파일을 선택하고 다음 F5 키를 누릅니다. 가하는 스위치를 테스트하고 일했다. i.imgur.com/CiRXX6X.png
John

네. F5 해당하이 무엇을 하 고 있었는데...누르면"play"버튼을 옆에 프로필 이름이 아직도 나는 같은 오류가 및 런타임 args 지정한은 그냥 되는 완전히 무시하고...아무 생각이 무엇이 일어나고 있는지 잘 알지 못합니다.
drmrbrewer

다른 언어로

이 페이지는 다른 언어로되어 있습니다

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