使用和不使用commands.js或它会阻塞的结果不同

问题描述 投票:0回答:1

我正在使用Cypress.io进行前端自动化。

当我将所有命令直接键入到规范中时,只要将其全部阻止在其中,该测试就会通过。

但是,如果我将命令放到commands.js中,Cypress.Commands.add块中的几个块中,或者在规范中单独放置在其块中,则测试将失败。

我不知道为什么。以下是我的commands.js文件

Cypress.Commands.add ("modals", {prevSubject: false}, () => {
    cy.get('#continueInBrowserBtn').should('be.visible').click()
    cy.get('#cpp-agree-btn').should('be.visible').click()
})

Cypress.Commands.add ("loginGuest", {prevSubject: false}, () => {
    cy.get('#input_email-info').should('be.visible').type('[email protected]')
    cy.get('#email-continue-btn').should('be.visible').click()
    cy.get('pgi-label-input.guest-input.first-name.web-input-area.ng-untouched.ng-pristine').should('be.visible')
    cy.get('pgi-label-input.guest-input.first-name.web-input-area.ng-untouched.ng-pristine > div > input').type('Eric')
    cy.get('pgi-label-input.guest-input.last-name.web-input-area.ng-untouched.ng-pristine > div > input').type('Test')
    cy.get('div.guest-continue-button.continue-button > pgi-text-button > button').click()
    cy.get('pgi-text-button.ng-tns-c8-0.ng-star-inserted > button > span').should('be.visible').click()
    cy.wait(3000)
})

Cypress.Commands.add ("loginHost", {prevSubject: false}, () => {
    cy.log('Enter Email')
    cy.get('#input_email-info').should('be.visible').type('6597076')
    cy.get('.pgi-button-wrapper').should('be.visible').click()

    cy.log('Enter Password')
    cy.get('#input_password-info').should('be.visible').type('r44XkP33')

    cy.log('Click Sign in')
    cy.get('#password-signin-btn > button > span').should('be.visible').click()
})

Cypress.Commands.add ("logout", {prevSubject: false}, () => {
    cy.get('bottom-container-right > div > div > div').should('be.visible').click()
    cy.get('pgi-text-button.yes-button > button > span').should('be.visible').click()
    cy.wait(2000)
    cy.get('feedback-panel > pgi-panel > h2').should('be.visible')
})
automation cypress pageobjects
1个回答
0
投票

阅读了赛普拉斯文档的最佳实践部分之后,我意识到我的方法不正确

© www.soinside.com 2019 - 2024. All rights reserved.