SyntaxError:尝试在 e2e 测试中导入量角器时出现意外的令牌导入以获取角度

bob*_*e01 1 typescript protractor angular

我已经编写了一个 angular 4 应用程序,现在我正在尝试使用Protractor.

我在这里错过了什么吗?

尝试运行测试脚本时出错:

[rob@work repo]$ npm run e2e

> repo@1.0.0 e2e /home/rob/git/repo
> protractor protractor.config.js

[20:12:24] I/launcher - Running 1 instances of WebDriver
[20:12:24] I/hosted - Using the selenium server at http://localhost:4444/wd/hub
[20:12:25] E/launcher - Error: /home/rob/git/repo/test/e2e/app.ui.test.ts:3
import { browser } from 'protractor';
^^^^^^
SyntaxError: Unexpected token import
    at Object.exports.runInThisContext (vm.js:76:16)
    at Module._compile (module.js:542:28)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at /home/rob/git/repo/node_modules/jasmine/lib/jasmine.js:93:5
    at Array.forEach (native)
[20:12:25] E/launcher - Process exited with error code 100
Run Code Online (Sandbox Code Playgroud)

量角器.config.js

exports.config = {
  framework: 'jasmine',
  seleniumAddress: 'http://localhost:4444/wd/hub',
  multiCapabilities: [{
    'browserName': 'chrome'
  }],
  specs: ['test/e2e/**/*.ts'],
  mochaOpts: {
    reporter: 'spec',
    slow: 5000,
    timeout: 5000
  }
};
Run Code Online (Sandbox Code Playgroud)

e2e 测试文件 ( app.ui.test.ts):

'use strict';
import { browser } from 'protractor';
const HOST_URL = 'http://localhost:1344';

describe('hello world', function() {

  describe('hello world app', function() {
    const FULL_URL = HOST_URL + '/';
    it('should greet', function() {
      browser.get(FULL_URL);
    });
  });
});
Run Code Online (Sandbox Code Playgroud)

目录结构:

??? protractor.config.js
??? test
?   ??? e2e
?       ??? app.ui.test.ts
Run Code Online (Sandbox Code Playgroud)

wsw*_*ion 5

您首先需要*.ts在运行之前转换您的-files,就像您对应用程序源文件所做的一样。

也许会帮助你解决这个问题。