Skip to content

인수 테스트 체계 고도화: step2 #47

Open
seokjun-ko wants to merge 13 commits intonext-step:seokjun-kofrom
seokjun-ko:seokjun-ko
Open

인수 테스트 체계 고도화: step2 #47
seokjun-ko wants to merge 13 commits intonext-step:seokjun-kofrom
seokjun-ko:seokjun-ko

Conversation

@seokjun-ko
Copy link

  1. 서버와 관련된 개발 경험이 적어, 코드를 하나하나 이해하다보면 피드백 자체도 놓칠 것 같았습니다.
  2. 남은 시간동안, 클로드가 작성한 코드를 기반으로 어떻게 동작하는지 하나하나 뜯어보기 위해 빠르게 작성하고 제출합니다.

피드백 받고 싶은 방향

  1. 서버 개발자가 아니더라도, 이런 개념은 알면 좋은 키워드를 남겨주셨으면 좋겠습니다.
  2. 해당 프로젝트에서, 문제가 되는 코드가 있다면 알려주셨으면 좋겠습니다.
  3. 가능하다면, docs 안의 step2 prompt를 참고하여, 인공지능을 더 잘 활용할 수 있는 방향에 대한 조언을 받고 싶습니다.

seokjun-ko and others added 13 commits February 23, 2026 15:21
상품 생성(성공, 카테고리 미존재 실패)과 조회(다건, 빈 배열, 생성 후 조회) 시나리오를 RestAssured 기반으로 검증한다.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- CategoryAcceptanceTest를 Cucumber과 Gherkin을 활용하여 재생성
Cucumber BDD 테스트가 실제 운영 환경에 가까운 PostgreSQL에서 동작하도록 전환하고,
기존 AcceptanceTest는 H2를 그대로 유지하여 테스트 인프라를 분리한다.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- app을 도커 컨테이너로 변경
- 도커 네트워크 내부에서 컨테이너끼리 소통
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link

@shared-moon shared-moon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

석준님 안녕하세요!
2단계 미션 잘 진행 해 주셨네요 :)
이번 미션 범위에서는 말씀주신 1,2번 코멘트는 남기기가 조금 어려웠는데요..!
대신 3번에 집중해서 좀 남겨뒀습니다
확인 후 리뷰 재요청 부탁드려요!

→ CLAUDE.md와 스킬 간 중복 제거

```markdown
Q. CLAUDE.md와 postgres-docker-setup 스킬이 요구사항 1단계에서 2단계로 넘어가기 위해

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

작성된 내용 검증은 같은 컨텍스트에서 바로 요청하면 잘 못잡을 확률이 높아요. LLM 특성상 한 세션에서 대답을 한번 하면 가중치가 이미 올라간 상태라 답변의 편향이 일어나서 이런 산출물 검증같은 경우는 서브에이전트에 위임하거나 세션 클리어 후 질의, 혹은 페르소나를 지정해서 비판적인 입장으로 리뷰하도록 요청하는게 좋아요

## 3. 2단계 → 3단계 전환에 사용한 프롬프트

```markdown
Q. https://edu.nextstep.camp/s/fkNoSONS/ls/4E1Dy593를 기반으로 요구사항 2까지는 마쳤어.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

물론 이번 미션 진행을 위해서는 문제 없는 흐름이지만, 기본적으로 CLAUDE.md는 이런식으로 작업에 대한 내용보단 프로젝트 전반에 걸친 전역세팅이 올라가고, 무엇이 어디에 있는가를 지시하는 정도로 짧게 쓰는게 좋습니다. 모든 컨텍스트에 로드가 되는 정보라 여기서 다루면 비효율적이라서요..!

약간 과할지 모르겠지만 조금 효율적으로 바꿔보자면 skill로 다루면서 테스트 작성에 필요한 요구사항에 있던 가이드라인 등은 references로 빼는 식으로 범위를 잡아보면 좋을 것 같습니다

@@ -0,0 +1,289 @@
당신은 카카오 선물하기 서비스의 시니어 인프라/테스트 엔지니어다.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

command는 기본적으로 프롬프트가 메인 에이전트의 컨텍스트에 올라가게 돼서 이런 내용들도 중간중간에 compact를 통해 사라지거나 메인 에이전트와의 대화를 통해 컨텍스트가 오염될 수 있어요. 그리고 한 컨텍스트 내에서 페르소나 전환은 조금 한계가 있는 방법이기도 하구요.

개인적인 의견으로는 도커 관련해서 인프라 세팅하신 부분은 약간 커맨드로 추출 할 이유는 없지 않았나 싶긴 해요! 물론 지금처럼 명확하게 가이드를 주시는 것도 좋지만, 너무 상세한 가이드는 모델의 자율적인 tool_use를 방해해서 오히려 성능을 떨어뜨린다는 결과도 있어서, 반복되거나 템플릿화 되어야 하는 작업이 아니라면 세션 내 대화로 해결해도 괜찮았을 것 같습니다!

다만, acceptance test 작성에 대한건 향후에도 재사용 될 여지가 있어 sub-agent, skill 조합으로 구성해보면 좋을 것 같아요!

import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이건 아마 세팅이 안되어있어 자동 변환 된 것 같은데, import 시 * 는 사용하지 않는게 좋아요. 서로다른 패키지에 동일한 이름의 클래스가 있으면 사용할때 대상이 불명확해서 p.a.c.k.class 같은 식으로 사용하거나 원치 않는 클래스가 로드될수도 있어요!

intellij에 auto import 설정 한번 참고해보시면 좋을 것 같아요!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants