Add Axe accessibility E2E tests (#2)

Reviewed-on: #2
This commit was merged in pull request #2.
This commit is contained in:
2026-07-26 13:55:56 +09:00
parent 8679a850e5
commit f5274195b9
25 changed files with 124 additions and 12 deletions
+34
View File
@@ -0,0 +1,34 @@
import AxeBuilder from '@axe-core/playwright'
import { test as base } from '@playwright/test'
import { HomePage } from './models/HomePage'
import { ListsPage } from './models/ListsPage'
import { SearchPage } from './models/SearchPage'
import { ThreadPage } from './models/ThreadPage'
import { UserPage } from './models/UserPage'
type Fixtures = {
a11y: () => AxeBuilder
homePage: HomePage
listsPage: ListsPage
searchPage: SearchPage
threadPage: ThreadPage
userPage: UserPage
}
export const test = base.extend<Fixtures>({
a11y: async ({ page }, use) => {
const makeAxeBuilder = () =>
new AxeBuilder({ page })
.withTags(['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa'])
.disableRules(['meta-viewport'])
await use(makeAxeBuilder)
},
homePage: ({ page }, use) => use(new HomePage(page)),
listsPage: ({ page }, use) => use(new ListsPage(page)),
searchPage: ({ page }, use) => use(new SearchPage(page)),
threadPage: ({ page }, use) => use(new ThreadPage(page)),
userPage: ({ page }, use) => use(new UserPage(page)),
})
export { expect } from '@playwright/test'