읽기 시간:10 분
테스트 케이스 작성 방법은 개발의 중요한 부분처럼 보이지 않을 수 있습니다. 그러나 소프트웨어 테스터가 자신의 작업을 가장 잘 수행하기 위해서는 따라야 할 명확한 단계와 테스트중인 작업의 명확한 정의가 필요합니다.
미항공 우주국과 창,기업 수준 기업에 이르기까지 모든 사람은 최선을 다해 운영하는 팀의 혜택을 누릴 수 있습니다. 우수한 테스트 케이스를 작성하는 것은 팀의 효율성과 효능을 향상시키는 또 하나의 방법 일 뿐이며,파라 소프트는 팀이 그렇게 할 수 있도록 힘을 실어주는 것입니다.
이 블로그에서는 테스트 케이스 작성 방법과 관련된 다음 항목을 다룹니다:
- 테스트 케이스란?
- 테스트 스크립트 대 테스트 케이스
- 다양한 테스트 케이스 유형
- 소프트웨어 테스트 케이스 작성 방법
- 표준 테스트 케이스 형식
- 테스트 케이스 작성 모범 사례
- 테스트 스위트 대 테스트 계획
- 테스트 케이스 작성 도구
테스트 자동화를 통해 더 쉽게 테스트할 수 있도록 유용하고 재사용 가능한 테스트 케이스를 만드는 방법을 알아보세요.
데모 요청
소프트웨어의 테스트 케이스는 무엇입니까?
테스트 사례는 정확히 다음과 같이 들립니다. 모든 소프트웨어 응용 프로그램에 적용되며 수동 테스트 또는 자동화 된 테스트를 사용할 수 있으며 테스트 사례 관리 도구를 사용할 수 있습니다.
테스트 사례를 작성할 때 기억해야 할 중요한 점은 전자 상거래 웹 페이지의 올바른 제품에 할인 코드가 적용되는지 여부와 같은 기본 변수 또는 작업을 테스트하기위한 것입니다. 이를 통해 소프트웨어 테스터는 코드 및 기능을 테스트하는 방법에 더 많은 유연성을 부여 할 수 있습니다.
임베디드 시스템에 대한 단위 및 회귀 테스트 최적화
테스트 스크립트 대 테스트 사례
테스트 사례 대 테스트 스크립트의 차이도 명확히 해야 합니다. 테스트 스크립트는 특정 기능을 테스트하기위한 짧은 프로그램입니다. 테스트 사례는 계획대로 미리 완료해야 하는 단계가 있는 문서입니다.
테스트 사례를 꼼꼼하게 계획된 여행으로 간주하고 테스트 스크립트는 식료품 점으로의 빠른 여행과 같습니다.
테스트 케이스의 다른 유형
테스트 케이스는 코드의 다양한 측면을 측정 할 수 있습니다. 관련된 단계들은 또한 사용자가 로그인 화면에 잘못된 암호를 입력할 때와 같이 긍정적인 예상 결과와 반대로 실패 결과를 유도하도록 의도될 수 있다.
몇 가지 일반적인 테스트 사례 예는 다음과 같습니다:
테스트 케이스는 주어진 소프트웨어에서 발견되는 여러 기능에 적용 할 수 있습니다. 가장 인기있는 예는 다음과 같습니다:
- 테스트-행동을 참조하십시오.
- 사용자 인터페이스 테스트-실행 중 참조.
- 단위 테스트-실행 중 참조.
- 로드&성능 테스트–동작 중 참조. 낮은 코드 응용 프로그램 테스트
널리 사용되는 테스트 사례 예제
테스트 사례는 다양한 소프트웨어 시나리오에서 유용합니다. 개인 소프트웨어에 은행에서 모든 테스트 케이스 응용 프로그램이 필요합니다. 예를 들어,중요한 데이터를 암호화하는 것이 목표라면 소프트웨어는 의도한 대로 작동하는 기능을 갖추어야 합니다.
그러나 기능 테스트는 테스트 케이스 작성의 한 측면 일뿐입니다. 소프트웨어 테스팅은 성능에서 호환성,보안에 이르기까지 코드의 모든 측면에 강력하게 도전해야 합니다. 개인 암호화 소프트웨어는 너무 철저하게 테스트 할 필요가 이유입니다-이 웹 아피스 같은 것들에 관해서 특히.
소프트웨어 테스트 케이스 작성 방법
테스트 케이스 작성은 테스트 케이스의 측정 또는 테스트에 따라 다릅니다. 또한 개발 팀과 테스트 팀 간에 테스트 자산을 공유하면 소프트웨어 테스트를 가속화할 수 있습니다. 그러나 그것은 모두 효과적이고 효율적으로 테스트 케이스를 작성하는 방법을 아는 것으로 시작됩니다.
테스트 사례에는 필드에 항상 있어야 하는 몇 가지 필수 부품이 있습니다. 그러나 모든 테스트 케이스는 8 가지 기본 단계로 나눌 수 있습니다.테스트 케이스는 모두 고유 한 식별자를 나타내야합니다. 대부분의 경우,이 이름 지정 아이디에 대한 규칙을 따르면 조직,명확성 및 이해에 도움이됩니다.
단계 2: 테스트 설명
이 설명은 테스트 중인 장치,기능 또는 기능 또는 확인 중인 기능을 자세히 설명해야 합니다.
3 단계:가정 및 사전 조건
이는 테스트 케이스 실행 전에 충족해야 할 모든 조건을 수반합니다. 한 가지 예는 로그인에 대한 유효한 아웃룩 계정을 요구하는 것입니다.
4 단계:테스트 데이터
이것은 테스트 케이스의 변수 및 값과 관련이 있습니다. 이메일 로그인의 예에서는 계정의 사용자 이름과 암호가 됩니다.
단계 5: 실행될 단계
이러한 단계는 최종 사용자의 관점에서 실행될 때 쉽게 반복 가능한 단계여야 한다. 예를 들어 전자 메일 서버에 로그인하기 위한 테스트 사례에는 다음 단계가 포함될 수 있습니다:
- 이메일 서버 웹 페이지를 엽니다.
- 사용자 이름을 입력합니다.
- 암호를 입력합니다.
- “입력”또는”로그인”버튼을 클릭하십시오.
6 단계:예상 결과
테스트 케이스 단계 실행 후 예상 결과를 나타냅니다. 올바른 로그인 정보를 입력하면 예상되는 결과는 성공적인 로그인이 될 것입니다.
단계 7: 실제 결과 및 사후 조건
예상 결과와 비교하여 테스트 케이스의 상태를 확인할 수 있습니다. 전자 메일 로그인의 경우 사용자가 성공적으로 로그인했거나 로그인하지 않았습니다. 사후 조건은 전자 메일 받은 편지함으로 리디렉션되는 것과 같은 단계 실행의 결과로 발생하는 것입니다.
단계 8:합격/불합격
합격/불합격 상태를 결정하는 것은 예상 결과와 실제 결과가 서로 비교되는 방식에 따라 달라집니다.
같은 결과=통과
다른 결과=실패
개발&테스트 팀 간에 테스트 자산을 공유하여 소프트웨어 테스트 가속화
표준 단위 테스트 사례 형식
잘 작성된 단위 테스트의 각 부분은 다음과 같은 몇 가지 핵심 측면을 정의합니다:
- 테스트에서 수행한 기능
- 테스트 실행으로 인한 예상 결과
- 테스트가 코드베이스의 다른 부분과 격리되어 실행되었는지 확인
잘 작성된 테스트의 표준 형식은 다음과 같은 부분으로 구성된다는 것을 아는 것이 중요합니다.:
- 의미 있는 테스트 메서드 이름
- 테스트 중인 메서드 또는 단위(테스트 중인 코드의 일부)테스트에 사용할 제어 데이터 또는 모의
- 어설션 적용
- 격리된 상태에서 단위 테스트 실행
테스트 사례 템플릿이 있습니까?
언급 한 바와 같이 표준 테스트 케이스 형식이 있습니다. 그러나 테스트 사례 템플릿은 회사마다,심지어 팀마다 다를 수 있습니다. 대신 테스트 사례 템플릿은 테스트 시나리오 및 후속 테스트 사례 목록이 있는 문서입니다.
품질 테스트 사례 예
테스트 사례는 테스트 유형 및 전체 테스트 분야에 따라 다르지만 품질 테스트 사례를 작성하는 것은 위의 몇 가지 신뢰할 수있는 항목으로 요약됩니다. 주의 사항:테스트 메서드의 이름에는 테스트 중인 메서드 또는 단위와 예상 결과가 포함되어야 합니다.
각 단위는 고립에서 시험되어야 한다는 것을 또한 주의되어야 합니다. 이 경우”격리”는 테스트 중인 응용 프로그램의 일부만 실행하기 위해 가능한 한 집중된 테스트를 유지하는 것을 의미합니다.
이 예제는 은행 관련 테스트 사례에서 가져온 것입니다:
에 대한 코드 화면 캡처는 다음과 같은 단위 테스트임을 알고 있습니다.:
- 이 메서드는 다음과 같습니다.
- 제어된 데이터에 사용된 밸런스는 500 이었다.
- 예상 결과는 참입니다.
의미 있는 메서드 이름을 사용하면 결과를 검토하는 모든 사용자가 단위 테스트에서 테스트한 내용을 이해할 수 있습니다. 또한 테스트 할 데이터,예상 결과 및 테스트 된 내용을 알립니다.
테스트가 실패하면 문제 해결을 더 쉽게 할 수 있고 회귀가 발생하지 않도록 하기 위해 예상되는 결과를 파악하는 것이 중요합니다.
테스트 케이스 데이터
사용된 데이터는 테스트를 실행하기에 충분해야 합니다. 단위 테스트를 위해,우리는 우리의 응용 프로그램의 가장 기본적인 단위를 테스트하기 위해 가능한 한 간단하게 만들고 싶어. 데이터는 데이터를 제어할 수 있는 문자열 또는 개체 변수를 만드는 것만 큼 간단할 수 있습니다. 또는 종속성을 사용할 수 없거나 해당 종속성이 특정 상태에 있어야 하는 경우 모의 프레임워크를 테스트에 사용할 수 있습니다.
충분한 경우 그 한 부분을 테스트하기에 충분합니다. 테스트를 실행하기 위해 응용 프로그램의 모든 부분을 구성할 필요는 없습니다.
이 모든 것은 단위 테스트 실행에 사용되는 데이터이므로 단위 테스트의 동작 방식에 영향을 미칩니다. 따라서 단위 테스트의 이 부분은 테스트에 사용할 데이터를 알기 위해 테스트하는 코드를 어느 정도 이해해야 하기 때문에 가장 많은 시간이 소요됩니다.
테스트중인 코드에 필요한 부분 만 사용하여 간단하게 유지하십시오. 모의 테스트는 테스트와 상호 작용할 때 이러한 개체의 메서드가 작동하는 방식을 제어할 수 있으므로 이 단계에서 매우 유용합니다.
예를 들어 다음 데이터가 제공됩니다:
개체의 동작을 제어하는 방법을 보여주는 코드의 화면 캡처 격리 테스트를 위해”고객 클래스”에 대한 모의를 사용하여”실제 고객 클래스”를 피했습니다. 이 테스트를 위해 다른 개체를 도입하거나 구성하지 않으려는 이유는 해당 개체에 대한 유지 보수성의 또 다른 레이어를 추가하기 때문이며 테스트 중인 메서드의 결과에 영향을 주지 않기 때문입니다.
다음에 생성 될 변수는”초기 잔액”—코드에 대한 지식으로 인해 알려진 것입니다. 다음 줄에는 방금 사용한 데이터로 테스트하는 방법을 준비하기 위한 모의 및 초기 잔액과 함께 생성되는 계정 개체가 표시됩니다.
이 예제에서는 고객 개체의 데이터에 대해 신경 쓰지 않고 테스트를 위해 제어 할 수있는 초기 잔액을 통과했기 때문에 계정 개체가 모의 고객으로 구성됩니다.
다음 줄은 테스트 중인 메서드가 숫자를 사용해야 하므로 입력을 정의합니다. 우리는 우리가 테스트하는 방법에 사용되는”균형”을 정의. 그런 다음 메서드는 나중에 사용할 수 있도록 변수에 저장되는 메서드의 결과로 실행됩니다.
어설션 적용
테스트가 성공적으로 완료되면(예외나 오류 없이 처음부터 끝까지 실행됨)단위 테스트에 어설션을 적용할 차례입니다. 어설션이 없으면 단위 테스트가 의도한 대로 작동하는지 확인하기 위해 시행하는 것이 없으므로 단위 테스트는 의미가 없습니다.
실행된 라인의 커버리지를 수집하면 실행된 내용을 알 수 있지만 다음을 확인할 수 있는 충분한 세부 정보는 제공하지 않습니다:
- 코드가 예상대로 작동하는 경우.
- 코드가 품질 목표를 충족하는 경우.
- 반환된 데이터가 예상 데이터인 경우
어설션은 다음과 같이 기본일 수 있습니다:
단위 테스트에 테스트 결과에서 메서드를 검사하는 하나의 어설션이 포함되어 있는 경우 이는 의미 있는 단위 테스트입니다.
단위 테스트의 표준 형식을 적용함으로써 팀은 테스트를 보다 쉽게 유지 관리,읽기 및/또는 업데이트하여 나머지 응용 프로그램에 더 많은 테스트를 적용할 수 있는 위치를 쉽게 확인할 수 있습니다.
품질 테스트 사례 작성에 대한 모범 사례는 무엇입니까?
효과적인 테스트 및 테스트 사례를 작성하는 방법은 시간이 지남에 따라 간소화 될 수 있습니다. 일부 모범 사례에는 강력한 제목,강력한 설명 사용 및 언어를 간결하고 명확하게 유지하는 것이 포함됩니다.
그러나 전제 조건,가정 및 예상 결과도 포함하기를 원할 것입니다. 이 모든 정보는 특히 테스트 케이스가 대신”통과”또는”실패”여야하는지 여부를 결정할 때 소프트웨어 테스터와 관련이 있습니다.
잘 작동하는 테스트 케이스를 만들기 위한 치트 시트는 다음과 같습니다:
- 일을 간단하고 투명하게 유지하십시오.
- 테스트 케이스를 재사용할 수 있도록 합니다.
- 테스트 케이스 식별자를 고유하게 유지합니다.
- 동료 검토가 중요합니다.
- 테스트 사례에는 최종 사용자 또는 정의된 요구 사항을 염두에 두어야 합니다.
- 예상 결과 및 가정을 지정합니다.
간단하고 독특하며 구체적이며 피드백에 개방적이며 재사용성에 중점을 둡니다. 품질 테스트 케이스를 작성하는 방법을 좀 더 시각적으로 보려면 주제에 대한 파라 소프트의 웹 세미나를 확인하십시오.
테스트 스위트 대 테스트 계획
테스트 케이스의 다른 측면에는 테스트 스위트 및 테스트 계획이 포함됩니다. 이러한 주요 방법이 다르며 둘 다 정확한 테스트 케이스 개발에 필수적입니다.
이 5 가지 맛있는 기술 조합으로 더 똑똑한 소프트웨어 테스터가 되십시오
테스트 스위트 란 무엇입니까?
테스트 스위트는 소스 코드,종속성 모음 또는 코드에서 수행할 테스트 스위트와 관련하여 테스트 사례에 대해 작동합니다. 테스트 도구 모음을 사용하면 분석 또는 계획 요구 사항에 맞는 방식으로 테스트 사례를 분류할 수 있습니다.
즉,핵심 소프트웨어 기능에는 자체 테스트 스위트가 있고 다른 테스트 스위트는 연기 또는 보안과 같은 특정 테스트 유형을 위한 것일 수 있습니다. 테스트 도구 모음을 테스트 사례를 구성하는 책장으로 생각하십시오.
테스트 계획이란 무엇입니까?
반면,테스트 계획은 모든 테스트 도구 모음 위에 있는 우산과 비슷합니다. 테스트 사례가 책이고 테스트 도구 모음이 책장인 경우 테스트 계획은 책장을 포함하는 방입니다.
일반적으로 테스트 계획은 수동 테스트,자동 테스트 및 테스트 방법에 대한 일반적인 형식으로 설정됩니다. 그들은 변경 사항을 구현하거나 새로운 기능을 추가하기 전에 테스트 스위트 및 테스트 케이스를 활용하여 재단에서 소프트웨어를 테스트합니다.
최고의 테스트 케이스 쓰기 도구
일반적으로 패러 소프트는”조지 젯슨”이론을 염두에두고 도구와 제품군을 개발합니다. 즉,고객이”버튼을 눌러”모든 것을 처리 할 수 있기를 원한다는 것입니다. 이것이 완전히 현실적이지는 않지만 자동화에 중점을 둔 도구는 테스트 사례를 작성할 때 사용하는 것이 가장 좋습니다.
자동화를 지원할 뿐만 아니라 개발 초기부터 지원할 수 있습니다. 모든 후,그것은 너무 쉽게 작은 세부 사항 또는 기능에 의해 수렁에 빠져 얻을. 소프트웨어가 먼저 작동해야한다는 것을 잊어 버릴 수도 있습니다. 여기에 자바 단위 테스트 도구가 들어 있습니다.테스트 및 소프트웨어 품질 향상 테스트 자동화를 참조하십시오.
데모 요청
이 도구를 사용하면 초보자와 전문가 모두 단위 테스트 기술과 단위 테스트 경험을 더 빨리 향상시킬 수 있습니다. 기초를 설정 한 후,그것은 단위 테스트를 실행 한 다음 테스트가 의미가 있는지 확인하기 위해 사용자를 안내합니다. 테스트에서 찾아야 할 것들의 종류를 이해할 수 있을 때,테스트 케이스 작성은 덜 위협적이 됩니다.