如何解决赛普拉斯新命令定义参考
我在Cypress中创建了自定义命令,然后在test.spec.js中使用了它们,但是当我尝试转到命令的定义(ctrl + rightClick)时,它会显示(Any),没有引用。有什么解决办法吗?因为如果其他人尝试阅读我的测试脚本,将很难知道逗号的定义在哪里...
test.spec.js
describe('test',() => {
before('Login before',() => {
cy.visit('/');
// my custom command cy.login()
cy.login();
});
});
commands.js
// definition of the command
Cypress.Commands.add('login',() => {
// body of the command
});
解决方法
是的,有办法。
您在support/
中添加了一个TS文件。
support / commands.d.ts :
declare namespace Cypress {
interface Chainable<Subject> {
/**
* Logs in a user
*
* @param {string} name User to log in
* @example
* cy.login('admin');
*
*/
login(name: string): Chainable<any>
}
}
该命令将被添加到cy对象中,因此当我键入该命令时,也会建议新的自定义命令:
将命令悬停在命令上时,您会看到有关该命令的信息:
此外,如果您在按住Ctrl键的同时单击commands.d.ts
文件,则会将其转到该文件。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。