Unit Testing 이란 무엇인가?

2022. 12. 10. 15:33·Unit Testing
반응형

Unit Testing

Unit Testing은 Unit 과 Testing이 합쳐진 단어이다. 따라서 Unit Testing에 대해 논하기 위해서는 Unit과 Testing 각각이 무엇을 의미하는지 알아야 한다.

 

Unit

Unit 이란 기능들을 저장하는 컨테이너이다. Unit은 특정한 책임을 가지고, 명확히 정의된 역할의 범위를 가진다. 즉, 객체 지향 프로그래밍(OOP) 에서는 객체가 Unit의 후보가 되며, Kotlin과 Java에서는 class가 Unit이 될 수 있다. 

 

하지만 모든 객체가 Unit은 아니다. 이유는 데이터를 저장하기만 하고, 동작(기능)이 없는 객체는 Unit이 아니기 때문이다. 예를 들어 Kotlin의 Data Class나 Java의 POJO의 경우 데이터를 저장하는 역할만 하므로 Unit이 아니다.

 

Testing

Testing이란 정의된 기능이 제대로 동작하는지 확인하는 것이다.

 

Unit Testing이란 무엇인가?

즉, Unit Testing이란 Unit(기능을 저장하는 컨테이너)의 함수를 호출 했을 때 동작이 예상된대로 수행되는지를 테스트 하는 것이다. 

 

 

 Java, Kotlin에서는 Unit Testing을 객체의 동작을 테스트 하는 것의 의미로 쓰인다. 

 

 위의 그림에 Assert라는 단어가 나와있는데, Testing을 접해보지 않았다면 익숙하지 않을 것이다. Assert는 보통 예상되는 결과를 확인하기 위해 쓴다. 한국어로 Assert는 주장하다 라는 뜻이고, 함수의 실행 결과가 특정한 값 혹은 임을 주장하기 위해서 사용된다. Java, Kotlin을 위한 Unit Testing Framework인 JUnit에서도 assert를 자주 사용한다.

 

 

 

반응형

'Unit Testing' 카테고리의 다른 글

IntelliJ, Android Studio에서 Test Coverage 확인과 Test Coverage의 한계점  (0) 2022.12.15
IntelliJ, Android Studio에서 Test 결과를 시각적으로 확인하는 방법 : Gradle 사용  (0) 2022.12.14
Command Line에서 Test 실행하기 : Gradle Task 활용하기  (0) 2022.12.13
@Before Annotation 사용해 테스트 환경 설정하기  (0) 2022.12.12
Unit Test 환경 설정하기 : JUnit 환경 설정 하고 테스트 해보기  (0) 2022.12.11


'Unit Testing' 카테고리의 다른 글
  • IntelliJ, Android Studio에서 Test 결과를 시각적으로 확인하는 방법 : Gradle 사용
  • Command Line에서 Test 실행하기 : Gradle Task 활용하기
  • @Before Annotation 사용해 테스트 환경 설정하기
  • Unit Test 환경 설정하기 : JUnit 환경 설정 하고 테스트 해보기
심플코드
심플코드
프로그래밍을 어렵지 않게 풀어서 설명하는 기술 블로그
    반응형
  • 심플코드
    심플코드
    심플코드
  • 전체
    오늘
    어제
    • 분류 전체보기 (96)
      • 안드로이드를 위한 Coroutines (2)
      • Unit Testing (19)
      • GitHub Actions (0)
      • 공식 문서 번역 (35)
        • Coroutines 공식 문서 (35)
      • 알고리즘 (7)
        • Kotlin 자료구조 (0)
        • 알고리즘 (7)
        • Kotlin으로 구현하는 자료구조 (0)
      • 코딩 테스트 (0)
      • Deep Learning (0)
      • Machine Learning Math (17)
        • Linear Algebra (17)
      • ML (0)
      • Docker (15)
      • Kubernetes (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

    • 코틀린 코루틴의 정석 책 출간 소식
  • 인기 글

  • 태그

    unit test
    코루틴 Flow
    Machine Learning
    Coroutines Channel
    TensorFlow
    coroutine
    Kotlin
    Coroutines Context
    Coroutines Flow
    junit
    코루틴 채널
    mockito
    numpy
    pytorch
    컨테이너
    unit testing
    도커
    코루틴
    Docker
    Coroutines
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
심플코드
Unit Testing 이란 무엇인가?
상단으로

티스토리툴바