使用CoffeeScript与cypress.io

时间:2017-11-02 09:45:15

标签: javascript coffeescript e2e-testing cypress

使用CoffeeScript cypress.io时遇到问题。测试失败,但有以下异常:

describe('testFn', function() {
                ^
ParseError: reserved word "function"

代码:

describe 'testFn', () ->
    it 'testIt', () ->
        # a test

the documentation

中显示的cypress.io支持CoffeeScript

我安装了cypress.io依赖项,我尝试将其与@cypress/coffee-script package一起使用,但它似乎不起作用。

的package.json:

...
"cypress": "^1.0.3",
"@cypress/coffee-script": "^0.1.2",
...

当使用具有已转换的CoffeeScript代码的.js文件时,测试会运行:

describe('testFn', function() {
  return it('testIt', function() {
    expect(true).to.equal(true);
  });
});

这可能是什么问题?

1 个答案:

答案 0 :(得分:0)

赛普拉斯测试绝对适用于CoffeeScript。作为赛普拉斯的开发人员,我知道因为我们在CoffeeScript中编写了几乎所有自己的赛普拉斯测试。

话虽如此,如果您使用的是CoffeeScript 2,则不支持此功能(但coming soon}。

您不应该包含我们的内部@cypress/coffee-script包。我们只将它作为我们自己项目的依赖项,以便我们的每个应用程序都可以共享相同的CoffeeScript版本。

我现在的建议:

  1. 仔细检查测试文件的文件扩展名是否为.coffee
  2. 如果你有很多测试代码,请简化它。一次删除1行,直到它工作。
  3. 如果你复制/粘贴它,下面的测试代码应该有效:

    describe 'testFn', () ->
      it 'testIt', () ->
        expect(true).to.equal(true)