[Unit Test] - Why Junit?

김주형·2022년 8월 3일
0

TIL

목록 보기
3/37

Reference

다음 내용들을 참고하여 작성되었습니다. 🙇🏻‍♂️


What is Junit?

단위 테스트(Unit Test)를 공부 중 처음 알게 된 Junit은
JVM 계열 언어에서 사용하는 단위 테스트 프레임워크를 말한다.

처음 마주한 Junit에게 떠올린 질문들과 대답들은 같다.

  • 왜 사용하는가?(무엇이 목적인지)
    • 단위 테스트의 목적과 개발과정에서 중요한 단계인 이유는 다음과 같다.
    • 서면 코드를 격리하여 테스트하고 의도한 대로 작동하는지 결정한다.
    • 단위 테스트 올바르게 수행하면 이후 테스트 단계에서 찾기가 더 어려울 수 있는 코드의 초기 결함을 감지하는 데 돕는다.
  • 단위 테스트 프레임워크를 선택할 때 무엇을 고려해야하는가?
    • 집중하고 싶은 한 단계의 테스트와 사용하고 싶은 프로그래밍 언어를 선택하면 된다. Java는 Junit!
  • 사용함으로써 얻는 장점은 무엇인가?
    • 테스트 방법을 식별하기 위한 주석 제공
    • 예상 결과를 테스트하기 위한 주장(assertion) 제공
    • 테스트를 실행하기 위한 테스트 러너 제공
    • JUnit 테스트를 사용하면 더 빠른 코드 작성으로 인한 품질 상승 가능
    • Junit을 선택할 때 무엇을 비교해야하는가?
  • 단위 테스트 시 주의점
    • 단위 테스트는 코드를 테스트하는 좋은 방법이다.
      수동으로 해야 하며, 문제를 해결하는 것이 항상 쉬운 것은 아니다.
      테스트는 상황을 바로잡는 방법이지만, 테스트 시간에 갇혀서 문제를 해결하기 때문에 시간 낭비가 되지않도록 주의해야 한다.

테스트는 요구 사항에 따라 실행되도록 애플리케이션의 기능을 확인하는 과정이다. 단위 테스트는 개발자 수준에서 그림에 나온다; 그것은 단일 엔티티(클래스 또는 메소드)의 테스트이다. 단위 테스트는 소프트웨어 회사가 고객에게 양질의 제품을 제공할 수 있도록 돕는 데 중요한 역할을 한다.

단위 테스트는 수동 테스트와 자동화된 테스트의 두 가지 방법으로 수행할 수 있다.

수동 테스트자동 테스트
도구 지원 없이 수동으로 테스트 케이스를 실행하는 것은 수동 테스트라고 합니다.자동화 도구를 사용하여 도구 지원을 받고 테스트 사례를 실행하는 것은 자동화 테스트라고 합니다.
시간이 많이 걸리고 지루하다 - 시험 사례는 인적 자원에 의해 실행되기 때문에, 매우 느리고 지루하다.빠른 - 자동화는 인적 자원보다 테스트 사례를 훨씬 빠르게 실행합니다.
인적 자원에 대한 막대한 투자 - 테스트 사례를 수동으로 실행해야 하기 때문에 수동 테스트에 더 많은 테스터가 필요합니다.인적 자원에 대한 투자가 적습니다 - 테스트 사례는 자동화 도구를 사용하여 실행되므로 자동화 테스트에 필요한 테스터 수가 줄어듭니다.
덜 신뢰할 수 있는 - 수동 테스트는 인간의 오류를 설명해야 하기 때문에 덜 신뢰할 수 있다.더 신뢰할 수 있는 - 자동화 테스트는 정확하고 신뢰할 수 있다.
프로그래밍할 수 없음 - 숨겨진 정보를 가져오기 위해 정교한 테스트를 작성하기 위해 프로그래밍을 수행할 수 없습니다.프로그래밍 가능한 - 테스터는 숨겨진 정보를 가져오기 위해 정교한 테스트를 프로그래밍할 수 있다.

What is Junit?

JUnit은 자바 프로그래밍 언어를 위한 단위 테스트 프레임워크이다.
중요한 역할 테스트 기반 개발을 하며, xUnit으로 알려진 단위 테스트 프레임워크 제품군이라고 한다.

JUnit은 먼저 테스트한 다음 구현할 수 있는 코드에 대한 테스트 데이터를 설정하는 것을 강조하는 "먼저 테스트한 다음 코딩"이라는 아이디어를 홍보한다. 이 접근 방식은 " 조금 테스트하고, 조금 코딩하고, 조금 테스트하고, 조금 코딩하는 것"과 같다. 생산성과 프로그램 코드의 안정성을 증가시켜 프로그래머의 스트레스와 디버깅에 소요되는 시간을 줄인다.

JUnit의 특징

JUnit은 테스트를 작성하고 실행하는 데 사용되는 오픈 소스 프레임워크입니다.

테스트 방법을 식별하기 위한 주석을 제공합니다.

예상 결과를 테스트하기 위한 주장을 제공합니다.

테스트를 실행하기 위한 테스트 러너를 제공합니다.

JUnit 테스트를 사용하면 코드를 더 빨리 작성할 수 있어 품질을 높일 수 있습니다.

JUnit은 우아하게 간단하다. 그것은 덜 복잡하고 시간이 덜 걸린다.

JUnit 테스트는 자동으로 실행할 수 있으며 자체 결과를 확인하고 즉각적인 피드백을 제공합니다. 테스트 결과 보고서를 수동으로 훑어볼 필요가 없습니다.

JUnit 테스트는 테스트 사례와 다른 테스트 제품군이 포함된 테스트 제품군으로 구성할 수 있습니다.

JUnit은 테스트가 원활하게 실행되면 녹색 막대에 테스트 진행 상황을 표시하고 테스트가 실패하면 빨간색으로 바뀝니다.

유닛 테스트 케이스란 무엇인가요?

단위 테스트 케이스는 코드의 다른 부분(방법)이 예상대로 작동하도록 보장하는 코드의 일부이다.
원하는 결과를 빠르게 달성하려면 테스트 프레임워크가 필요하다. J
Unit은 자바 프로그래밍 언어를 위한 완벽한 단위 테스트 프레임워크이다.

공식적인 서면 단위 테스트 사례는 테스트가 실행되기 전에 해결되는 알려진 입력과 예상 출력이 특징이다. 알려진 입력은 전제 조건을 테스트해야 하며 예상 출력은 사후 조건을 테스트해야 한다.

각 요구 사항에 대해 적어도 두 개의 단위 테스트 사례가 있어야 한다 - 하나의 양성 검사와 하나의 음성 테스트. 요구 사항에 하위 요구 사항이 있는 경우, 각 하위 요구 사항에는 양성 및 음성으로 적어도 두 개의 테스트 사례가 있어야 한다.

profile
근면성실

0개의 댓글