Spaces:
Running
Running
File size: 2,118 Bytes
f75d7fa |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
import { expect, test } from '@playwright/test';
// Checkly is a tool used to monitor deployed environments, such as production or preview environments.
// It runs end-to-end tests with the `.check.e2e.ts` extension after each deployment to ensure that the environment is up and running.
// With Checkly, you can monitor your production environment and run `*.check.e2e.ts` tests regularly at a frequency of your choice.
// If the tests fail, Checkly will notify you via email, Slack, or other channels of your choice.
// On the other hand, E2E tests ending with `*.e2e.ts` are only run before deployment.
// You can run them locally or on CI to ensure that the application is ready for deployment.
// BaseURL needs to be explicitly defined in the test file.
// Otherwise, Checkly runtime will throw an exception: `CHECKLY_INVALID_URL: Only URL's that start with http(s)`
// You can't use `goto` function directly with a relative path like with other *.e2e.ts tests.
// Check the example at https://feedback.checklyhq.com/changelog/new-changelog-436
test.describe('Sanity', () => {
test.describe('Static pages', () => {
test('should display the homepage', async ({ page, baseURL }) => {
await page.goto(`${baseURL}/`);
await expect(
page.getByRole('heading', { name: 'Boilerplate Code for Your Next.js Project with Tailwind CSS' }),
).toBeVisible();
});
test('should navigate to the about page', async ({ page, baseURL }) => {
await page.goto(`${baseURL}/`);
await page.getByRole('link', { name: 'About' }).click();
await expect(page).toHaveURL(/about$/);
await expect(
page.getByText('Welcome to our About page', { exact: false }),
).toBeVisible();
});
test('should navigate to the portfolio page', async ({ page, baseURL }) => {
await page.goto(`${baseURL}/`);
await page.getByRole('link', { name: 'Portfolio' }).click();
await expect(page).toHaveURL(/portfolio$/);
await expect(
page.locator('main').getByRole('link', { name: /^Portfolio/ }),
).toHaveCount(6);
});
});
});
|