【问题标题】:How do I write unit tests in Cypress? Is that even possible? [closed]如何在 Cypress 中编写单元测试?这甚至可能吗? [关闭]
【发布时间】:2021-11-22 22:08:41
【问题描述】:

我正在使用 Cypress 和 Cucumber 来使用行为驱动开发 (BDD) 开发带有 vue.js 的前端。我已经可以使用 Cypress 进行端到端测试,但我还需要创建和运行单元测试。我在赛普拉斯官方网站上找不到任何东西。如何为此前端创建和运行单元测试?

【问题讨论】:

标签: javascript html vue.js unit-testing cypress


【解决方案1】:

您可以在official docs 中找到所有与单元测试相关的配方。

假设您想对应用程序代码中的数学函数进行单元测试,您可以使用 Cypress 进行:

/// <reference types="cypress" />

import math from '../../math'

describe('Unit Test Application Code', function () {
  const { add, divide, multiply, subtract } = math

  before(() => {
    // check if the import worked correctly
    expect(add, 'add').to.be.a('function')
  })

  context('math.js', function () {
    it('can add numbers', function () {
      expect(add(1, 2)).to.eq(3)
    })

    it('can subtract numbers', function () {
      expect(subtract(5, 12)).to.eq(-7)
    })

    it('can divide numbers', function () {
      expect(divide(27, 9)).to.eq(3)
    })

    it('can muliple numbers', function () {
      expect(multiply(5, 4)).to.eq(20)
    })
  })
})

【讨论】:

  • 这不是一个有用的答案,每个meta.stackexchange.com/q/225370/248731
  • @jonrsharpe 我已经编辑了我的答案。让我知道你的想法。我不确定如何改进这个答案,因为这个问题非常笼统。
  • 由于这个问题是超级通用的,文档的链接最好作为评论,而不是试图猜测 OP 是什么单元测试。
  • @Manuel Abascal 我正在测试登录注销和注册网页。非常简单的实现,没有后端(响应被存根)。例如,我将如何对按钮进行单元测试?还是输入文本字段?
  • 这太笼统了,无法给您正确的答案。我想说阅读如何使用 Mocha、Chao 和 Sinon.js 进行操作,然后使用 Cypress 重新实现单元测试,它在引擎盖下使用 Mocha、Chai 和 Sinonjs
猜你喜欢
  • 1970-01-01
  • 2014-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-15
  • 1970-01-01
  • 2018-03-13
相关资源
最近更新 更多