JUnit
시작글 - 테스트 주도 개발로 배우는 객체 지향 설계와 실천
11월에 읽기 시작한 테스트 주도 개발로 배우는 객체 지향 설계와 실천이다. 이 책을 통해 테스트 주도 개발에 대한 의미를 새롭게 가지게 되었다. 이전까지 TDD를 오버엔지니어링을 막고, 변화에 유연하게 대처할 수 있는 개발 방법이라 생각했었지만 미쳐알지 못했던 혹은 제대로 인식을 못했던 테스트 코드에 대한 많은 내용을 알게 해주었다. 책은 5부(27장)까지 이뤄져있다. 1부 - 서론 : 테스트 주도 개발의 간단한 소개와 도구를 언급하는데, 도구는 당시 기준으로 JUnit4와 햄크레스트 매처, jMock2 설명한다. 2부 - 테스트 주도 개발 과정 : ATDD 방법론과 객체지향에 대해 설명한다. 3부 - 동작하는 예제 : 이전까지 설명한 내용을 경매시스템 예제를 통해 ATDD 방법으로 작성한다. 예제가 ..
JUnit5 알아보기
인텔리제이를 사용하는 자바 개발자가 90% 이상 사용한다는 JUnit을 간단히 알아보러 한다. 자세한 내용은 공식 가이드를 참고하기 바란다. JUnit 5 JUnit이란? JUnit은 자바 프로그래밍 언어용 유닛 테스트 프레임워크이다. JUnit은 컴파일 타임에 JAR로서 링크된다. [위키백과] JUnit5 구성요소 Junit5는 3가지로 구성되어 있다. - JUnit Platform : JVM에서 테스트 프레임워크를 실행하는 기반, 테스트 엔진 API 제공 - JUnit Jupiter : 테스트를 작성하기 위한 프로그래밍 & 익스텐션 모델을 제공 - JUnit Vintage : 이전 버전을 위한 테스트 엔진 제공 (JUnit3 & JUnit4 호환) 왜 JUnit5 인가? JUnit 시리즈 중에서 20..
토비의스프링 vol.1 - 2장, 테스트
토비의 스프링 vol.1 2장 테스트 내용을 정리하며 오래된 버전이라 예제를 따라서 실행하는 것보단 스프링이 추구하는 객체지향 설계에 대해 생각해본다. 자세한 내용이 궁금하면 읽는 걸 추천한다. 토비의 스프링 3.1 세트 - 교보문고 스프링의 이해와 원리 + 스프링의 기술과 선택 | 『토비의 스프링 3.1』은 스프링을 처음 접하거나 스프링을 경험했지만 스프링이 어렵게 느껴지는 개발자부터 스프링을 활용한 아키텍처를 설계 www.kyobobook.co.kr 2장을 시작하며 스프링이 제공하는 중요한 가치 중에는 객체지향과 테스트가 있다. 애플리케이션은 꾸준히 변하고 커져간다. 그 변화에 대응하는 첫 번째가 바로 확장과 변화를 고려한 객체지향적 설계와 IoC/DI 기술이라면, 두 번째가 코드에 대한 확신과 변화..
이규원님의 현실 세상의 TDD 기초, 8편 : 프로그래머 피드백
📖 이규원 님의 TDD 수강하는 걸 추천드립니다. 👍 The RED : 이규원의 현실 세상의 TDD : 안정감을 주는 코드 작성 방법 | 패스트캠퍼스 그동안 우리나라에는 TDD를 제대로 다루는 책도 강의도 없었죠. 그래서 제가 개발 현장에서 활용하는 TDD를 정확하게 알려드리고자 강의를 만들었습니다. 이제 TDD에 대한 잘못된 인식은 버리고, ' fastcampus.co.kr 피드백 사용자의 피드백부터 시작하여 QA, 테스트, 도구 피드백 등 개발자에겐 피드백은 매우 중요한 요소다. 사용자 피드백 사용자가 소프트웨어를 사용한 후 버그나 개선 사항들을 제보. 개발하고나서 사용자에게 가는 거까지 앤드단계이기 때문에 가장 확실한 피드백이자 제품과 비즈니스 입장에서 피해가 큰 피드백이다. QA (Quality ..
이규원님의 현실 세상의 TDD 기초, 7편 : 테스트 주도 개발
드디어 테스트 주도 개발에 대한 핵심에 돌입한다. 📖 원본이 궁금하면 이규원 님의 TDD 수강하는 걸 추천드립니다. 👍 The RED : 이규원의 현실 세상의 TDD : 안정감을 주는 코드 작성 방법 | 패스트캠퍼스 그동안 우리나라에는 TDD를 제대로 다루는 책도 강의도 없었죠. 그래서 제가 개발 현장에서 활용하는 TDD를 정확하게 알려드리고자 강의를 만들었습니다. 이제 TDD에 대한 잘못된 인식은 버리고, ' fastcampus.co.kr 테스트 주도 개발 이전 시간에 했던 테스트 우선 개발과 비슷하다. 명세를 준수하고 일정 수준의 품질을 유지하며 코드를 만들어간다. 테스트 주도 개발 절차 테스트 주도 개발은 3가지 단계로 반복적으로 사이클이 돌아간다. 1. RED - 실패하는 테스트 추가 2. GRE..
이규원님의 현실 세상의 TDD 기초, 6편 : 정리된 코드(리팩토링)
이전 시간에 실습한 코드 기능 명세, 테스트 우선 개발을 중심으로 코드를 정리하는 시간이다. 강의에선 자바스크립트로 진행되지만 자바로 해석하며 진행했다. 📖 원본이 궁금하면 이규원 님의 TDD 수강하는 걸 추천드립니다. 👍 The RED : 이규원의 현실 세상의 TDD : 안정감을 주는 코드 작성 방법 | 패스트캠퍼스 그동안 우리나라에는 TDD를 제대로 다루는 책도 강의도 없었죠. 그래서 제가 개발 현장에서 활용하는 TDD를 정확하게 알려드리고자 강의를 만들었습니다. 이제 TDD에 대한 잘못된 인식은 버리고, ' fastcampus.co.kr 작업 환경 정리 1) 생산성 : 정리된 환경과 어지럽혀진 환경에서의 작업 생산성 차이 2) 지속성 : 작업 환경의 생산성이 일정 수준 미만으로 떨어지면 더 이상 그..
이규원님의 현실 세상의 TDD 기초, 5편 : 테스트 우선 개발
이번 시간은 테스트 우선 개발에 대한 이야기다 예제 코드는 이전 시간에 했단 단위 테스트를 개선하면서 진행된다. 강의에서 실습을 자바스크립트로 하지만 이번에도 자바로 재해석하면서 진행하겠다. 📖 원본이 궁금하면 이규원 님의 TDD 수강하는 걸 추천드립니다. 👍 The RED : 이규원의 현실 세상의 TDD : 안정감을 주는 코드 작성 방법 | 패스트캠퍼스 그동안 우리나라에는 TDD를 제대로 다루는 책도 강의도 없었죠. 그래서 제가 개발 현장에서 활용하는 TDD를 정확하게 알려드리고자 강의를 만들었습니다. 이제 TDD에 대한 잘못된 인식은 버리고, ' fastcampus.co.kr 테스트 우선 개발 이전과는 반대로 테스트 코드를 먼저 작성하고 운영 코드를 구현하는 개발 절차로 코딩의 수단보다 목적에 집중하..
이규원님의 현실 세상의 TDD 기초, 4편 : 단위테스트
이번 시간은 테스트기법 중 하나인 단위테스트에 대한 이야기다. 교육에서 보여주는 예제는 자바로 재해석했다. 원본이 궁금하면 이규원님의 TDD 수강하는걸 추천드립니다. The RED : 이규원의 현실 세상의 TDD : 안정감을 주는 코드 작성 방법 | 패스트캠퍼스 그동안 우리나라에는 TDD를 제대로 다루는 책도 강의도 없었죠. 그래서 제가 개발 현장에서 활용하는 TDD를 정확하게 알려드리고자 강의를 만들었습니다. 이제 TDD에 대한 잘못된 인식은 버리고, ' fastcampus.co.kr 단위 테스트란? 테스트 주도 개발에 이용되는 가장 중요한 도구이며, 전체시스템 중에 일부분을 테스트 자동화한다. 단위 테스트 작성 실습 아래 예제는 운영중인 프로그램으로 문자열을 입력받아서 공백 문자가 연속되면 하나로 합..