diff --git a/core/src/components/title/test/basic/index.html b/core/src/components/title/test/basic/index.html
new file mode 100644
index 0000000000..0b3257888b
--- /dev/null
+++ b/core/src/components/title/test/basic/index.html
@@ -0,0 +1,88 @@
+
+
+
+
+ Title - Basic
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/core/src/components/title/test/basic/title.e2e.ts b/core/src/components/title/test/basic/title.e2e.ts
new file mode 100644
index 0000000000..c6fe1eb0c6
--- /dev/null
+++ b/core/src/components/title/test/basic/title.e2e.ts
@@ -0,0 +1,12 @@
+import { expect } from '@playwright/test';
+import { test } from '@utils/test/playwright';
+
+test.describe('title: basic', () => {
+ test('should not have visual regressions', async ({ page }) => {
+ await page.goto('/src/components/title/test/basic');
+ const wrapper = page.locator('#header-wrapper');
+
+ // only screenshot the headers to avoid unnecessary blank space from ion-content
+ expect(await wrapper.screenshot()).toMatchSnapshot(`title-basic-${page.getSnapshotSettings()}.png`);
+ });
+});
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Chrome-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..ed33be6203
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Firefox-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..331ece39f9
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Safari-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..939753e3ec
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Chrome-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..c817883551
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Firefox-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..ed371609b2
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Safari-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..f1eb77a9e1
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-ios-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Chrome-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..f23c91cb82
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Firefox-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..8bb7a711ae
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Safari-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..8ec6c0547f
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-ltr-Mobile-Safari-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Chrome-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Chrome-linux.png
new file mode 100644
index 0000000000..915c3cd3da
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Chrome-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Firefox-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Firefox-linux.png
new file mode 100644
index 0000000000..0f8c3024b9
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Firefox-linux.png differ
diff --git a/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Safari-linux.png b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Safari-linux.png
new file mode 100644
index 0000000000..4ff2cadb2b
Binary files /dev/null and b/core/src/components/title/test/basic/title.e2e.ts-snapshots/title-basic-md-rtl-Mobile-Safari-linux.png differ
diff --git a/core/src/components/title/test/scenarios/index.html b/core/src/components/title/test/scenarios/index.html
deleted file mode 100644
index 50269f7ea8..0000000000
--- a/core/src/components/title/test/scenarios/index.html
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
-
-
- Toolbar - Title
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Edit
-
- Inbox
-
-
-
-
-
-
-
-
- Edit
-
- Inbox
-
-
-
-
-
-
-
-
- Edit
-
- Inbox
-
-
-
-
-
-
-
-
- Title
-
-
-
-
- Title
-
-
-
-
-
-
- Toggle Size
-
-
-
-
-
-
diff --git a/core/src/components/title/test/sizes/e2e.ts b/core/src/components/title/test/sizes/e2e.ts
deleted file mode 100644
index 7af671e9ca..0000000000
--- a/core/src/components/title/test/sizes/e2e.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-import { newE2EPage } from '@stencil/core/testing';
-
-test('title: sizes', async () => {
- const page = await newE2EPage({
- url: '/src/components/title/test/sizes?ionic:_testing=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
-
-test('title:rtl: sizes', async () => {
- const page = await newE2EPage({
- url: '/src/components/title/test/sizes?ionic:_testing=true&rtl=true',
- });
-
- const compare = await page.compareScreenshot();
- expect(compare).toMatchScreenshot();
-});
diff --git a/core/src/components/title/test/sizes/index.html b/core/src/components/title/test/sizes/index.html
deleted file mode 100644
index 65286eef79..0000000000
--- a/core/src/components/title/test/sizes/index.html
+++ /dev/null
@@ -1,110 +0,0 @@
-
-
-
-
- Title - Sizes
-
-
-
-
-
-
-
-
-
-
-
-
- Settings
-
-
-
-
-
- Browse
-
- Cancel
-
-
-
-
-
-
-
-
-
- Choose a contact to add to Favorites
-
-
-
-
-
- Title
- Subtitle
-
-
-
-
-
-
-
-
-
-
-
-
- Choose a contact to add to Favorites
-
-
- Contacts
-
- Cancel
-
-
-
-
-
-
-
-
-
-
- Choose multiple contacts to add to your Favorites so this just goes on and on and on
-
-
-
-
- Groups
-
- Contacts
-
- Cancel
-
-
-
-
-
-
-
-
-
-
-
-
-