본문 바로가기

knowledge/CSTS

[CSTS] 내용정리 및 암기법 2. 테스트분류 ( 11문제 )

※ 초록색 글씨는 암기법입니다 :)

본인이 만들어서 외워주시는게 가장 좋지만

어려운 분들을 위해 제가 외웠던 방법을 공유해드립니당 😉 ※

 

 

* 테스트 분류 *

=> T설계기법 / T레벨 / T유형 으로 분류된다.

 


 

* 테스트 설계기법에 의한 분류 *

: 정적 테스트 / 동적 테스트

 

💎정적 테스트 => 리정 (리뷰, 정적분석)

: 테스트 대상을 실행하지 않는 방식으로 T를 수행. 동적 T에서 검출하기 힘든 오류를 찾아낸다.

 

⊙ 리뷰 : SW의 산출물에 존재하는 결함을 검출, 프로젝트의 진행상황을 점검하기 위한 활동. 전문가 그룹이 수행.

=> 관리리뷰, 기술리뷰, 인스펙션, 워크쓰루, 감사 

⊙ 정적분석 : 산출물의 구조적 속성을 이용하여 자동화된 방식으로 도구에 의해 수행됨.

=> 코딩표준, 복잡도 측정, 자료흐름 분석


 

💎동적 테스트 => 명구경 (명세기반 T, 구조기반T, 경험기반 T)

: T대상을 실행하여 결함을 검출하는 방법. TC를 결정해야 한다. 

 

⊙ 명세기반 T : 요구사항기반 = 소스코드를 참고하지 않고 TC를 결정. ( = Blackbox Test)

=> 동등분할, 분류트리기법, 경곗값 분석, 신택스T, 조합T, 상태 전이T, 인과그래핑, 결정표T, 시나리오T  

⊙ 구조기반 T : 구현된 소스코드를 참고해서 TC를 결정 ( =Whitebox Test)

=> 문장T, 결정T, 조건T, 결정/조건T, 다중조건T, 변형 조건/결정T, 기본경로T

⊙ 경험기반 T : 기존의 테스트 경험을 바탕으로 수행. 테스터의 경험이 중요. 

=> 오류추정

: 개발자가 범할 수 있는 실수를 추정하고 이에따른 결함이 검출되도록 TC를 설계.

: T대상이 주어지면 테스터의 경험과 직관을 바탕으로 개발자가 범할 수 있는 실수를 나열, 결함을 노출하는 T수행.

: 명세 기반 테스트와 함께 사용될 수 있음.

=> 탐색적 테스트

: 사전에 구체적으로 TC를 설계하고 기록. 테스트 대상에 대한 이해, TC설계, T실행을 병행하는 방식.

: T대상에 대한 이해를 바탕으로 즉석에서 TC를 결정 후, 문서화 없이 T를 바로수행.

 


 

* 테스트 레벨에 의한 분류 *

: 컴통시인 (컴포넌트T, 통합T, 시스템T, 인수T)

 

- 컴포넌트 테스트 : 시스템을 구성하는 단위 모듈을 T대상으로 하여 독립적으로 테스트.

- 통합 테스트 : 단위 모듈이 정확하게 통합되었는지에 초첨. 구조 설계 명세서를 바탕으로 T진행.

- 시스템 테스트 : 전체 시스템을 T대상으로 하여 진행. 요구사항명세서에 명시된 방식대로 시스템이 동작하는지 확인.

- 인수 테스트 : 고객/사용자의 관점에서 고객이 기대하는 방식으로 SW가 동작하는지 확인.

 

- V모델 => 요기설구 컴통시인

( v라인을 가지고있는 설경구 생각 ㅋㅋ 요기있는 설경구는 컴퓨터통합학과 시인이다 ㅋㅋ 뭔말)

 

 


 

* 테스트 유형에 의한 분류*

: 기능 테스트, 비기능 테스트

 

- 기능 테스트 : 요구사항 측면의 결험 검출 및 충족 여부 확인, 모든 테스트수준(컴,통,시,인)에서 진행된다.

- 비기능 테스트 : 품질 요구사항 측면에서 결함 검출 및 충족여부확인. 일반적으로 시,인 수준에서 진행됨.

=> 기사신호이성보유

(기능 적합성, 사용성, 신뢰성, 호환성, 이식성, 성능 효율성, 보안성, 유지보수성)

 

💎

기능적합성 : 제품 또는 시스템이 요구를 충족시키는가

  => 완정적

   - 기능 정성 (요구를 포괄하는 정도)

   - 기능 확성 (정밀한 정도) 

   - 기능 절성 (목적 달성하는 정도)

 

💎용성 : 사용자들이 주어진 환경에서 특정 목적을 달성하기 위해 잘 사용할수 있는지

   => 사오접심적운학 (사오정생각...사오정이 심적으로 문학을 즐긴다ㅋ)

   - 사용자 류 방지성 (이거 누르면 되겠네~)

   - 접근성 (엄마도 쉽게 쓸수 있겠네~)

   - 사용자 인터페이스 미성 (예쁘군~ 직관적이군~ )

   - 적합 인식성 (이걸로 쓰면 되겠네~)

   - 운영 용이성 (시스템이 쉽게 조작하고 제어)

   - 학습 용이성 (금방 배우네~)

 

💎 뢰성 : 특정조건, 특정기간에 오동작 없이 기능 수행하는지

   => 신성복허가 (새로운 성가복을 허가해준다~)

   - 숙성 (정상작동상태에서 요구를 충족시키는 정도)

   - 구성 (장애발생시 데이터복구하고 상태 재설정할 수 있나)

   - 결함 용성 (결함이 있어도 의도한대로 작동하는가)

   - 용성 (사용자가 사용하고자 할 때 사용 및 접근이 가능한가)

 

💎호환성 : HW, SW 등 환경을 공유하면서 필요한 기능을 수행하는가

   => 공상

   - 존성 (다른 SW에 영향 미치지 않고 자원 공유하는지)

   - 호운영성 (정보교환하고 사용할 수 있는 정도)

 

💎식성 : 다양한 플랫폼에서 운영되는가

   => 이적대설 (눈이 엄청 많이 온 곳에 이적이 서있는거 생각..ㅋㅋ)

   - 응성 (시스템이 다른 환경에 잘 적응될 수 있는 정도)

   - 체 용이성 (다른 제품으로 대체될 수 있는 정도)

   - 치 용이성 (특정 환경에서 잘 설치할 수 있는지)

 

💎능 효율성 : 사용된 자원에 대한 효율정도

   => 성수반효 (성수대교 반포대교 생각함ㅋ)

   - 용성 (최대 한계가 요구사항을 얼마나 충족시키는지)

   - 시간 응성 (시스템의 처리시간)

   - 자원 율성 (시스템이 사용하는 자원의 효율성)

 

💎보안성 : 정보와 데이터를 보호하는 정도

   => 부인무기책 (보와 부는 비슷함^^ 내 부인의 무기는 책이다)

   - 인방지성 (나중에 사건 부인하지 못하도록 하는거)

   - 증성 (실제 했다는 걸 인증)

   - 결성 (무단 접근 변경 방지)

   - 밀성 (접근 권한 있는 사람만 데이터에 접근 가능)

   - 임성 (개인을 식별)

 

💎유지보수성 : 유지보수 될 수 있는지

   => 유지테분모재변 (유지태의 부모님이  화장실을 두번가신다 ㅋㅋ)

   - 스트 용이성 (T수행을 용이하게)

   => 이단제안운분관 (용이라는 친구가 이단을 제안해서 울분이 터진다ㅠ)

         - 해용이성, 순성, 어용이성, 정성, 영용이성, 할용이성, 찰가능성

   - 석성 (결함에 대해 진단하고 변경이 미치는 영향 식별 등)

   - 듈성 (수정했을 때 다른데 영향 안미치게)

   - 사용성 (시스템 자산이 하나 이상에서 사용되는 정도)

   - 경 용이성 (수정이 잘 되는가)