테스트 케이스/유닛/슈트 어느 것이 더 큰 개념인가요?

조회수 1530회

여기 저기 검색해본 결과, 확실히 테스트 케이스가 가장 작은 단위의 테스트 코드를 의미하는것 같긴 합니다.

그리고 테스트 슈트, 테스트 유닛케이스를 어느 정도 묶은 단위라는 것도 많은 문서에서 발견됩니다.

그렇다면 슈트유닛에는 상하관계가 있는걸까요? 아니면 이음동의어인걸까요? 그것도 아니라면 테스트 유닛유닛 테스트에서 파생된 잘못 쓰이는 단어일까요?

질문 요약:

  • 테스트 케이스: 테스트 코드 하나 하나를 의미
  • 테스트 유닛: 테스트 케이스의 집합
  • 테스트 슈트: 테스트 유닛의 집합
  • 즉, 케이스 < 유닛 < 슈트

이게 맞을까요, 아닐까요?

  • suite 가 스위트룸 할 때의 그 수위트일 거에요. nowp 2020.12.28 11:01
  • daewon 그렇다면 과연 unit과 suite 중 큰 것은 어느것인가 하는것이죠. 편집요청빌런 2020.12.28 17:41
  • @편집요청빌런 : 그건 잘 모르겠어요. nowp 2020.12.28 18:11
  • daewon 😥 편집요청빌런 2020.12.28 20:57

1 답변

  • 좋아요

    2

    싫어요
    채택 취소하기

    테스트 케이스 => 말 그대로 Case. 해당 테스트 유닛에 들어가는 Input. 또는 해당 테스트의 수행 n번. (일반적으로 함수 호출)

    테스트 유닛 => 테스트를 하는 단위 기능. (일반적으로 함수)

    테스트 슈트 => 테스트 유닛의 집합. (일반적으로 함수 묶음)

    • 테스트 슈트가 슈트의 집합인가요? 🙄 뭔가 잘못 쓰신거 같은디... 편집요청빌런 2020.12.27 10:30
    • 앗.. 네. 수정했습니다. dbwodlf3 2020.12.27 21:21
    • 그러면 케이스 < 유닛 < 슈트네요? 편집요청빌런 2020.12.27 22:43
    • 예. 맞습니다. Software Suite 에서 Suite 느낌인 것 같습니다. dbwodlf3 2020.12.27 23:15
    • 그러쿤녀 👍 편집요청빌런 2020.12.27 23:42
    • Cogi 죄송하지만 혹시 관련 자료가 있을까요? 편집요청빌런 2020.12.28 20:59
    • 제 뇌피셜입니다. dbwodlf3 2020.12.29 13:04
    • In software engineering, a test case is a specification of the inputs, execution conditions, testing procedure, and expected results that define a single test to be executed to achieve a particular software testing objective, such as to exercise a particular program path or to verify compliance with a specific requirement.
      출처: https://en.wikipedia.org/wiki/Test_case
      dbwodlf3 2020.12.29 13:05
    • In software development, a test suite, less commonly known as a 'validation suite', is a collection of test cases that are intended to be used to test a software program to show that it has some specified set of behaviours. A test suite often contains detailed instructions or goals for each collection of test cases and information on the system configuration to be used during testing.
      출처:https://en.wikipedia.org/wiki/Test_suite
      dbwodlf3 2020.12.29 13:07
    • In computer programming, unit testing is a software testing method by which individual units of source code—sets of one or more computer program modules together with associated control data, usage procedures, and operating procedures. 출처: https://en.wikipedia.org/wiki/Unit_testing dbwodlf3 2020.12.29 13:07
    • 위키에서는 Test Suite 을 Test Case의 묶음으로 말하고 있네요. Test Unit 은 좀 더 추상적으로 표현했네요. 저는 위에서 (일반적으로 함수 호출), (일반적으로 함수), (일반적으로 함수 묶음) 이라고 표현하였네요. 위키에서의 정의만을 좁게 적용한다면. Test Case < Test Unit < Test Suite 이라는 관계식 자체가 성립하지 않네요. dbwodlf3 2020.12.29 13:09
    • 그림으로 그린다면, Test Suite(Test Cases) => Test Unit => Result 이라는 관계식이 성립하게 되겠네요. dbwodlf3 2020.12.29 13:09
    • 다시 보니. "Test Unit"이 아니라. Unit Testing 이네요. 저는 Test Case => Test Unit => Test Suite 이렇게 정의를 했는데. dbwodlf3 2020.12.29 13:12
    • 일반적으로는. Test Case => Test Suite 이렇게 정의를 하고. Test Unit 이라는 것은 정의 하지 않은 것 같네요. 일반적으로. Unit Testing 이라는 테스팅 개념을 정의했네요. 위의 위키피디아에서도 "unit testing is a software testing method" 이라고 정의하네요. dbwodlf3 2020.12.29 13:13
    • 그냥 Test == Unit Testing 인 것 같네요. dbwodlf3 2020.12.29 13:13
    • 단순 영어적인 개념으로만 보자면. Unit 보다 Suite 가 더 큰 개념인것 같아요. dbwodlf3 2020.12.29 13:14
    • 띠용 🙄 편집요청빌런 2020.12.30 20:09
    • 정말 감사합니다. 편집요청빌런 2020.12.30 20:11

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)