Protractor: Visual Studio Codeで分度器テストをデバッグしているときにキュウリエラーが表示されますが、実行モードではすべて正常に動作します

作成日 2018年04月09日  ·  3コメント  ·  ソース: angular/protractor

あいさつチーム、

「ビジュアルスタジオコード」で分度器キュウリの基本的なセットアップを行いましたが、ターミナルから実行するとすべてが正常に機能します。 ただし、Visual Studio Codeを使用してデバッグすると、バージョンエラーが発生します。 私はCucumberをグローバルにインストールしていません。 ローカルディレクトリにnpminstallを使用してインストールしましたが、2つの異なるバージョンを保持しているというエラーメッセージが表示されます。 どうしてそれが可能になるのですか?

このエラーメッセージは実行モードでも表示されるはずですが、デバッグモードでのみ表示されるのはなぜですか。 以下のエラーを参照してください。

** [18:34:15] I / launcher-WebDriverの1つのインスタンスを実行しています
logger.js:158
[18:34:15] I / local-Seleniumスタンドアロンサーバーを起動しています...
logger.js:158
[18:34:16] I / local-Seleniumスタンドアロンサーバーがhttp://10.12.2.155:60837 / wd / hubで起動しました
logger.js:158
未処理の拒否エラー:
debuggability.js:868
キュウリのインストールを実行しているようです(おそらくグローバルインストール)
これは、ローカルインストール(サポートファイルで必要なもの)とは異なります。
cucumberを機能させるには、サポートファイルで必要とされるのと同じインストールを実行する必要があります。
ローカルにインストールされたバージョンを実行して、テストを実行してください。
実行パス:D:\ Prog Test \ protractor-cucumber-master \ node_modules \ cucumber \ lib \ index.js
ローカルパス:d:\ Prog Test \ protractor-cucumber-master \ node_modules \ cucumber \ lib \ index.js

D:\ Prog Test \ protractor-cucumber-master \ node_modules \ cucumbersrc \ cli \ install_validator.js:17:11
Generator.nextで()。
Generator.tryCatcherで(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ util.js:16:23)
PromiseSpawn._promiseFulfilled(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ generators.js:97:49)
Promise._settlePromise(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ promise.js:574:26)
Promise._settlePromise0(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ promise.js:614:10)
Promise._settlePromises(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ promise.js:693:18)
Async._drainQueue(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ async.js:133:16)
Async._drainQueuesで(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ async.js:143:10)
Immediate.Async.drainQueues(D:\ Prog Test \ protractor-cucumber-master \ node_modules \ bluebird \ js \ release \ async.js:17:14)
runCallbackで(timers.js:794:20)
tryOnImmediate(timers.js:752:5)で
processImmediate [as _immediateCallback](timers.js:729:5)
[18:34:25] E /ランチャー-バグ:ランチャーは1つのタスクが残っている状態で終了しました
logger.js:158 **

_以下は、「npminstall」の実行後にインストールされたpackage.jsonの依存関係です。

`{
"devDependencies":{
"babel-cli": "^ 6.26.0"、
"babel-preset-es2015": "^ 6.24.1"、
"babel-register": "^ 6.26.0"、
"チャイ": "^ 4.1.2"、
"chai-as-promised": "^ 7.1.1"、
「きゅうり」:「^ 3.2.1」、
"cucumber-html-report": "^ 0.6.2"、
"cucumber-html-reporter": "^ 3.0.4"、
"cucumberjs-allure-reporter": "^ 1.0.3"、
"mkdirp": "^ 0.5.1"、
「分度器」:「^ 5.2.0」、
"分度器-キュウリ-フレームワーク": "^ 4.1.1"
}、

}
`

最も参考になるコメント

.vscode/launch.jsoncwd $を次のように指定する必要があります。

"cwd": "$ {workspaceRoot}"

"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Launch Program",
        "cwd": "${workspaceRoot}",
        "program": "${workspaceRoot}/node_modules/protractor/bin/protractor",
        "stopOnEntry": false,
        "args": [
            "${workspaceRoot}/config/config.js"
        ],
    }
]

全てのコメント3件

.vscode/launch.jsoncwd $を次のように指定する必要があります。

"cwd": "$ {workspaceRoot}"

"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Launch Program",
        "cwd": "${workspaceRoot}",
        "program": "${workspaceRoot}/node_modules/protractor/bin/protractor",
        "stopOnEntry": false,
        "args": [
            "${workspaceRoot}/config/config.js"
        ],
    }
]

ProtractorとVSCodeでも同じ問題が発生します。
同じプロジェクトでcucumber-jsを直接使用してみましたが、正常に機能するため、これは分度器または分度器-キュウリ-フレームワークに関連している必要があります

これを投稿していただきありがとうございます! 1年以上後にそれを見つけ、「cwd」修正が機能しました。

このページは役に立ちましたか?
0 / 5 - 0 評価