typeScript4 TypeScript와 TSOA 버전 종속성 내가 뭘 한거지? 새 버전의 개발을 위해 브랜치를 따고, 오랫만에 시동을 걸었다. 잘 돌아가는지 확인차 빌드를 해본 것이다. 그런데 이게 뭐람! 에러가 난다. 지난 버전 릴리즈까지 마친 코드인데, 빌드 에러가 난다고? 내가 뭘 한거지?생각해보자! 지난 번 릴리즈 이후에 리팩토링 한답시고 이것 저것 손을 댄 것도 있고, 또 ...... 아! 테스트, 단위테스트 적용한다고 설정파일도 바꾸고 새로운 패키지도 설치하고 테스트코드도 조금 작성했었지. 아니 그런데 이게 빌드 에러가 날 일인가? 도대체 뭐가 잘못된거지? 분명 단위 테스트 실행(npm run test)했을 땐 아무런 에러가 안 났는데... 하긴 당시에 빌드는 안해봤지.자자, 그러지말고 에러코드를 자세하게 읽어보도록 하자구 메시지는 "t.. 2024. 9. 26. TypeScript, Unit Test를 위한 환경 만들기 이전 글, TypeScript, Unit Test를 위한 폴더 구조와 설정에서 타입스크립트를 위한 단위테스트 환경구성 중 겪었던 문제에 대해서 공유한 바 있는데, 이 글에선 실제 환경구성을 위한 간단한 튜토리얼을 기록하고자 한다. 전제타입스크립트를 위한 모듈은 이미 설치돼 있고, 환경설정도 정상 동작함프로젝트는 node 런타임에서 동작하는 백엔드로 프론트엔드 서비스와 연계할 것임프론트엔드에서 vite를 사용하고 있어 단위테스트용 프레임워크로 vitest를 사용할 것임 단위테스트를 위한 모듈 설치 npm install -D vitest 단위테스트 실행을 위한 패키지 스크립트 등록(package.json) "scripts": { "start": "node ./dist/app", "bui.. 2024. 9. 7. TypeScript, Unit Test 중 코드 커버리지 실패 원인과 해결 지난 글에서 타입스크립트를 사용한 프로젝트에 단위테스트를 적용하면서 겪은 문제와 해결방법을 소개했다. 단위테스트를 위한 기본 구성을 마친 후 실제 테스트 코드를 작성, 기본적인 테스트를 실행해서 구성을 검증했다. 단위테스트의 정량적 결과, 코드 커버리지 테스트 코드를 작성한다는 것은 쌍을 이루는 원래의 코드가 의도한대로 - 정상적으로 - 동작하는지를 검증하기 위함이다. 테스트 프레임워크는 이렇게 작성한 테스트 코드가 원래의 코드를 얼마나 검증(커버)해줬는지를 정량적인 수치로 보고해준다. 참 편리한 도구지만 이 정량적 숫자를 끌어 올리는 것은 오롯이 개발자의 몫이다. 각설하고 단위테스트를 위한 기본 구성에 코드 커버리지를 위한 추가 구성을 마치고 잘 동작하는 것을 확인한 뒤에 이 구성을 기.. 2024. 9. 4. TypeScript, Unit Test를 위한 폴더 구조와 설정 TypeScript, 오호라! TypeScript를 프로젝트의 주 언어로 사용한지 일 년 쯤 되어 간다. 정확히 말하자면 Node.js를 기반으로 하는 JavaScript를 사용하다가 TypeScript로 전환했다는 것이 맞겠다. 프론트엔드와 백엔드를 하나의 언어로 개발할 수 있다는 점과, 배포를 위한 런타임 구성이 간단하거나 아에 필요가 없다는 점 말고도 이유가 많았지만, 찾아보면 다 나오는 말들이니 생략하겠다. 하지만 이 말은 꼭 해야겠다. 많은 이유들 중 가장 큰 것은 JavaScript의 수퍼셋인 TypeScript는 - 자바에서는 당연한 것이었지만 - JavaScript의 type에 대한 유연함(?)이 가져다 주는 잠재적인 문제들을 상당수 해결해 줬다는 점이다. 정적분석을 통해 버그를 미.. 2024. 8. 12. 이전 1 다음