컴퓨터 지식 네트워크 - 컴퓨터 하드웨어 - 단위 테스트의 주요 테스트 기술에는 다음이 포함되지 않습니다.

단위 테스트의 주요 테스트 기술에는 다음이 포함되지 않습니다.

1. 기본 단위 테스트 방법

단위 테스트의 기본 방법에는 수동 정적 분석, 자동 정적 분석, 자동 동적 테스트 및 수동 동적 테스트가 있습니다.

수동 정적 분석: 코드를 수동으로 읽어 오류를 찾습니다. 일반적으로 프로그래머는 서로의 코드를 교차 검사하여 특징적인 오류와 비특징적인 오류를 찾을 수 있습니다.

자동 정적 분석: 도구를 사용하여 코드를 스캔하고 미리 설정된 특정 오류 특성을 기반으로 코드에서 발생할 수 있는 오류를 발견하고 보고합니다. 자동 정적 분석은 구문 특성 오류만 찾을 수 있습니다.

자동 동적 테스트: 도구를 사용하여 자동으로 테스트 사례를 생성하고 테스트 중인 프로그램을 실행하며 특정 동작 특성(예: 예외/프로그램 충돌 등)을 캡처하여 오류를 발견하고 보고합니다. 동작적 특성 오류만 감지할 수 있습니다. 예를 들어 앞서 언급한 추가 기능의 경우 코드가 가장 간단하고 오류도 가장 간단하다고 할 수 있습니다. 그러나 자동 동적 테스트는 여전히 찾을 수 없습니다. 테스트 도구가 코드 기능을 자동으로 이해할 수 없기 때문입니다.

수동 동적 테스트: 프로그램의 입력과 예상되는 올바른 출력을 수동으로 설정하고, 프로그램을 실행하고, 실제 출력이 기대치를 충족하는지 확인하고, 그렇지 않은 경우 자동으로 오류를 보고합니다. 여기서 언급된 "수동"은 테스트 사례의 입력 및 예상 출력이 수동으로 설정된다는 의미일 뿐입니다. 다른 작업은 도구를 사용하여 수동으로 또는 자동으로 수행할 수 있습니다. 수동 동적 테스트는 특징적인 오류와 비특징적인 오류를 찾을 수 있습니다. 예를 들어 위에서 언급한 추가 기능의 경우 수동으로 테스트 케이스를 만들고 두 개의 1을 입력하고 출력이 2인지 판단하고 실행하면 됩니다. 테스트해 보면 코드에 실수가 있음을 알 수 있습니다.

위의 네 가지 방법은 더 세분화될 수 있습니다. 예를 들어 수동 동적 테스트에는 테스트 케이스를 설계하는 방법이 여러 가지가 있습니다. 프로그램의 기능을 기반으로 테스트 케이스를 설계하면 블랙박스 테스트입니다. 코드를 기반으로 테스트 케이스를 설계하는 것을 코드의 논리적 구조를 기반으로 테스트 케이스를 설계하는 것을 화이트박스 테스트라고 합니다.

2. 검사 방법 선택

업무상 심각도에 관계없이 온갖 종류의 검사 방법을 사용하시나요? 분명히 그렇지 않습니다. 프로젝트 일정과 예산이 이를 허용하지 않으며 효율성 원칙에도 맞지 않습니다. 한 가지 방법을 주요 테스트 방법으로 선택하고 다른 방법을 상황에 따라 선택해야 합니다.

자동 정적 분석과 자동 동적 테스트는 특징적인 오류만 찾을 수 있습니다. 이 두 가지 방법은 기껏해야 특징적인 오류만 찾을 수 있지만 대부분의 문법적 특징 오류는 많은 동작 특성 오류를 발견할 수 있습니다. 개발 과정이나 통합 테스트 및 시스템 테스트 중에 자동으로 노출되므로 이 두 가지 방법은 주요 테스트 방법으로 적합하지 않습니다.

수동 정적 분석에서는 특징적인 오류와 비특징적인 오류를 찾을 수 있지만 모든 오류를 완전히 찾는 것은 분명히 너무 어렵습니다.

수동 동적 테스트는 특징적인 오류와 비특징적인 오류를 찾을 수 있으며 개발 여지가 넓어 주요 테스트 방법으로 사용할 수 있습니다.

3. 블랙박스 테스트와 화이트박스 테스트

"유닛 테스트는 화이트박스 테스트다", "유닛 테스트에도 블랙박스가 있다"는 말을 흔히 볼 수 있는데, 이는 쉽게 착란. . 블랙박스와 화이트박스는 실제로 시스템의 외부 특성을 테스트하는 테스트 방법으로, 대상 시스템을 블랙박스로 취급하며 화이트박스는 시스템의 내부 구조를 테스트합니다. 각 테스트 단계에서는 블랙박스 방식과 화이트박스 방식을 사용할 수 있습니다. 즉, 단위 테스트, 통합 테스트, 시스템 테스트 등 블랙박스 방식과 화이트박스 방식을 사용할 수 있습니다.

블랙박스 테스트는 기능 테스트라고도 합니다. 먼저 프로그램이 기본 기능을 구현하는지 테스트해야 합니다. 따라서 블랙박스 테스트는 기본 테스트입니다. 블랙박스 테스팅의 주요 결점은 완전성을 측정하기 어렵다는 점인데, 화이트박스 테스팅은 이 결점을 보완할 수 있을 뿐입니다.

화이트 박스 테스트는 정확하게 계산할 수 있는 수치 지표를 사용하여 논리적 적용 범위를 통해 완전성을 측정합니다. 논리 단위에는 주로 명령문, 분기, 조건, 조건 값, 조건 값 조합 및 경로가 포함됩니다. 명세서 적용 범위는 모든 명세서 등을 포함하는 것을 의미합니다. 또한 일종의 판단 조건 커버리지도 있는데, 실제로는 브랜치 커버리지와 조건 커버리지를 결합한 것입니다.

조건과 관련된 적용 범위에는 세 가지 유형이 있습니다. 설명: 조건 적용 범위는 모든 조건식을 포함하는 것을 의미합니다. 즉, 모든 조건식은 계산 결과에 관계없이 모든 가능한 값을 포함하는 것을 의미합니다. 즉, 각 조건의 참값과 거짓값을 한 번 이상 계산해야 합니다. 조건값 조합 범위는 조건값의 가능한 모든 조합을 포괄하는 것을 의미합니다. 조건과 직접 관련된 오류는 주로 논리 연산자 오류입니다. 예를 들어 ||는 &&로 작성되고 !라는 단어가 누락되는 등의 오류는 기본적으로 분기 적용 범위와 조건 적용 범위의 조합을 사용하여 찾을 수 있습니다. 조건값 조합 커버리지에는 많은 수의 테스트 케이스가 필요한 경우가 많으므로 조건값 커버리지와 조건값 조합 커버리지의 비용 효율성이 낮습니다. .

4. 테스트 케이스

수동 동적 테스트에는 테스트 케이스의 수동 설계가 필요합니다. 테스트 케이스는 입력 데이터를 설정하고, 테스트 중인 프로그램을 실행하고, 출력이 기대치를 충족하는지 확인하는 것입니다. 출력이 예상한 대로이면 테스트가 통과하고, 그렇지 않으면 테스트가 실패합니다. 일반적으로 테스트 도구는 실패한 테스트를 자동으로 보고할 수 있어야 합니다.

테스트 케이스의 주요 내용은 입력 데이터와 예상 출력이며 입력과 출력이 핵심입니다. 일단 입력이 결정되면 예상되는 올바른 출력이 의 기능에 따라 설정됩니다. 프로그램.

함수를 테스트 단위로 간주하면 입력 데이터는 테스트된 함수가 읽은 외부 데이터와 이러한 데이터의 초기 값입니다. "외부 데이터"란 테스트 중인 함수를 말하며 로컬 변수 이외의 다른 데이터로 매개 변수, 멤버 변수, 전역 변수, IO 미디어 등 여러 범주로 구분됩니다. IO 미디어는 데이터를 저장하거나 전송하는 파일, 데이터베이스 또는 기타 미디어를 나타냅니다. 예를 들어 테스트 중인 기능이 파일이나 데이터베이스에서 데이터를 읽는 경우 파일이나 데이터베이스의 원본 데이터도 입력 데이터입니다.

上篇: ASUS 라우터 RT-AC88U에서 USB 하드 드라이브를 미디어 서버로 마운트하는 방법은 무엇입니까? 下篇: 닭을 먹는 컴퓨터 구성
관련 내용