# TDD

683개의 포스트

[📚독후감 ] Clean Code_9. 단위테스트

바로 얼마 전 TDD를 이용한 토이프로젝트를 진행한 적이 있어서 더 관심있게 읽었다.책에 나온 TDD 법칙 세가지는 나름 지켜가며 프로젝트를 진행했지만, 나머지 내용들도 잘 준수했는지는..솔직히 잘 모르겠다...세가지의 법칙도, 처음 개발할 때에는 잘 지켰지만 프로젝트

약 5시간 전
·
0개의 댓글
·

[TDD로 알고리즘 문제풀기] 이진 변환 반복하기

문제 이진 변환 반복하기 s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수0과 1로 이루어진 어떤 문자열 s돌려받는 배열에서 앞의

약 14시간 전
·
0개의 댓글
·
post-thumbnail

TDD란?

문서화 역할코드에 결함을 발견하기 위함리팩토링 시 안정성 확보테스트 하기 쉬운 코드를 작성하다 보면 더 낮은 결합도를 가진 설계를 얻을 수 있음Test Driven Development (테스트 주도 개발)프로덕션 코드보다 테스트 코드를 먼저 작성하는 개발 방법TFD(

어제
·
0개의 댓글
·

테스트부터 작성하는 것의 의의 중 하나

TDD 논란은 잊을 만하면 어디선가 보이는 것 같네. 비판하는 쪽이나 옹호하는 쪽이나 동의할 만한 주장들이야. 다만, 과유불급이라고 뭐든 지나치면 독이 되겠지.내가 말하고 싶은 건 뭐 별 건 아니야.다른 건 다 제쳐두고,객체를 설계하는 시점에 테스트부터 작성하면 확실히

2일 전
·
0개의 댓글
·
post-thumbnail

TDD, 클린코드 with Java 1주차

1주차 리뷰 자동차 경주 - 단위 테스트 1단계 - 학습 테스트 실습 1. 더 적합한 테스트 메서드 사용 > isEqualTo는 Integer로 값을 받아서 두 개의 데이터가 같은지 비교를 해주고 hasSize()를 이용하게 되면 Iterables를 통해 siz

3일 전
·
0개의 댓글
·
post-thumbnail

회사에서 TDD 쓰려다 실패한 후기

켄트 백의 전설적인 저서 'TDD by example'이 출시된 지 20년이 지났지만, 실무에서 적용하는 회사는 많지 않습니다. 회사에서 TDD를 시도했다가 실패한 후기를 공유합니다.

4일 전
·
6개의 댓글
·

개발일기 #34 : 서비스 코드 안에 테스트 코드

외부 시스템으로 전송하는 메시지는 값을 조회하는 쿼리(Query)와 값을 변경하는 명령(Command)으로 구분된다. 쿼리와 명령 메시지를 처리하는 모듈의 단위 테스트를 위해서는 외부 시스템을 모의하는 프로그램을 내장(Embedded)하고 테스트를 진행한다. 명령 전송

6일 전
·
0개의 댓글
·
post-thumbnail

TDD가 뭔데?

이번에는 개발 방법론인 TDD에 대해 알아보도록 하겠습니다. 간단하게 정의하면, 테스트 코드를 작성하고 나서 실제 구현하는 코드를 작성하는 테스트 주도 개발(Test-Driven-Development) 방법론인데요. 이를 한 번 구체적으로 알아보죠!

2022년 9월 22일
·
0개의 댓글
·

개발일기 #33 : Client First

TDD(Test Driven Development)를 사용하면 실패하는 테스트 코드를 먼저 작성하고 테스트를 성공하는데 필요한 코드에 집중함으로 꼭 필요한 코드만 만들게 되는 효과를 볼 수 있다. 비슷하게 우리가 어떤 부분적인 스펙을 구현하기 위해 서로 의존관계를 가지

2022년 9월 22일
·
0개의 댓글
·
post-thumbnail

테스트 왜함 ㅋㅋ

음.. 개인적으로 테스트를 해보지 않은 사람의 관점에서 테스트 하고싶어서 쓴글입니다..;;

2022년 9월 22일
·
0개의 댓글
·

스프링 테스트 코드

테스트 코드 테스트 코드,,,의 중요성을 간과한 채 개발하던 시절이 있었다. 시간도 부족했고, 테스트 코드 작성법을 또 따로 공부하기 귀찮았기 때문이다. 굳이 테스트를 하자면 Service 계층이나 Repository 계층에 관련해 짧게 짧게 테스트 코드를 작성했던 것 같다. 반면, Controller 계층은 어떻게 테스트를 해야하나 의문이었다. HTTP ...

2022년 9월 21일
·
0개의 댓글
·
post-thumbnail

테스트 주도 개발, TDD

테스트 주도 개발이란 무언가를 개발할 때 바로 개발부터 하는 것이 아닌 개발하려는 항목에 대한 점검 사항을 테스트 코드로 만들고 그 테스트를 통과시키는 방식으로 개발을 진행하는 방법이다.만들고 싶은 기능을 점검할 코드 작성아직 기능을 구현하지 않았으므로 테스트 결과는

2022년 9월 20일
·
0개의 댓글
·
post-thumbnail

구글 엔지니어는 이렇게 일한다: 11장 테스트 개요

구글 초창기에는 엔지니어 주도 테스트를 그다지 중요하게 여기지 않았다. 똑똑한 엔지니어들이 소프트웨어를 알아서 올바르게 만들어줄 것이라 기대했기 때문이다. 대규모 통합 테스트를 수행하는 시스템도 일부 있었지만 대규모 통합 테스트를 수행하는 시스템도 일부 있었지만 대부분

2022년 9월 18일
·
0개의 댓글
·

TDD 연습 프로젝트 14 - Member : Membership = 1 : N

이전까지의 개발은 Membership 따로, Member 따로 진행해왔다. HttpServletRequest 헤더에 사용자 식별값이 별도로 들어있다는 가정하게 개발을 진행해 온 것이다. 그래서 헤더에 값이 없으면 BadRequest 응답을 보내도록 되어있었다. 하지만 이번에 개발할 /api/v2 에서는 헤더에 있는 토큰 값을 파싱하여 Member를 찾아내...

2022년 9월 18일
·
0개의 댓글
·

TDD 연습 프로젝트 13 - 간단한 AOP

aop에 관해선 다른 글에서 설명한 바 있으니 간단하게만 설명하도록 하겠다. aop는 핵심 관심사가 아닌 공통관심사를 처리해주는 기능이다. 멤버 저장 요청을 보냈다고 생각해보자. Controller를 거쳐 Service, Repository로 갔다가 역순으로 다시 올라오면서 응답을 보낼 것이다. 이때 각 계층마다 소요되는 시간을 측정하고 싶다거나 로그를 ...

2022년 9월 18일
·
0개의 댓글
·

TDD 개념정리

TDD 개념정리

2022년 9월 18일
·
0개의 댓글
·

TDD 연습 프로젝트 12 - Filter 적용하기

jwt를 이용할 때, 혹은 로그인 기능을 이용할 때 대부분 스프링 시큐리티를 사용하곤 한다. 스프링 시큐리티에 대한 자세한 공부를 하기 전에 filter에 대한 공부를 하고 들어가려 한다. (왜냐하면 스프링 시큐리티가 필터 체인을 이용하는 것으로 어렴풋이 알고 있다.) 필터 혹은 인터셉터를 사용해서 로그인을 한 사용자와 로그인을 하지 않은 사용자를 미리 ...

2022년 9월 17일
·
0개의 댓글
·

TDD 연습 프로젝트 11 - 멤버 토큰로그인 API

이번엔 로그인 과정에서, 응답으로 쿠키에 세션값을 넣어주는 것이 아닌 ResponseBody에 토큰 값을 포함시켜서 응답하는 방식을 채택하도록 하겠다. 토큰 로그인 API 요구사항 토큰 로그인 API 기능: 토큰을 통한 로그인 기능을 구현한다. 요청: 사용자 Email, 사용자 비밀번호 응답: 사용자 이름, 사용자 Email, 토큰값 Re...

2022년 9월 17일
·
0개의 댓글
·

TDD 연습 프로젝트 10 - 멤버 세션로그인 API

이번엔 로그인 기능을 구현하려한다. 로그인 기능은 세션을 통한 로그인과 JWT를 통한 로그인 두가지 모두를 구현할 예정이다. 글을 쓰기 앞서, 해당 API를 구현함에 있어, 서비스 계층은 테스트를 통과하였지만 컨트롤러 계층의 테스트는 성공하지 못했음을 공지한다. 어제 새벽엔 테스트를 통과하지 못했는데 오늘 아침에 차근차근 글을 작성하면서 왜 테스트를 통과...

2022년 9월 17일
·
0개의 댓글
·