2기_스티치

2기_스티치

우아한테크코스 2기 스티치(이준영)입니다 :)

Seoul
11 posts
Website
코드 커버리지(Code Coverage)가 뭔가요? cover image
#java

코드 커버리지(Code Coverage)가 뭔가요?

팀 프로젝트 요구 사항 우아한테크코스에서는 레벨 3,4 과정에서 팀 프로젝트를 진행하였다. 레벨 3에서 서비스를 구현했다면, 레벨 4에서는 구현한 서비스에 대한 유지보수를 진행하였는데, 이때 유지보수와 더불어 서비스의 개선을 위한 몇 가지 요구 사항…

Mockito와 BDDMockito는 뭐가 다를까? cover image
#spring

Mockito와 BDDMockito는 뭐가 다를까?

해당 게시글은 JUnit5.x를 기준으로 작성되었습니다. 우아한테크코스 레벨2 미션 중에 의문이 생긴 적이 있었다. 테스트 코드를 작성하려는데 어떤 부분에서는 mock 객체를 을 통해 사용하고, 어떤 부분에서는 을 통해 사용하는 것이었다. impor…

Test Double을 알아보자 cover image
#test-double

Test Double을 알아보자

테스트 더블(Test Double)이란? xUnit Test Patterns의 저자인 제라드 메스자로스(Gerard Meszaros)가 만든 용어로 테스트를 진행하기 어려운 경우 이를 대신해 테스트를 진행할 수 있도록 만들어주는 객체를 말한다. 영화…

Java의 문자열을 파해치자! cover image
#java

Java의 문자열을 파해치자!

문자와 문자열 자바 프로그램이 실행되는 동안 가장 많이 생성되는 객체가 무엇인지 아는가? 그것은 바로 문자열(String) 객체이다. 문자열은 문자의 배열이다. “abc”라는 문자열은 ‘a’,‘b’,‘c’라는 문자를 나열한 배열인 것이다. 자바는 객…

사용성을 고려해 객체를 설계하자 cover image
#oop

사용성을 고려해 객체를 설계하자

과도한 코드 분리에 대한 피드백 지하철 노선도를 만드는 미션을 수행하면서 다양한 리뷰를 받았다. 그 중에서 리뷰가 아니었다면 생각하지 못했을 부분을 소개해보고자 한다. 미션 요구사항 중 출발역에서 도착역으로 가는 경로를 구할 때 기준을 최단 거리, …

else 예약어를 쓰지 않는다 cover image
#object-calisthenic

else 예약어를 쓰지 않는다

The ThoughtWorks Anthology의 더 나은 소프트웨어를 향한 9단계: 객체지향 생활 체조 중 규칙 2에 대한 내용이다. 시작은 프리코스부터 필자는 현재 우아한 테크코스(이하 우테코)를 진행하고 있는데 우테코를 들어오기 위한 과정 중 …

왜 Constructor Injection을 사용해야 하는가? cover image
#spring

왜 Constructor Injection을 사용해야 하는가?

Spring의 DI, 그리고 IoC 글의 본문을 들어가기 이전에 글에서 주로 언급하게 될 DI의 개념에 대해 짚어보고 가겠다. DI는 Dependency Injection, 말 그대로 의존성 주입을 말한다. 이는 객체 간의 의존성을 외부에서 주입하여…

반복적으로 사용되는 인스턴스 캐싱하기 cover image
#cache

반복적으로 사용되는 인스턴스 캐싱하기

캐싱(Caching)이란 캐싱을 알아보기 전에 캐시의 사전적인 정의를 알아보자. 캐시(cache)는 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경…

인터페이스를 분리하여 테스트�하기 좋은 메서드로 만들기 cover image
#interface

인터페이스를 분리하여 테스트하기 좋은 메서드로 만들기

이전 글에서 메서드 시그니처를 수정하여 테스트하기 좋은 메서드로 만들기에서는 테스트하기 어려운 메서드의 시그니처를 수정하여 테스트하기 쉽게 바꾸는 방법을 알아보았다. 해당 방법은 테스트하기 어려운 의존을 매개변수를 통해서 전달받도록 수정하여 메서드가…

메서드 시그니처를 수정하여 테스트하기 좋은 메서드로 만들기 cover image
#refactoring

메서드 시그니처를 수정하여 테스트하기 좋은 메서드로 만들기

테스트 코드의 중요성 테스트 코드를 작성하면 어떤 점이 좋을까? 우리는 왜 시간을 들어가며 테스트 코드를 작성해야 할까? 테스트 코드를 작성함으로 얻을 수 있는 장점은 여러 가지가 존재한다. 제품의 안정성을 높여준다. 기능의 추가 및 수정으로 인한 …

하나의 테스트 케이스는 단위 기능 중 하나의 시나리오만 테스트하라 cover image
#test

하나의 테스트 케이스는 단위 기능 중 하나의 시나리오만 테스트하라

단위 테스트(Unit Test)란 단위 테스트란 메서드를 테스트하는 또 다른 메서드이다. 하나의 단위 테스트는 하나의 메서드의 특정 루틴을 검사한다. 라는 메서드가 테스트 할 수 있는 방법은 2가지가 있다. 가 5보다 커서 를 리턴하는 경우 가 5보…