Optimize profile setup flow for better user experience (#6223)
Some checks failed
Commit Message Check / Check Commit Message (push) Has been cancelled

*  Optimize profile setup flow for better user experience

* 📎 Remove extra onboarding step

* 📎 Code review

* 📎 Update changelog

---------

Co-authored-by: Andrey Antukh <niwi@niwi.nz>
This commit is contained in:
María Valderrama
2025-05-05 10:42:08 +02:00
committed by GitHub
parent aae81b8a04
commit 86a498fc29
15 changed files with 364 additions and 422 deletions

View File

@@ -9,7 +9,7 @@ export class OnboardingPage extends BaseWebSocketPage {
async fillOnboardingInputsStep1() {
await this.page.getByText("Personal").click();
await this.page.getByText("Select option").click();
await this.page.getByText("Testing before self-hosting").click();
await this.page.getByText("Product Managment").click();
await this.submitButton.click();
}
@@ -21,24 +21,8 @@ export class OnboardingPage extends BaseWebSocketPage {
}
async fillOnboardingInputsStep3() {
await this.page.getByText("Select option").first().click();
await this.page.getByText("Product Managment").click();
await this.page.getByText("Select option").first().click();
await this.page.getByText("Director").click();
await this.page.getByText("Select option").click();
await this.page.getByText("11-30").click();
await this.submitButton.click();
}
async fillOnboardingInputsStep4() {
await this.page.getByText("Other").click();
await this.page.getByPlaceholder("Other (specify)").fill("Another");
await this.submitButton.click();
}
async fillOnboardingInputsStep5() {
await this.page.getByText("Event").click();
}
}

View File

@@ -26,20 +26,11 @@ test("User can complete the onboarding", async ({ page }) => {
).toBeVisible();
await onboardingPage.fillOnboardingInputsStep2();
await expect(
page.getByRole("heading", { name: "Tell us about your job" }),
).toBeVisible();
await onboardingPage.fillOnboardingInputsStep3();
await expect(
page.getByRole("heading", { name: "Where would you like to get" }),
).toBeVisible();
await onboardingPage.fillOnboardingInputsStep4();
await expect(
page.getByRole("heading", { name: "How did you hear about Penpot?" }),
).toBeVisible();
await onboardingPage.fillOnboardingInputsStep3();
await onboardingPage.fillOnboardingInputsStep5();
await expect(page.getByRole("button", { name: "Start" })).toBeEnabled();
});