【发布时间】:2021-09-11 11:55:40
【问题描述】:
首先。我特意重新学习 JS/Cypress,我特意从基础开始,所以提前道歉。
我目前正在使用 Cypress 进行 REST API 测试。我正在从现有的 Ruby/Selenium 框架迁移测试,我想使用类似于编写 Ruby 函数的东西来清理我的代码,因为我目前正在复制代码。
一个例子: 我有一段代码可以生成过去 365 天的日期(在这种情况下使用 ISOString 是有原因的)
var date = new Date();
date.setDate(date.getDate() - 365)
var minDate = date.toISOString().split('T')[0]
我想做类似的事情
Cypress.Command.add('dateGen', () => {
var date = new Date();
date.setDate(date.getDate() - 365)
var minDate = date.toISOString().split('T')[0]
})
并调用它。在这种情况下,我想使用类似的东西将它调用到我的测试中
(请原谅不正确的语法,我只是将其作为类似(Ruby / JS)插图的方式):
var date = cy.dateGen
但是,在任何 js/cypress 友好组合中运行它都会失败,因为命令不返回值。
我已经准备好在index.js 等中使用命令,所以那个位不会给我带来任何问题。我已经在对不返回值的事情使用命令,所以我知道我做的很正确。
【问题讨论】:
-
@jonrsharpe 我已经看到了。我希望可能有一种更清洁的方法,不涉及安装 npm 包
标签: javascript mocha.js cypress