전체 글 249

[Harness #3] 먼저 테스트를 실패하도록 해봤다 - TDD Red → Green 실습과 예상 밖의 PASS

이전에는 논문 검색기를 예시로 좋은 테스트가 무엇인지 살펴봤다https://dev-study-501.tistory.com/286 [Harness #2] 테스트가 통과하는데도 버그를 놓치는 이유 - Mock과 assert 제대로 이해하기테스트 코드를 작서앟ㄹ 때 가장 먼저 고민해야하는 거은 무엇일까? 처음에는 다양한 상황에서도 통과할 수 있도록 유연한 조건을 작성하는 것이 좋다고 생각했다그런데 논문 검색기를 예시로dev-study-501.tistory.com 이번에는 이론에서 벗어나 직접 테스트 코드를 작성하고 실행해봤다.그 과정에서 흥미로운 상황을 발견했다. 아직 필요한 기능을 구현하지 않았는데도 테스트가 통과한 것이다. 처음에는 테스트가 실패해야 문제가 있다고 생각했지만, 이번에는 오히려 테스트가 통과..

AI/Engineering 2026.11.14

[Harness #2] 테스트가 통과하는데도 버그를 놓치는 이유 - Mock과 assert 제대로 이해하기

테스트 코드를 작서앟ㄹ 때 가장 먼저 고민해야하는 거은 무엇일까? 처음에는 다양한 상황에서도 통과할 수 있도록 유연한 조건을 작성하는 것이 좋다고 생각했다그런데 논문 검색기를 예시로 테스트를 설계하면서, 오히려 그런 조건 때문에 버그를 놓칠수 있다는 것을 알게됐다. 이번에는 Mock 데이터와 assert를 활용해 테스트가 실제로 무엇을 검증하는지 살펴봤다. 1️⃣ 논문을 최대 10개 반환하는 검색기🛠️ 요구사항사용자가 검색어를 입력하면 관련 논문을 조회하고, 최대 10개까지 반환한다. 실제 PubMed API 대신 Mock을 이용해 검색 결과를 미리 정해놓고 테스트하는 상황이었다.Mock은 실제 외부 서비스 대신 원하는 데이터를 반환하도록 설정하는 도구다. 예를 들어 Mock이 논문 7개를 반환하도록 ..

AI/Engineering 2026.11.14

[Harness #1] AI가 '테스트 통과'라고 하면 개발은 끝난 것일까?

AI를 활용하면 코드를 작성하는 속도는 확실히 빨라진다.그런데 AI가 구현한 기능과 테스트 결과를 어디까지 믿어도 될까? 최근 AI를 활용한 개발 방식을 제대로 익혀보고 싶다는 생각이 들었다.개인적으로 AI에게 코드를 작성하거나 수정하도록 요청한 경험은 있었지만작업을 어떤 기준으로 맡기고 결과를 어떻게 검증할 것인지는 충분히 고민하지 못했던 것 같다 그래서 Harness Engineering을 공부하기 시작했다. 첫 날에는 코드를 바로 작성하기 보다 작은 프로젝트를 가정하고 개발자가 먼저 결정해야할 것들을 하나씩 생각해봤다. 1️⃣ Harness Engineering, 단순히 프롬프트를 잘 작성하는 것과 무엇이 다를까?✨ Harness EngineeringAI가 개발 작업을 수행할 수 있도록 필요한 도구..

AI/Engineering 2026.11.13

VDataTableServer의 must-sort 속성 활용

현재 나는 Vue3와 Vuetify를 통해 Admin페이지를 만들고 있다여기서 데이터테이블을 그리기 위해 VDataTableServer를 활용하고 있는데정렬 부분에서 막혔다 ↕️ VDataTableServer 내의 정렬VDataTableServer에서는 기본적으로 update:sort-by 등을 통해 정렬을 구현할 수 있다https://vuetifyjs.com/en/api/v-data-table-server/#events-update:sortBy https://vuetifyjs.com/en/api/v-data-table-server/#events-update:sortBy vuetifyjs.com하지만 이것은 단순히 프론트에서 정렬을 시킬 뿐이고, 해당 페이지 내에서의 정렬이다. 내가 구현하고자 하는 것은..

[파이썬40작] 03. 텍스트를 음성으로 변환하기

🎮 라이브러리 설치 파이썬에는 누군가 미리 만들어둔 라이브러리(모듈)이 많다 일반적으로 많이 사용하는 건 아나콘다 설치시 함께 설치된다 하지만 내가 사용하고자 하는 라이브러리가 모두 설치되는 건 아니니 필요할 때 마다 설치를 해주어야 한다 터미널을 열고 명령어를 입력한다 ✅ 터미널 열기 ctrl키와 `키를 동시에 누르거나 메뉴에서 터미널 → 새 터미널을 통해 열 수 있다 쓰레기통 버튼을 누르면 터미널이 종료된다 여러개의 터미널을 열 수도 있다 ✅ gtts 라이브러리 문자를 음성으로 변환해주는 라이브러리 ✅ playsound 라이브러리 mp3 파일을 파이썬에서 재생하기 위한 라이브러리 ✅ 엑세스 거부 에러 엑세스 거부 에러가 뜨면 VSCode를 관리자 권한으로 실행하여 다시 시도한다 🎮 텍스트를 음성으로 ..