93 lines
2.1 KiB
Markdown
93 lines
2.1 KiB
Markdown
# 린트 체크 및 테스트 실행 가이드
|
|
|
|
이 문서는 Baron SSO 프로젝트의 각 모듈별 정적 분석(Lint) 및 테스트 수행 방법을 설명합니다.
|
|
|
|
## 1. 준비 사항
|
|
테스트를 실행하기 위해 다음 도구들이 설치되어 있어야 합니다.
|
|
- **Docker & Docker Compose** (백엔드 인프라 의존성용)
|
|
- **Go 1.26.2+**
|
|
- **Flutter SDK**
|
|
- **Node.js 24 LTS+**
|
|
|
|
---
|
|
|
|
## 2. 모듈별 실행 명령어
|
|
|
|
### 2.1 Backend (Go)
|
|
백엔드 테스트는 Redis와 ClickHouse 컨테이너가 실행 중이어야 합니다.
|
|
|
|
```bash
|
|
# 인프라 서비스 실행
|
|
docker compose -f compose.infra.yaml up -d redis clickhouse
|
|
|
|
cd backend
|
|
|
|
# 린트 및 포맷 확인
|
|
go fmt ./...
|
|
go vet ./...
|
|
|
|
# 유닛 테스트 실행
|
|
export REDIS_ADDR=localhost:6379 CLICKHOUSE_HOST=localhost CLICKHOUSE_PORT_NATIVE=9000
|
|
go test ./...
|
|
```
|
|
|
|
### 2.2 Userfront (Flutter)
|
|
```bash
|
|
cd userfront
|
|
|
|
# 코드 포맷 확인
|
|
dart format --output=none --set-exit-if-changed lib test
|
|
|
|
# 정적 분석 (경고/정보 메시지는 무시)
|
|
flutter analyze --no-fatal-warnings --no-fatal-infos
|
|
|
|
# 유닛 및 위젯 테스트
|
|
flutter test
|
|
```
|
|
|
|
### 2.3 Adminfront & Devfront (React)
|
|
Biome을 사용하여 린트 및 포맷팅을 관리하며, Playwright로 E2E 테스트를 수행합니다.
|
|
|
|
```bash
|
|
cd adminfront # 또는 cd devfront
|
|
|
|
# 린트 및 포맷 자동 수정
|
|
npx biome check --write .
|
|
|
|
# 안전하지 않은 규칙까지 포함하여 자동 수정 (필요 시)
|
|
npx biome check --write --unsafe .
|
|
|
|
# E2E 테스트 실행
|
|
npm test
|
|
```
|
|
|
|
### 2.4 i18n 검증
|
|
코드 내에서 사용되는 다국어 키와 `locales/*.toml` 파일 간의 정합성을 검증합니다.
|
|
|
|
```bash
|
|
# 프로젝트 루트에서 실행
|
|
node tools/i18n-scanner/index.js
|
|
node tools/i18n-scanner/report.js
|
|
|
|
# 결과 확인
|
|
cat reports/i18n-report.txt
|
|
```
|
|
|
|
---
|
|
|
|
## 3. 통합 실행 (Batch)
|
|
프로젝트 루트의 스크립트를 통해 전체 과정을 한 번에 시도할 수 있습니다.
|
|
|
|
```bash
|
|
bash run_local_checks.sh
|
|
```
|
|
|
|
---
|
|
|
|
## 4. 정리 (Cleanup)
|
|
테스트 완료 후 실행 중인 테스트용 인프라 서비스를 종료합니다.
|
|
|
|
```bash
|
|
docker compose -f compose.infra.yaml down
|
|
```
|