scalatest

이번 글에서는 단위 테스트 책에 적혀있는 단위 테스트의 4대 요소를 설명하겠습니다. 좋은 단위 테스트좋은 단위 테스트는 회귀 방지, 리팩터링 내성, 빠른 피드백, 유지 보수성의 4개 요소를 종합해서 평가합니다. 각 요소별로 특징이 있고, 아쉽게도 4 요소를 모두 만족하게 테스트를 짜는 것은 불가능합니다. 4 요소의 특징을 살펴보고, 어떤 요소에 더 중점을 둬야 하는지 알아보겠습니다. 회귀 방지테스트에서 얘기하는 회귀는 소프트웨어의 버그입니다. 소프트웨어의 버그란 코드를 수정한 후에 이전까지 정상적으로 돌아갔던 기능이 동작하지 않는 경우를 말합니다. 프로그래머에게 있어 코드는 자산이 아니라 책임입니다. 자신이 맡은 책임을 지기 위해 새롭게 기능이 구현될 때 마다 의도된 대로 제대로 동작하는지 테스트 코드를..
이 글은 단위 테스트 책에 적혀있는 단위 테스트의 세 가지 속성과 테스트의 대표적인 두 분파인 고전파와 런던파에 대해 설명하겠습니다. 단위 테스트의 세 가지 속성단위 테스트는 아래의 세 가지 속성을 가집니다.작은 코드 조각(단위) 검증빠르게 수행격리된 방식으로 처리하는 자동화된 테스트1번과 2번은 너무나도 당연한 속성이라 이견이 없지만 3번은 사람마다 다양한 해석이 존재하고, 이로 인해 고전파와 런던파라는 두 분파가 생겼습니다. 고전파모든 사람이 단위 테스트와 테스트 주도 개발에 원론적으로 접근하는 방식을 따르기를 원한다고 해서 고전파(classic)라고 부릅니다.켄트 백의 테스트 주도 개발이 주요 저서입니다. 고전파는 테스트를 작성할 때 아래의 규칙을 지키며 작성합니다.의존성은 공유 의존성을 제외하고 ..
실무에서 코드를 작성하다 보면 처음에는 느끼기 힘들지만 시간이 지날수록 테스트 코드의 중요성을 느끼게 됩니다.초기에는 단순한 기능들을 주로 구현하여 사용할 뿐이지만 시간이 지나면 서비스가 확장되고 점점 복잡한 비즈니스 도메인의 로직들이 코드에 나타나게 되면서 우리의 머리를 아프게 합니다.만약 테스트 코드가 없다면 이전에 작성한 코드들과 상호작용 하거나 리팩터링과 같은 수정을 진행할 경우 어떠한 영향을 끼칠지 코드를 하나하나 분석하지 않는 이상 전혀 알 수 없기 때문에 시간이 지날수록 테스트의 가치가 높아지게 됩니다. 단위 테스트라는 책을 읽으면서 배운 점과 실무에서 코드를 작성하면서 느낀 점들을 글로 적어보려 합니다. 우선 책에 적힌 기본 지식들을 적어보고 이후에 느낀 점들을 더 적어보겠습니다.만약 책을..
sleeptoy
'scalatest' 태그의 글 목록 (2 Page)