[TIL] - Spring 심화 - 1

장동희·2023년 3월 13일
0

TIL

목록 보기
12/16

Spring 심화 - 1

공부하면서 궁금했던 것들

URI URL 차이

URI

RI는 특정 리소스를 식별하는 통합 자원 식별자(Uniform Resource Identifier)를 의미한다. 웹 기술에서 사용하는 논리적 또는 물리적 리소스를 식별하는 고유한 문자열 시퀀스다.

URL

URL은 흔히 웹 주소라고도 하며, 컴퓨터 네트워크 상에서 리소스가 어디 있는지 알려주기 위한 규약이다. URI의 서브셋이다.

차이점 :

URI는 식별하고, URL은 위치를 가르킨다.

TDD란?

Test-Driven Development**의 약자로
테스트 코드를 먼저 작성하고 실제 동작하는 코드를 개발하는 순서로 개발하는
개발 방법론입니다
찬반의 의견이 아직도 많긴 하지만, 좋은점만 취할 수 있다면, 테스트코드를 먼저 작성하는 개발은 적어도 위와 같은 싸이클에서는 매우 효율적이겠죠?

설계 → 개발 → 테스트 에서
설계 → 테스트 → 개발 순서로

Given - When - Then Pattern?

테스트 코드를 작성하는 가장 대표적인 방법론입니다.
사실 이부분도 논란의 여지가 있습니다만, 그래도 개인적으로 가장쉽게 시작할만한 방법이라 추천드리기 쉬운 것 같습니다.

Given - 준비
When - 실행
Then - 검증

이렇게 단계별로 테스트코드를 나누어서, 매우 직관적으로 작성 할 수 있습니다.

유닛 테스트

유닛 테스트(unit test)는 컴퓨터 프로그래밍에서 소스 코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차다. 즉, 모든 함수와 메소드에 대한 테스트 케이스(Test case)를 작성하는 절차를 말한다. 이를 통해서 언제라도 코드 변경으로 인해 문제가 발생할 경우, 단시간 내에 이를 파악하고 바로 잡을 수 있도록 해준다. 이상적으로, 각 테스트 케이스는 서로 분리되어야 한다. 이를 위해 가짜 객체(Mock object)를 생성하는 것도 좋은 방법이다. 유닛 테스트는 (일반적인 테스트와 달리) 개발자(developer) 뿐만 아니라 보다 더 심도있는 테스트를 위해 테스터(tester)에 의해 수행되기도 한다.

장점 :

  • 문제점 발견 :
    유닛 테스트는 일견 개발 시간을 증가 시키는 것처럼 보이지만 개발 기간 중 대부분을 차지하는 디버깅 시간을 단축시킴으로써 여유로운 프로그래밍을 가능케 한다.

  • 변경이 쉽다 :
    지속적인 유닛 테스트 환경을 구축하면 어떠한 변화가 있더라도 코드와 그 실행이 의도대로 인지를 확인하고 검증 할 수 있게 된다. 확립된 개발 방법과 유닛 테스트의 범위에 따라서 프로그램의 정확성이 좌우된다.

  • 통합이 간단하다 :
    유닛 테스트는 유닛 자체의 불확실성을 제거해주므로 상향식(bottom-up) 테스트 방식에서 유용하다. 먼저 프로그램의 각 부분을 검증하고 그 부분들은 합쳐서 다시 검증하는 통합 테스트에서 더욱 더 빛을 발한다.

0개의 댓글