我在Cypress中运行以下测试,在最后一步(点击)出现了这个错误信息。超时重试。期待找到元素:.button-darkblue,但从未找到。
这是我的代码。
describe('Test Login', () => {
it('Test login with good info', () => {
cy.visit('http://localhost:4200/login/')
cy.url().should('eq', 'http://localhost:4200/login')
cy.get('.login-box').should('be.visible')
cy.fixture('adminData').then((adminData) => {
cy.get('#loginForm').within(function () {
cy.get(':nth-child(1) > .blue > input').clear().type(adminData.email)
cy.get(':nth-child(2) > .blue > input').clear().type(adminData.password)
cy.get('.button-darkblue').click()
})
})
})
})
这是我的html
<div class="frow justify-between login-action-buttons" id="loginActionButtons">
<div class="grid-example-square">
<button (click)="register()" routerLinkActive="router-link-active" class="button-text-blue">
Create an account
</button>
</div>
<div class="">
<button class="button-darkblue">
Connect
</button>
</div>
我解决它的代码行从within(function)
describe('Test Login', () => {
it('Test login with good info', () => {
cy.visit('http://localhost:4200/login/')
cy.url().should('eq', 'http://localhost:4200/login')
cy.get('.login-box').should('be.visible')
cy.fixture('adminData').then((adminData) => {
cy.get('#loginForm').within(function () {
cy.get(':nth-child(1) > .blue > input').clear().type(adminData.email)
cy.get(':nth-child(2) > .blue input').clear().type(adminData.password)
})
cy.get('.button-darkblue').click()
})
})