使用Gulp任务和WebStorm调试Protractor测试

问题描述 投票:0回答:1

我使用gulp任务运行我的Protractor测试,并传递gulp任务中的所有参数,如:

gulp protractor-integration --useProxy=true --baseUrl=http://10.222.25.18:81 --apiUrl=10.124.22.213:8080 --suite=tests

我试图在WebStorm for Gulp中设置配置并在那里传递所有参数。当我点击运行时,执行正确的测试。当我设置一个断点并点击调试时,执行测试并且WebStorm不会在断点处停止。

WebStorm for Debugging中的Gulp配置不起作用。样本图片

image

debugging gulp protractor webstorm
1个回答
1
投票

Gulp run配置不应该用于量角器测试调试 - 它旨在运行/调试Gulp任务。要调试某些Node.js应用程序(如Protractor测试),您需要确保将调试参数(--debug-brk / inspect-brk)传递给启动应用程序的Node进程。在您的情况下,应用程序由Gulp生成为子进程。 IDE只能将调试args传递给主进程(Gulp),这就是为什么只调试Gulp任务本身而不是这些任务启动的子进程。

如果您仍然喜欢使用Gulp来开始测试而不是使用专用的Protractor运行配置,请确保使用--debug-brk / inspect-brk启动量角器过程。

这样做,你需要相应地改变node_modules/gulp-protractor/index.js。例如,如下修改childProcess.fork调用将使用--inspect-brk=5860启动Protractor:

child = childProcess.fork(getProtractorCli(), args, {
            stdio: 'inherit',
            env: process.env,
            execArgv: ['--inspect-brk=5860'] //added line
        }).on('exit', function(code) {
...
© www.soinside.com 2019 - 2024. All rights reserved.