213 lines
7.5 KiB
JavaScript
213 lines
7.5 KiB
JavaScript
const { test, expect } = require('@playwright/test');
|
|
const AxeBuilder = require('@axe-core/playwright').default;
|
|
|
|
test.use({
|
|
viewport: { width: 1920, height: 1080 },
|
|
});
|
|
|
|
test.describe('site-test', () => {
|
|
test('Homepage Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/');
|
|
|
|
await page.screenshot({ path: 'test-results/homepage.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Sample Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/sample-page/');
|
|
|
|
await page.screenshot({ path: 'test-results/sample-page.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Page With Sidebar Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/page-with-sidebar/');
|
|
|
|
await page.screenshot({ path: 'test-results/page-with-sidebar.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Content Filter Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/content-filter/');
|
|
|
|
await page.screenshot({ path: 'test-results/content-filter.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Accordion Block Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/blocks/accordion-block/');
|
|
|
|
await page.screenshot({ path: 'test-results/accordion-block.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Button Block Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/blocks/buttons-block/');
|
|
|
|
await page.screenshot({ path: 'test-results/buttons-block.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Grid Block Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/blocks/grid-block/');
|
|
|
|
await page.screenshot({ path: 'test-results/grid-block.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Media Text Block Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/blocks/media-text-block/');
|
|
|
|
await page.screenshot({ path: 'test-results/media-text-block.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Section Block Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/blocks/section-block/');
|
|
|
|
await page.screenshot({ path: 'test-results/section-block.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Blog Index Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/news/');
|
|
|
|
await page.screenshot({ path: 'test-results/blog-index.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('Single Blog Post Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/vel-consectetur-vero-laudantium/');
|
|
|
|
await page.screenshot({ path: 'test-results/blog-post.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
|
|
test('404 Page Test', async ({ page }, testInfo) => {
|
|
await page.goto('http://basic-wp.test/yaya/');
|
|
|
|
await page.screenshot({ path: 'test-results/404.png', fullPage: true });
|
|
|
|
const accessibilityScanResults = await new AxeBuilder({ page })
|
|
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'])
|
|
.analyze();
|
|
|
|
await testInfo.attach('accessibility-scan-results', {
|
|
body: JSON.stringify(accessibilityScanResults, null, 2),
|
|
contentType: 'application/json'
|
|
});
|
|
|
|
expect(accessibilityScanResults.violations).toEqual([]);
|
|
});
|
|
});
|