본문 바로가기
728x90

개발자 도전기/[STUDY] TEST CODE4

Node.js | TEST | 통합 테스트 시 사용하는 라이브러리 분석, 비교 해보기: [axios, supertest, chai-http, axiosist 등등등] 통합 테스트(Integration Test) 관련 정보를 구글링 하다가 향로님께서 작성하신 '테스트하기 좋은 코드 - 테스트하기 어려운 코드'라는 글을 읽었다. 향로님은 단위 테스트(Unit Test)에 대해서 글을 작성해주시긴 했지만, 전반적인 테스트라는 과정을 생각해봤을 때, 엔지니어로써 가져야 하는 마인드셋인 것 같아서 적어본다. 1. 테스트하기 좋은 코드 - 테스트하기 어려운 코드 팀 분들과 함께 NextStep - 이펙티브 코틀린 강좌를 수강하고 있다. 최근에 과제 회고를 처음 진행했는데, 이때 나온 주제가 테스트 하기 좋은 코드였다. 이 주제는 사실 이미 너무 많이 회자된 주 jojoldu.tistory.com Q. 테스트는 구현의 보조적인 수단인데, 테스트를 위해서 원본 코드의 구현과 설계를.. 2022. 9. 21.
TDD | node.js | 사용자 조회, 삭제, 추가, 수정 API 테스트 ※ 인프런 - 테스트주도개발(TDD)로 만드는 NodeJS API 서버 강의를 기반으로 정리한 내용입니다. 사용자 조회 API 테스트 코드 사용자를 조회하는 API는 /users/:id로 설정한다. 성공 시 id가 1인 유저 객체를 반환 실패 시 id가 숫자가 아닐 경우 400으로 응답 id로 유저를 찾을 수 없을 경우 404 응답 성공 시 테스트 코드를 먼저 작성해보자. // index.spec.js describe('GET /users/:id는', () => { describe('성공 시', () => { it('id가 1인 유저 객체를 반환한다', (done) => { request(app) .get('/users/1') .end((err, res) => { res.body.should.have.p.. 2022. 5. 24.
TDD | node.js | 사용자 목록 조회 API 테스트 코드 만들기 ※ 인프런 - 테스트주도개발(TDD)로 만드는 NodeJS API 서버 강의를 기반으로 정리한 내용입니다. 앞에서 간단하게 구현해봤던 /users API를 구체적으로 작성해볼 것이다. GET /users 는 성공했을 때, 다음과 같은 결과가 도출된다. 유저 객체를 담은 배열로 응답 최대 limit 갯수만큼 응답 실패 했을 때는 다음과 같은 결과가 나오게 할 것이다. limit이 숫자형이 아니면 400 응답 offset이 숫자형이 아니면 400 응답 limit은 응답 받을 데이터의 총 길이, offset은 응답 받은 데이터 중 스킵할 때, 그 길이의 차이를 나타내는 파라미터 index.spec.js의 파일을 다음과 같이 수정한다. const app = require('./index'); const requ.. 2022. 5. 23.
TDD | 테스트 주도 개발? ※ 인프런 - 테스트주도개발(TDD)로 만드는 NodeJS API 서버 강의를 기반으로 정리한 내용입니다. TDD(Test Driven Development) 테스트 주도 개발(TDD)은 바로 소스코드를 작성하지 않고, 테스트 코드를 먼저 작성하는 방식을 말한다. 그러고 나서 테스트를 하나씩 통과해가면서 코드를 만들어간다. 강사님 같은 경우 API 서버를 만들 때 TDD 방식을 많이 사용한다고 한다. TDD를 사용하게 되면 개발하는데 시간이 많이 소요되지만, 프로젝트를 유지보수 하는 시점에 가면 TDD로 개발했던 것이 큰 효과를 발휘한다고 한다. 개발을 할 때, 개발을 하는 시간보다는 유지보수하는데 더 많은 시간이 들었고, 이때 TDD방식으로 개발했을 때 많은 도움이 되었다고 한다. (실제로 많은 기업에.. 2022. 5. 9.
728x90
LIST