TEC 시험 응시
CLASS-TEC-UNIT-QUIZ-DETAIL · /my-class/tec-unit-quiz/[unit]/[kind]
기능
8
API 호출
0
가드레일
2
id 가 테스트 이름
구현 단계
5 / 5
개발 스펙
이 화면에서 할 수 있어야 하는 것 (1)
- TESOL 응시 화면과 같되, TEC 과정 규칙을 따른다.
비즈니스 규칙 (3)
- TEC 은 14 유닛, 재응시는 A · B 두 차수뿐이다.근거: _Env.php:264~266
- 복수정답 문항이 있다(현재 2-B Q14 한 문항).
- 오픈 플래그는 TEC 전용 컬럼을 본다(prepare_tec_yn · pay_tec_yn · cyber_tec_yn · lecture_tec_start/end).
API (1)
| 메서드 | 경로 | 권한 | 모듈 · 설명 |
|---|---|---|---|
GET | /api/assessment/exams/TEC/{unit}/{kind} | 수강생 | TESOL 과 같은 엔드포인트를 course 로 구분한다. domains:assessment:assessment-web |
가드레일 (2) — id 가 곧 테스트 이름이다
| id | 반드시 만족해야 하는 것 | 등급 |
|---|---|---|
quiz-tec-only-two-kinds | TEC 에 kind=C 를 요청하면 거부해야 한다. | high |
quiz-tec-uses-tec-flags | TEC 응시 자격은 TESOL 플래그가 아니라 TEC 전용 컬럼으로 판정해야 한다. | critical |
구현 계획 (5/5)
- ●ExamKind.of(TEC) — A·B 만 허용
assessment-domain - ●TESOL 과 같은 유스케이스를 course 로 갈라 쓴다
assessment-app - ●같은 어댑터 재사용
assessment-infrastructure - ●같은 컨트롤러 — course=TEC
assessment-web - ●Next.js 를 BFF 로 전환 — Prisma 직접 접근 제거
wvctesol
서버 사이드 구현 계획 — 자바 객체별 요구사항 (2/2)
| 객체 | 모듈 | 책임 · 지켜야 할 것 |
|---|---|---|
● ExamKind.of(CourseCode)enum | assessment-domain | 과정별 허용 차수.
|
● EntitlementReaderAdapter (TEC 분기)class | assessment-infrastructure | TEC 전용 플래그 판정.
|
테스트 방법 (2)
| 가드레일 | 종류 | 확인 방법 |
|---|---|---|
quiz-tec-only-two-kinds | e2e | TEC UNIT1 에 kind=C 요청 → 400/404 |
quiz-tec-uses-tec-flags | e2e | pay_yn=Y · pay_tec_yn=N 계정으로 TEC 응시 요청 → 403 EXAM_NOT_OPEN |
스냅샷
로그인 세션으로 촬영한 실제 화면입니다.

기능 목록 (8)
입력
- ·폼
1개 - ·제출 버튼
1개 - ·입력 필드
4개
액션
- ·서버 액션
submitQuiz
상태
- ·화면 상태
started, remaining, warning, answers, validationError
인증
- ·세션 확인
- ·로그인 필요
proxy 가 /login 으로 보냄
하드코딩
- ·하드코딩 데이터
tabs
화면 이동
← 이 화면으로 오는 곳
CLASS-TEC-ONLINE/my-class/tec-online
이 화면에서 가는 곳 →
CLASS/my-classCLASS-ONLINE/my-class/onlineCLASS-UNIVERSITY-REGISTER/my-class/university-registerAUTH-LOGIN/loginCLASS-TEC-UNIT-RESULT-DETAIL/my-class/tec-unit-result/[unit]/[kind]
연결
API
직접 호출하는 API 가 없습니다
소스
src/app/my-class/tec-unit-quiz/[unit]/[kind]/page.tsx