【问题标题】:Using CoffeeScript with cypress.io将 CoffeeScript 与 cypress.io 一起使用
【发布时间】:2017-11-02 09:45:15
【问题描述】:

在将 cypress.io 与 CoffeeScript 一起使用时遇到问题。测试失败,但出现以下异常:

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

代码:

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

cypress.io 支持 CoffeeScript,如 the documentation 所示

我安装了 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);
  });
});

这可能是什么问题?

【问题讨论】:

    标签: javascript coffeescript e2e-testing cypress


    【解决方案1】:

    Cypress 测试绝对适用于 CoffeeScript。作为 Cypress 的开发人员,我知道是因为我们几乎所有自己的 Cypress 测试都是用 CoffeeScript 编写的。

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

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

    我目前的建议:

    1. 再次检查您的测试文件的文件扩展名是.coffee
    2. 如果您有很多测试代码,请简化它。一次删除 1 行,直到它起作用。

    如果你复制/粘贴下面的测试代码应该可以工作:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-10-14
      • 2013-08-24
      • 2013-07-10
      • 1970-01-01
      • 2013-11-28
      • 2012-11-12
      • 2013-03-14
      相关资源
      最近更新 更多