From 870542abd0b6afc87e4028bf565e66e6d2280167 Mon Sep 17 00:00:00 2001 From: Helly Zhang <49181894+hellyzh@users.noreply.github.com> Date: Sat, 14 Sep 2024 14:28:05 +0800 Subject: [PATCH] test: update adding app (#12396) --- .../tests/src/utils/playwrightOperation.ts | 73 ++++++++++++++++--- 1 file changed, 64 insertions(+), 9 deletions(-) diff --git a/packages/tests/src/utils/playwrightOperation.ts b/packages/tests/src/utils/playwrightOperation.ts index 139ff5e258..bfae524e01 100644 --- a/packages/tests/src/utils/playwrightOperation.ts +++ b/packages/tests/src/utils/playwrightOperation.ts @@ -183,8 +183,20 @@ export async function initPage( ]); await page.waitForTimeout(Timeout.longTimeWait); console.log("click add button"); - - const addBtn = await page?.waitForSelector("button>span:has-text('Add')"); + let addBtn; + try { + addBtn = await page?.waitForSelector("button>span:has-text('Add')"); + } catch { + try { + addBtn = await page?.waitForSelector("button>span:has-text('Open')"); + } catch { + await page.screenshot({ + path: getPlaywrightScreenshotPath("add_page"), + fullPage: true, + }); + throw "error to add app"; + } + } // dashboard template will have a popup if (options?.dashboardFlag) { @@ -228,9 +240,24 @@ export async function initPage( } await page.waitForTimeout(Timeout.shortTimeLoading); // verify add page is closed - await page?.waitForSelector("button>span:has-text('Add')", { - state: "detached", - }); + try { + await page?.waitForSelector("button>span:has-text('Add')", { + state: "detached", + }); + } catch { + await page?.waitForSelector("button>span:has-text('Open')", { + state: "detached", + }); + } + try { + const openApp = await page?.waitForSelector( + "button[data-testid='open-app'][data-tid='open-app']" + ); + console.log("clicked open app"); + await openApp.click(); + } catch { + console.log("No Open App button"); + } console.log("[success] app loaded"); await page.waitForTimeout(Timeout.longTimeWait); }); @@ -305,7 +332,20 @@ export async function reopenPage( await page.waitForTimeout(Timeout.shortTimeLoading); if (addApp) { console.log("click add button"); - const addBtn = await page?.waitForSelector("button>span:has-text('Add')"); + let addBtn; + try { + addBtn = await page?.waitForSelector("button>span:has-text('Add')"); + } catch { + try { + addBtn = await page?.waitForSelector("button>span:has-text('Open')"); + } catch { + await page.screenshot({ + path: getPlaywrightScreenshotPath("add_page"), + fullPage: true, + }); + throw "error to add app"; + } + } // dashboard template will have a popup if (options?.dashboardFlag && password) { @@ -350,9 +390,24 @@ export async function reopenPage( await page.waitForTimeout(Timeout.shortTimeLoading); console.log("[success] app loaded"); // verify add page is closed - await page?.waitForSelector("button>span:has-text('Add')", { - state: "detached", - }); + try { + await page?.waitForSelector("button>span:has-text('Add')", { + state: "detached", + }); + } catch { + await page?.waitForSelector("button>span:has-text('Open')", { + state: "detached", + }); + } + try { + const openApp = await page?.waitForSelector( + "button[data-testid='open-app'][data-tid='open-app']" + ); + console.log("clicked open app"); + await openApp.click(); + } catch { + console.log("No Open App button"); + } } await page.waitForTimeout(Timeout.longTimeWait); });