-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test: 예시 통합 테스트 추가 #449
base: develop
Are you sure you want to change the base?
The head ref may contain hidden characters: "437-\uD1B5\uD569-\uD14C\uC2A4\uD2B8-\uCD94\uAC00"
test: 예시 통합 테스트 추가 #449
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CI에서 정상적으로 동작하려면 다음 중 하나가 충족되어야 합니다:
- 백엔드 개발 서버
- Mock Service Worker
f7f3dd0
to
b7d5b46
Compare
b7d5b46
to
64444b5
Compare
64444b5
to
22c8376
Compare
22c8376
to
5a98b89
Compare
5a98b89
to
b9bb1f9
Compare
|
||
test("전체 도서 목록 열람", async ({ page }) => { | ||
await page.goto("http://localhost:4242/"); | ||
await page.getByRole("link", { name: "도서목록" }).click(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
test.only(`page.getByRole("link")`, async ({ page }) => {
await page.goto("http://localhost:4242/");
const link = page.getByRole("link");
console.log(await link.count())
});
firefox와 chromium과 달리 webkit에서는 <a href>
태그의 aria-role이 적용이 되지 않아 테스트가 실패하는 것으로 보입니다.
개요
2023-06-14.13-01-20.mp4
2023-06-14.13-00-45.mp4
변경점
.github/workflows
playwright.yml
에서 playwright을 설치하고 통합 테스트를 진행합니다.test
환경의 환경 변수 컨텍스트를 사용해 해결했습니다.README.md
playwright을 사용해 테스트하는 방법을 추가했습니다.
e2e/
통합 테스트들을 모아둔 경로입니다. 다음과 같은 예제 테스트들이 들어 있습니다.
auth.spec.ts
: 인 확인하는 테스트입니다. 아직 개발 서버에서 인증을 지원하지 않아 임시로 skip시켰습니다.app.dockerfile
,playwright.compose.yml
playwright 테스트용 전용 브라우저는 LTS 우분투 버전에서만 지원되기 때문에 다른 우분투 버전에서 webkit 등의 브라우저에서 테스트를 하려면 도커를 사용해야 합니다.
playwright.config.ts
자동 생성된 playwright 설정 파일입니다. CI 환경은 데스크탑 환경보다 느리므로 재시도 횟수와 대기 시간을 충분히 늘려줬습니다.
playwright.browsers.ts
한눈에 보기 쉽게 설정 파일에서 브라우저 목록만 뽑아 정리했습니다. LTS 우분투를 사용하지 않는다면 테스트시 내장 브라우저 (chrome, firefox 등)만 사용 가능하기 때문에 운영체제에 따라 테스트 가능한 브라우저 목록이 달라집니다.