Estoy enfrentando un problema que aún no pude resolver y quería obtener algunas opiniones de usted. Tengo un selector que tiene dos opciones en total y estoy usando select para cambiar entre ellas. No estaba seguro sobre el código, así que también agregué la verificación de url , que funciona correctamente.
Sin embargo, la página se carga con la primera selección, por lo que ya se realizó la llamada a la API, pero, en la segunda parte (sección de elementos), cuando selecciono Items , arroja un error 401 y se cierra la sesión, lo que rompe todas las siguientes pruebas.
¿Qué puedo hacer/mejorar aquí? Este flujo funciona perfectamente en mi local pero Cypress falla.
Cosas que he probado:
0 y 1 sin nombres de valores.https://www.youtube.com/watch?v=b8aoVh6IdCg¡Gracias por adelantado!
it('verifies there are only orders, drafts and/or return orders on all orders grid', () => {
ordersPage.ordersSelector().trigger('click')
cy.get('select').select('orders').should('have.value', 'orders');
cy.url()
.should('include', 'orders');
const orderNumberPrefix = ['DRAFT-', 'SO0', 'S0-', 'R0']
cy.get('.ag-center-cols-container div[row-index]')
.each($row =>{
const $col = $row.find('[col-id="orderNumber"]')
const orderNumber = $col.text().trim()
const correctOrderNumberPrefix = orderNumberPrefix.some(prefix => {
return orderNumber.startsWith(prefix)
})
expect(correctOrderNumberPrefix).to.be.true;
});
})
it('verifies there are only orders on items grid', () => {
ordersPage.ordersSelector()
cy.get('select').select('items').should('have.value', 'items'); //fails here
cy.url()
.should('include', 'items');
const orderNumberPrefix = ['SO0']
cy.get('.ag-center-cols-container div[row-index]')
.each($row =>{
const $col = $row.find('[col-id="orderNumber"]')
const orderNumber = $col.text().trim()
const correctOrderNumberPrefix = orderNumberPrefix.some(prefix => {
return orderNumber.startsWith(prefix)
})
expect(correctOrderNumberPrefix).to.be.true;
});
})