๐ญ Playwright Runner
tools/playwright-web
ํจํค์ง๋ ํ๋ก์ ํธ์ E2E(End-to-End) ํ
์คํธ๋ฅผ Playwright ๊ธฐ๋ฐ์ผ๋ก ์๋ํํ๊ธฐ ์ํ ํ๊ฒฝ๊ณผ ์คํฌ๋ฆฝํธ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๐ฏ ์ฃผ์ ๋ชฉ์
- ์ค์ ๋ธ๋ผ์ฐ์ ํ๊ฒฝ์์ ์ฌ์ฉ์์ ํ๋์ ์๋ฎฌ๋ ์ด์ ํ์ฌ ์ฃผ์ ํ๋ก์ฐ์ ๊ธฐ๋ฅ์ ๊ฒ์ฆํฉ๋๋ค.
- CI ํ๊ฒฝ(GitHub Actions ๋ฑ)์์ ์๋์ผ๋ก ์คํ๋์ด, ๋ฐฐํฌ ์ ์๋น์ค์ ํ์ง์ ๋ณด์ฅํฉ๋๋ค.
๐ ์ฃผ์ ๊ตฌ์ฑ
- ๐งช ํ
์คํธ ์คํฌ๋ฆฝํธ:
tests/
๋๋ ํ ๋ฆฌ ๋ด์ Playwright ํ ์คํธ ํ์ผ(*.spec.ts
)์ด ์์นํฉ๋๋ค. - โ๏ธ Playwright ์ค์ :
playwright.config.ts
ํ์ผ์์ ๋ธ๋ผ์ฐ์ , ํ ์คํธ ํ๊ฒฝ, ๋ฆฌํฌํธ ํฌ๋งท(junit ๋ฑ) ๋ฑ์ ์ค์ ํฉ๋๋ค. - โถ๏ธ ์คํ ์คํฌ๋ฆฝํธ:
package.json
์test:e2e
์คํฌ๋ฆฝํธ๋ก Playwright ํ ์คํธ๋ฅผ ์คํํ ์ ์์ต๋๋ค. - ๐ณ Dockerfile:
CI ํ๊ฒฝ์์ ํ ์คํธ๋ฅผ ์คํํ๊ธฐ ์ํ Docker ์ด๋ฏธ์ง๊ฐ ์ ์๋์ด ์์ต๋๋ค.
๐งโ๐ป๏ธ ์ฌ์ฉ ๋ฐฉ๋ฒ
๐ป ๋ก์ปฌ์์ ์คํ
pnpm --filter tools/playwright-web test:e2e
๋๋
cd tools/playwright-web
pnpm test:e2e
๐ค CI ํ๊ฒฝ์์ ์คํ
.github/workflows/test.yml
์e2e-web
์ก์์ ๋์ปค ์ปจํ ์ด๋๋ก ์๋ ์คํ๋ฉ๋๋ค.- ํ ์คํธ ๊ฒฐ๊ณผ๋ JUnit XML ๋ฑ์ผ๋ก ์ ์ฅ๋์ด GitHub Actions ์ํฐํฉํธ๋ก ์ ๋ก๋๋ฉ๋๋ค.
CI ํ๊ฒฝ์์์ ์คํ์ ๋ํ ์์ธํ ๋ด์ฉ์
ํ
์คํ
> End-to-End ํ
์คํธ
๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ์ธ์.
๐ ํ ์คํธ ๊ฒฐ๊ณผ
- ํ
์คํธ ์ฑ๊ณต/์คํจ ์ฌ๋ถ์ ์์ธ ๋ฆฌํฌํธ๋
test-results/junit.xml
ํ์ผ๋ก ํ์ธํ ์ ์์ต๋๋ค. - CI์์ ์คํ๋ ๊ฒฝ์ฐ, GitHub Actions์ Artifacts์์ ๊ฒฐ๊ณผ ํ์ผ์ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
๐ ์ฐธ๊ณ
- Playwright ๊ณต์ ๋ฌธ์: https://playwright.dev/โ
- ํ
์คํธ ์์ฑ ์์๋
tests/
๋๋ ํ ๋ฆฌ๋ฅผ ์ฐธ๊ณ ํ์ธ์.
Last updated on