Skip to content

Fix: Kotlin 테스트 실행 시 출력이 표시되지 않는 문제 수정#51

Open
wooongyee wants to merge 1 commit into
koomin1227:developfrom
wooongyee:fix/kotlin-output-capture
Open

Fix: Kotlin 테스트 실행 시 출력이 표시되지 않는 문제 수정#51
wooongyee wants to merge 1 commit into
koomin1227:developfrom
wooongyee:fix/kotlin-output-capture

Conversation

@wooongyee
Copy link
Copy Markdown

작업 내용

  • 컴파일 프로세스 대신 실행 프로세스를 반환하도록 수정
  • execSync로 컴파일을 동기적으로 완료 후 java 프로세스 반환
  • C/C++/Rust와 동일한 compileAndRun 패턴 적용

작업 설명

문제 상황

기존 코드에서는 kotlinc 컴파일 프로세스를 반환하고 close 이벤트 콜백에서 java 실행 프로세스를 생성했습니다.
이로 인해 runCode 함수가 컴파일러 프로세스의 stdout만 리스닝하게 되어, 실제 코틀린 코드의 println 출력을 캡처하지 못했습니다.

해결 방법

  1. 동기 컴파일: execSync를 사용하여 컴파일을 먼저 완료
  2. 실행 프로세스 반환: 컴파일 완료 후 java -jar 프로세스를 반환
  3. 출력 캡처 성공: runCode가 실행 프로세스의 stdout을 정상적으로 리스닝

참고

  • C/C++/Rust도 동일한 패턴 사용 (컴파일 동기 → 실행 프로세스 반환)
  • jar 파일 경로를 소스 파일 디렉토리 기준으로 생성

스크린샷

수정 전 (이슈 발생)

이슈발생

컴파일 에러 발생 및 Actual Output이 표시되지 않음

수정 후 (이슈 해결)

이슈해결

테스트 케이스 정상 실행 및 출력 캡처 성공

- 컴파일 프로세스 대신 실행 프로세스를 반환하도록 수정
- execSync로 컴파일을 동기적으로 완료 후 java 프로세스 반환
- C/C++/Rust와 동일한 compileAndRun 패턴 적용
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.

1 participant