1

在 Wercker 执行我的测试时,我不断收到这些错误。

not ok 1 PhantomJS 2.1 - Global error: SyntaxError: Unexpected token ')' at    http://localhost:7357/assets/vendor.js, line 15740
---
    Log: |
        { type: 'error',
          text: 'SyntaxError: Unexpected token \')\' at http://localhost:7357/assets/vendor.js, line 15740\n' }
...
not ok 2 PhantomJS 2.1 - Global error: Error: Could not find module ember-metal/core required by: ember-testing/index at http://localhost:7357/assets/test-support.js, line 62
---
    Log: |
        { type: 'error',
          text: 'Error: Could not find module ember-metal/core required by: ember-testing/index at http://localhost:7357/assets/test-support.js, line 62\n' }
...
not ok 3 PhantomJS 2.1 - Global error: ReferenceError: Can't find variable: define at http://localhost:7357/assets/frontend.js, line 9
---
    Log: |
        { type: 'error',
          text: 'ReferenceError: Can\'t find variable: define at http://localhost:7357/assets/frontend.js, line 9\n' }
...
not ok 4 PhantomJS 2.1 - Global error: ReferenceError: Can't find variable: define at http://localhost:7357/assets/tests.js, line 3
---
    Log: |
        { type: 'error',
          text: 'ReferenceError: Can\'t find variable: define at http://localhost:7357/assets/tests.js, line 3\n' }
...
not ok 5 PhantomJS 2.1 - Global error: ReferenceError: Can't find variable: EmberENV at http://localhost:7357/5866/tests/index.html?hidepassed, line 44
---
    Log: |
        { type: 'error',
          text: 'ReferenceError: Can\'t find variable: EmberENV at http://localhost:7357/5866/tests/index.html?hidepassed, line 44\n' }
...

当我通过 using 在我的 ember 项目中运行测试时,测试通过了。

余烬测试

只有在 Wercker 和使用 PhantomJS 时测试才会失败。我认为这与 PhantomJS 不支持 ES6 有关吗?但是在我的 .jshintrc 中,我添加了这一行:

"esversion": 6,

有没有办法让这些测试通过?


这些是我在 wercker.yml 中的步骤:

steps:
- script:
  name: yarn-install
  code: npm install -g yarn

- script:
  name: bower-install
  code: yarn global add bower

- script:
  name: phantomjs-prebuilt-install
  code: yarn global add phantomjs-prebuilt

- script:
  name: ember-cli
  code: yarn global add ember-cli

# A step that executes `npm install` command
- script:
  name: install-deps
  code: yarn install

- script:
  name: bower-install-deps
  code: bower install --allow-root

- script:
  name: tests
  code: ember test

- script:
  name: ember-build
  code: ember build
4

1 回答 1

0

现在将 phantomjs 版本更改为 1.9 似乎可以解决问题。

- script:
 name: phantomjs-prebuilt-install
 code: yarn global add phantomjs-prebuilt

至:

- script:
 name: phantomjs-prebuilt-install
 code: yarn global add phantomjs@1.9
于 2017-02-20T07:44:36.280 回答