如何在赛普拉斯中创建命令

生命力

在调试赛普拉斯测试时,我使用命令突出显示当前正在使用的元素

{CurrentElement}.then($el=> {$el.css('border', '1px solid magenta')})

我想创建一些更翔实和简短的内容。因此,我正在寻找commands.js中的自定义命令。但是我没有成功做到这一点。我试图在commands.js中创建自定义命令:

Cypress.Commands.add("highlight", $el=> {$el.css('border', '1px solid magenta')})

然后以这种方式在我的测试中使用它:

{CurrentElement}.then(highlight())

或像这样:

{CurrentElement}.then(highlight($el))

但是任何时候我得到ReferenceError:高亮都没有定义。我该如何执行工作命令?

阿农·阿克塞尔罗德

为了使用语法:

{CurrentElement}.then(highlight($el))

您不需要自定义命令。只需声明highlight为正常函数即可。

但是,使用自定义命令,您将可以按以下方式编写它:

{CurrentElement}.highlight();

哪个恕我直言更优雅。

为此,需要指定将命令应用于元素主题,如下所示:

Cypress.Commands.add("highlight", {prevSubject: 'element'}, $el=> {$el.css('border', '1px solid magenta')});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在赛普拉斯中访问baseURL的值

在赛普拉斯中,如何等待页面加载?

赛普拉斯(Cypress.IO):如何在select中获取所选选项的文本?

如何在赛普拉斯测试中公开/访问Redux之类的数据存储?

如何在赛普拉斯中返回文档尺寸以供以后测试

在赛普拉斯中创建随机字符串,并将其传递给cy命令

如何获得赛普拉斯中隐藏元素的HTML?

赛普拉斯如何在失败时提出请求

如何在赛普拉斯中单击x次

有没有办法2在赛普拉斯中创建多个命令文件

如何在赛普拉斯中声明localStorage

如何在赛普拉斯中存根节点模块?

如何在赛普拉斯中自定义断言

您如何在赛普拉斯自定义命令中调用“ request”?

如何在赛普拉斯中获取一行并选择特定的TD?

如何在赛普拉斯中重复动作并获得每个动作的结果

如何在赛普拉斯中使用变量

在赛普拉斯中如何计算包含文本的元素?

如何在赛普拉斯中动态生成测试用例?

赛普拉斯-如何在赛普拉斯中进行轮询?

如何在赛普拉斯中获取隐藏的iframe元素?以及如何写呢?

如何验证赛普拉斯中的错误消息?

如何在赛普拉斯配置文件中引用环境变量?

赛普拉斯命令日志截断

如何在赛普拉斯中编写自定义命令?

如何在赛普拉斯中使用软断言

如何避免赛普拉斯中的重复代码

如何从赛普拉斯的 .sql 文件中读取数据?

如何从赛普拉斯的自定义命令中获取返回值?