diff --git a/Project10 - Dynamic Test/README.md b/Project10 - Dynamic Test/README.md new file mode 100644 index 0000000000000000000000000000000000000000..28d7298c225240c4f2ef7a68ae88b4005dbba42b --- /dev/null +++ b/Project10 - Dynamic Test/README.md @@ -0,0 +1,79 @@ +# Personal Project10 : Dynamic Test(2020.08.20) + +## 1. Unit Test(단위 테스트) + +### 1.1 Unit Test란? +* 프로그램의 기본 단위인 모듈을 테스트하여 모듈 테스트라고도 한다. +* 구현 단계에서 각 모듈의 개발을 완료한 후 개발자가 명세서의 내용대로 정확히 구현되었는지를 테스트한다. +* 개별 모듈이 제대로 구현되어 정해진 기능을 정확히 수행하는지를 테스트한다. +* White-Box Test와 Black-Box Test를 모두 사용할 수 있지만 모듈 내부의 구조를 구체적으로 들여다볼 수 있는 White-Box Test 같은 구조적 테스트를 주로 시행한다. + +### 1.2 Unit Testing 절차 + + +## 2. 동적 테스팅 + +### 2.1 동적 테스트란? +* 소프트웨어 실행을 통하여 소프트웨어에 존재하는 결함을 검출하는 방법 +* 특정 데이터를 제 3의 소프트웨어에 입력하여 수행 후 실제 수행 결과와 기대 결과의 일치 여부를 검증하는 테스트 방법 +* 동적 테스트를 수행하기 위해서는 다음의 두가지 조건을 확인해야 한다. + * 소프트웨어가 실행 가능한 환경 구축 + * 소프트웨어를 실행하기 위한 입력, 수행 결과를 관찰하기 위한 방법 + +### 2.2 동적 테스트의 구분 +* 시험 단위에 따라 구분 + * 단위 동적 테스트 + * 통합 동적 테스트 + * 시스템 동적 테스트 + +### 2.3 동적 테스팅의 장단점 +1. 장점 + * 오류 탐색 정확도 높다. +2. 단점 + * 코드 전체 수행이 어렵다. + +## 3. CodeScroll Controller Tester + +### 3.1 커버리지 +1. 테스트 케이스 뷰에서 원하는 테스트 케이스를 더블 클릭하면 해당 소스코드의 어느 부분이 커버되었는지 색상 정보로 표시해준다. + |색상|의미| + |---|---| + |초록색|코드가 실행되고 모든 분기가 커버되었을 경우| + |노란색|분기 중 일부만 커버된 경우| + |빨간색|실행되지 않는 코드| +2. 세로 컬럼 + 왼쪽 세로 컬럼에는 커버된 분기문의 T/F를 확인할 수 있다. +  + +### 3.2 Unit Test 생성 및 수행 +1. ArrayTest + * case1 +  + * case2 +  + * case3 +  + * 구문, 분기 커버리지 100% 달성 +  +2. inputVarTest + * case1 +  + * case2 +  + * case3 +  + * 구문, 분기 커버리지 100% 달성 +  +3. staticVarTest + * case1 +  + * case2 +  + * case3 +  + * case4 +  + * 구문, 분기 커버리지 100% 달성 +  + + \ No newline at end of file diff --git a/README.md b/README.md index 1ec164c06e0db66b118829f1d1fc84253871a1c8..7d3527697e8efdaf358447af7d0d989d20b2ebd3 100644 --- a/README.md +++ b/README.md @@ -30,4 +30,7 @@ * `ledThreads` ### Project 9(2020.08.18) -* `Static Testing` \ No newline at end of file +* `Static Testing` + +### Project 10(2020.08.20) +* `Dynamic Test` \ No newline at end of file