From c54e8b20b21ebd3d34278cfb2ce89af3b6aa6097 Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Mon, 22 Jul 2024 19:41:02 +0200 Subject: [PATCH] fix-e2e: Fix more cy.get() cases --- .../components/attachment/attachment.e2e.component.ts | 8 ++++---- .../vorgang-detail/vorgang-loeschen-anfordern.cy.ts | 8 +++++++- .../loesch-anforderung/loeschen-anfordern.cy.ts | 11 ++++++++++- .../vorgang-anhang/vorgang-anhang-herunterladen.cy.ts | 2 +- alfa-client/apps/alfa-e2e/src/support/commands.ts | 4 +++- .../apps/alfa-e2e/src/support/cypress-helper.ts | 2 +- 6 files changed, 26 insertions(+), 9 deletions(-) diff --git a/alfa-client/apps/alfa-e2e/src/components/attachment/attachment.e2e.component.ts b/alfa-client/apps/alfa-e2e/src/components/attachment/attachment.e2e.component.ts index 72c76d17bb..c9fa056dfb 100644 --- a/alfa-client/apps/alfa-e2e/src/components/attachment/attachment.e2e.component.ts +++ b/alfa-client/apps/alfa-e2e/src/components/attachment/attachment.e2e.component.ts @@ -48,12 +48,12 @@ export class AttachmentListE2EComponent { return new AttachmentE2EItem(fileName); } - public getDownloadAttachmentsButton(parent: any): Cypress.Chainable<JQuery<HTMLElement>> { - return cy.get(parent).findTestElementWithClass(this.downloadAttachmentsButton); + public getDownloadAttachmentsButton(): Cypress.Chainable<JQuery<HTMLElement>> { + return this.getRoot().findTestElementWithClass(this.downloadAttachmentsButton); } - public downloadAttachments(parent: any): Cypress.Chainable<any> { - return this.getDownloadAttachmentsButton(parent).click(); + public downloadAttachments(): Cypress.Chainable<any> { + return this.getDownloadAttachmentsButton().click(); } } diff --git a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-loeschen-anfordern.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-loeschen-anfordern.cy.ts index 91617d3639..c22d4da4f7 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-loeschen-anfordern.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/einheitlicher-ansprechpartner/vorgang-detail/vorgang-loeschen-anfordern.cy.ts @@ -32,7 +32,7 @@ import { } from '../../../model/vorgang'; import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; import { VorgangPage } from '../../../page-objects/vorgang.po'; -import { dropCollections } from '../../../support/cypress-helper'; +import { dropCollections, wait } from '../../../support/cypress-helper'; import { contains, exist, haveText, notExist } from '../../../support/cypress.util'; import { loginAsEmil } from '../../../support/user-util'; import { buildVorgang, initVorgaenge, objectIds } from '../../../support/vorgang-util'; @@ -167,6 +167,8 @@ describe('Vorgang löschen anfordern', () => { it('should show status Abgeschlossen', () => { notExist(vorgangPage.getProgressBar()); + wait(2000, 'Statusänderung flaky'); + cy.scrollTo(0, -500); haveText( vorgangPage.getVorgangDetailHeader().getStatus(), @@ -277,6 +279,10 @@ describe('Vorgang löschen anfordern', () => { it('should show status Verworfen', () => { notExist(vorgangPage.getProgressBar()); + wait(2000, 'Statusänderung im UI nicht schnell genug'); + cy.scrollTo(0, -500); + + vorgangPage.getVorgangDetailHeader().getStatus(); haveText( vorgangPage.getVorgangDetailHeader().getStatus(), vorgangStatusLabelE2E[VorgangStatusE2E.VERWORFEN], diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/loesch-anforderung/loeschen-anfordern.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/loesch-anforderung/loeschen-anfordern.cy.ts index 6ae63d71c0..6eb2921858 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/loesch-anforderung/loeschen-anfordern.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/loesch-anforderung/loeschen-anfordern.cy.ts @@ -21,7 +21,7 @@ import { } from '../../../model/vorgang'; import { MainPage, waitForSpinnerToDisappear } from '../../../page-objects/main.po'; import { VorgangPage } from '../../../page-objects/vorgang.po'; -import { dropCollections, visitUrl } from '../../../support/cypress-helper'; +import { dropCollections, visitUrl, wait } from '../../../support/cypress-helper'; import { contains, exist, haveText, notExist } from '../../../support/cypress.util'; import { loginAsLudwig, loginAsSabine } from '../../../support/user-util'; import { buildVorgang, initVorgaenge, initVorgang, objectIds } from '../../../support/vorgang-util'; @@ -161,6 +161,9 @@ describe('Vorgang Löschen anfordern', () => { }); it('should have status zu Löschen', () => { + wait(2000, 'Statusänderung im UI nicht schnell genug'); + cy.scrollTo(0, -500); + haveText( vorgangPage.getVorgangDetailHeader().getStatus(), vorgangStatusLabelE2E[VorgangStatusE2E.ZU_LOESCHEN], @@ -299,6 +302,9 @@ describe('Vorgang Löschen anfordern', () => { it('should show status Abgeschlossen', () => { notExist(vorgangPage.getProgressBar()); + wait(2000, 'Statusänderung im UI nicht schnell genug'); + cy.scrollTo(0, -500); + haveText( vorgangPage.getVorgangDetailHeader().getStatus(), vorgangStatusLabelE2E[VorgangStatusE2E.ABGESCHLOSSEN], @@ -408,6 +414,9 @@ describe('Vorgang Löschen anfordern', () => { it('should show status Verworfen', () => { notExist(vorgangPage.getProgressBar()); + wait(2000, 'Statusänderung im UI nicht schnell genug'); + cy.scrollTo(0, -500); + haveText( vorgangPage.getVorgangDetailHeader().getStatus(), vorgangStatusLabelE2E[VorgangStatusE2E.VERWORFEN], diff --git a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-anhang/vorgang-anhang-herunterladen.cy.ts b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-anhang/vorgang-anhang-herunterladen.cy.ts index 0d31452e0a..946a0c86da 100644 --- a/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-anhang/vorgang-anhang-herunterladen.cy.ts +++ b/alfa-client/apps/alfa-e2e/src/e2e/main-tests/vorgang-anhang/vorgang-anhang-herunterladen.cy.ts @@ -143,7 +143,7 @@ describe('Vorgang Anhänge', () => { it('should download attachment zip file', () => { deleteDownloadFolder().then(() => { - attachmentList.downloadAttachments(vorgangDatenFormular.getRoot()); + attachmentList.downloadAttachments(); }); }); diff --git a/alfa-client/apps/alfa-e2e/src/support/commands.ts b/alfa-client/apps/alfa-e2e/src/support/commands.ts index 84507bff89..180457361a 100644 --- a/alfa-client/apps/alfa-e2e/src/support/commands.ts +++ b/alfa-client/apps/alfa-e2e/src/support/commands.ts @@ -91,7 +91,9 @@ Cypress.Commands.add('getTestElement', (selector, ...args) => { }); Cypress.Commands.add('getTestElementWithClass', (selector, ...args) => { - console.log('Achtung:‚ Potentiell nicht eindeutiges Ergebnis wegen cy.get()'); + console.log( + 'Achtung: Potentiell nicht eindeutiges Ergebnis, weil eine data-test-class mit cy.get() von der DOM-Root aus gesucht wird.', + ); return cy.get(`[${DATA_TEST_CLASS}="${selector}"]`, ...args); }); diff --git a/alfa-client/apps/alfa-e2e/src/support/cypress-helper.ts b/alfa-client/apps/alfa-e2e/src/support/cypress-helper.ts index a0e6f18ca0..90c0c0b405 100644 --- a/alfa-client/apps/alfa-e2e/src/support/cypress-helper.ts +++ b/alfa-client/apps/alfa-e2e/src/support/cypress-helper.ts @@ -182,7 +182,7 @@ export function urlShouldInclude(text: string) { export function wait(ms: number, reason = ''): void { cy.wait(ms); if (reason) { - console.log(`Had to wait ${ms} because of: ${reason}`); + console.log(`Had to wait ${ms}ms because of: ${reason}`); } } // -- GitLab