javascript - 如何存储方法并将其调用到可重用方法文件?
问题描述
如何存储这个 select dob 日期选择器方法并调用它并在这个命令文件中重用它?直接在命令文件中编写方法看起来不正确。
Cypress.Commands.add('editIndividualCustDetails',() =>
{
var editIndividualCustDetails =new editIndividualCustomerPage()
//click edit profile button
editIndividualCustDetails.editProfileButton().click()
//select DOB
cy.get('#dob').invoke('val').then((text) => {
expect('08/05/2019').to.equal(text);
});
//enter Attention field
editIndividualCustDetails.attention().type('CDEF')
解决方案
如果您将文件导入到cypress/support/index.js
.
考虑您是否有文件cypress/support/utils/reusableMethods.js
1.将文件导入cypress/support/index.js
为:
import './utils/reusableMethods';
2.通常在下编写您的自定义命令cypress/support/utils/reusableMethods.js
Cypress.Commands.add('editIndividualCustDetails', () => {
var editIndividualCustDetails = new editIndividualCustomerPage()
//click edit profile button
editIndividualCustDetails.editProfileButton().click()
//select DOB
cy.get('#dob').invoke('val').then((text) => {
expect('08/05/2019').to.equal(text);
});
//enter Attention field
editIndividualCustDetails.attention().type('CDEF')
})
3.在你的测试中正常使用它:
cy.editIndividualCustDetails()
推荐阅读
- algorithm - 收集物品集的优化算法
- reactjs - 尝试打印具有数组的对象时出错
- ruby-on-rails - 尝试 db:migrate 在 heroku 内部,迁移失败
- batch-file - 使用 Batch 或 VBS 将文件夹和子文件夹移动到另一个文件夹
- javascript - 如何创建可重用的 AJAX 调用函数并从返回的对象中提取不同的值
- php - 使用php以固定顺序旋转广告
- node.js - App Engine 上的 React.js 作为服务查询作为同一项目中另一个服务运行的 API
- angular - 它是服务还是提供者?被 Angular 教程弄糊涂了
- sql - 将 PostgreSQL 表连接到另一个表的列
- docker - 我如何从 docker 转发到虚拟机内的主机,然后转发到本地主机?