无法使用VS代码中的量角器调试角度e2e测试

时间:2019-07-23 08:48:14

标签: protractor

我无法在调试模式下运行我的angular e2e测试。 browser.debug()无法正常工作。

节点版本-10.13.0 角度8 量角器-5.4.2

这是我的vs代码的launch.json文件的示例。

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "ng e2e",
      "type": "node",
      "request": "launch",
      "program": "${workspaceRoot}/node_modules/protractor/bin/protractor",
      "protocol": "inspector",
      "args": ["${workspaceRoot}/e2e/protractor.conf.js"]
    }
  ]
}

错误日志::

at Module._compile (internal/modules/cjs/loader.js:688:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)

Error log Image

1 个答案:

答案 0 :(得分:0)

请勿使用browser.debug()方法,它不适用于禁用的控制流。

您有两个选择:

  1. debugger关键字添加到要调试的测试用例中。

    it('should greet the named user', async function() {
      debugger;
      await browser.get('http://www.angularjs.org');
    
      await element(by.model('yourName')).sendKeys('Julie');
    
      var greeting = element(by.binding('yourName'));
    
      expect(await greeting.getText()).toEqual('Hello Julie!');
    
    });
    
  2. VSCode中添加一个断点。

    enter image description here

然后按F5Ctrl+F5按钮运行测试。

这是我的launch.json文件,可以正常工作:

   {
     "version": "0.2.0",
     "configurations": [
     {
        "type": "node",
        "request": "launch",
        "name": "Run",
        "program": "${workspaceRoot}/node_modules/protractor/bin/protractor",
        "protocol": "inspector",
        "args": [
            "${workspaceRoot}/e2e/protractor.conf.js",
        ],
        "console": "integratedTerminal"
     },
     ]
   }