테스트주도개발4 Node.js - TDD 시작하기 (3) Jest Matcher Jest는 다른 방법으로 값을 테스트 하도록 matcher 라는 것을 사용한다. matcher란 '이거 맞아?' 라고 물어보는 메서드리고 보면 된다. 기대한 값이 실제 반환된 값과 일치하는 지를 확인하는 작업을 일컫는다. toEqual() 객체가 일치하는 지 검증 test('two plus two equal four', () => { expect(2 + 2).toEqual(4) } toBe() 단순 값 비교 test('two plus two being four', () => { expect(2 + 2).toBe(4) } toBeDefined() 변수가 정의 되었는 지 여부를 테스트 toBeTruthy() / toBeFalsy() 느슨한 타입 기반 언어인 자바스크립트는 자바같은 강한.. 2023. 11. 17. Node.js - TDD 시작하기 (2) Jest 기초 문법과 비동기 테스트 방법 //테스트 코드 형태는 아래와 같다 const 변수 = require('../테스트할파일.js') describe('테스트 그룹 이름', () => { it('테스트1', () => { expect( 테스트할 변수나 값 ).toBe( 결과 값 ) } it('테스트2', () => { expect( 테스트할 변수나 값 ).toBe( 결과 값 ) } } describe 테스트를 그룹화, 테스트 단위를 묶는 가장 큰 단위 test, it 기본 테스트를 진행 test()와 it()은 동일한 기능을 수행 expect 값을 테스트 할 때마다 사용 혼자 사용하지 않고, 아래의 형태로 사용 expect( 테스트할 변수나 값 ).matcher함수( 결과 값 ) 콜백 테스트 비동기.. 2023. 11. 17. Node.js - TDD 시작하기 (1) Node.js에서 TDD를 시작하는 방법에 대해 알아보기로 하자. TDD에 대하여 : https://mand0o0.tistory.com/100 1. 환경 설정 테스트 러너 선택 Jest : 기본적인 설정이 간편하고 사용하기 쉽다. Mocking, assertion, 비동기 코드 테스트 등을 지원한다. Mocha + Chai : Mocha는 테스트 러너이며, Chai는 assertion 라이브러리. 유연성이 높아 필요에 따라 다양한 방식으로 확장할 수 있다. 패키지 설치 선택한 테스트 러너와 함께 필요한 패키지를 설치한다. Jest를 사용한다면 Jest만 설치하면 되고, Mocha와 Chai를 함께 사용한다면 각각을 설치한다. # Jest 설치 npm install jest --save-dev # Moch.. 2023. 11. 16. Node.js - TDD (Test Driven Development) 이전 프로젝트에서 직접 도전해 보고싶었지만 계속해서 망설이던 것이 두가지 있는 데 그게 테스트 주도 개발과 자동화 배포 이다. 디버깅 시간을 줄이고, 안정적인 애플리케이션을 만들 수 있는 테스트 주도 개발에 대해 오늘 공부해보고, 다음 프로젝트에 적용 해보려고 한다. 테스트 주도 개발 (TDD) Test-Driven Development (TDD)은 소프트웨어 개발 방법론 중 하나로, 테스트를 먼저 작성하고 해당 테스트가 통과될 수 있도록 코드를 작성하는 것을 강조한다. 여기에는 몇 가지 장점과 함께 고려해야 할 몇 가지 단점이 있다. TDD 장점: 안정성과 신뢰성 향상: 테스트가 코드 작성 전에 작성되기 때문에 코드 변경으로 인한 예기치 않은 버그가 줄어들고 소프트웨어의 안정성과 신뢰성이 향상된다. 문.. 2023. 11. 15. 이전 1 다음