I. 사용자 관점의 테스트 방법, Black Box Test 가. Black Box Test의 정의 사용자가 소프트웨어 또는 제품에 대한 요구사항과 결과물이 일치하는 지 확인하기 위한 테스트 기법 나. Black Box Test 기법 기법 설명 동등 분할 기법 (Equivalence Partitioning 프로그램의 입력 도메인을 테스트 케이스가 산출될 수 있는 데이터 클래스로 분류하는 방법 경계값분석기법 (Boundary Value Analysis) 입력
I. 소프트웨어 품질향상, 소스코드 체크리스트 가. 소스코드 체크리스트의 개념 소프트웨어 품질향상을 위해 소프트웨어 정적 분석 기반 프로그램 소스 코드 검사 기준 나. 소스코드 체크리스트의 필요성 II. 소프트웨어 품질향상 위한 소스코드 평가 체크리스트 가. Clean Code 기반 소스코드 평가 체크리스트 구분 평가 항목 기준 형식 팀 규칙 – 한 팀 작성 코드는 일관성 신문기사 방식
I. 프로그램 실행 여부 기반, 정적-동적 테스트 가. 정적-동적 테스트 개념 정적 테스트 동적 테스트 프로그램을 실행 전 소스코드 파싱 기반 문법, 코드 등 잠재적 취약점 발견 기법 프로그램 실행 후 실제 발생 오류 발견 및 문제 해결 분석 기법 나. 정적-동적 테스트 특징/장단점 항목 정적 테스트 동적 테스트 특징 – 코딩 규칙, 가이드 준수
I. 소프트웨어 테스트 국제 표준, ISO/IEC 29119 개념 필요성 체계적 S/W 테스트 절차와 원리/가이드 지원을 위한 SW 개발 생명주기 전 과정 Test 절차, 산출물 국제표준 – 테스트 체계 정립 – 테스트 표준 및 기준 – 테스트 자원 필요성 증대 II. ISO/IEC 29119 구성도와 세부 Part 가. ISO/IEC 29119 구성도 나. ISO/IEC 29119 세부 Part/주제
I. 개발 생명 주기와 테스트의 관계, V-Model의 개요 가. V-Model의 정의 명세화된 기능이 올바르게 수행하는지 개발자나 시험자의 관점의 Verification(검증)과 사용자 관점의 Validation(확인)을 지원하는 Test Model 나. V-Model의 특징 특징 내용 추적성 보장 어느 단계에서 발생한 오류인지 추적성을 보장 확장성 폭포수 모델의 확장된 형태 신뢰성 높은 신뢰성을 요구하는 소프트웨어에 적용 II. V-Model의 개념도 및 단계
I. 소프트웨어 테스트 원리 테스트 원리 원리 설명 테스트 방안 결함존재 증명 – 테스팅은 결함 증명 – SW완전성 증명 불가 – 결함 발견에 초점 – 결함목록 현행화 완벽 테스팅 불가 – 모든 경우 테스팅 불가 – 효율적 테스팅 필요 – 동등분할, 경계값 분석 등 – 효율적 테스트 수행 개발 초기 테스팅 효율적 – 조기 결함
I. 탐색적 테스팅에서의 테스트 차터 가. 테스트 차터(Test Charter)의 정의 탐색적 테스팅에서 테스트의 범위와 목적, 테스트 방법 등을 정의하기 위한 참조 문서(승인서) 나. 테스트 차터의 특징 특징 설명 Test Insight 제공 테스트 엔지니어에게 세션 임무 설정 및 Insight 제공 테스트 체계화 직관적으로만 진행하던 경험적 테스팅에 체계성 부여 리스크기반 접근 자원 제약적인 환경에서 선택과 집중의 원리
I. 조직측면 CARTA 실현, DevSecOps 보안팀, 프로세스 및 툴을 DevOps에 통합하여 보안팀과 개발팀 간 장벽을 해소한 공동 작업 기법 II. DevSecOps 라이프사이클 및 주요 기술 가. DevSecOps 라이프사이클 개발 전 주기에 보안을 강화하여 수명주기 확보하며 검증강화 나. DevSecOps 활용을 위한 주요기술 구분 기술 요소 설명 이슈 관리 Jira – 이슈 사항 등록, 모니터링 Splunk
I. 데브옵스(DevOps) 개념 개발과 운영의 합성어로 개발과 운영 간의 상호 작용을 원활하게 하기 위한 개발 방법론 목적 개발자와 비 개발자 사이의 대화, 협동, 통합을 강조하고 담당 업무와 직급 간 상호 이해를 추구 신뢰성, 보안성 기반 빠른 개발→테스팅→배포 순환 II. 데브옵스의 구성요소 구분 구성요소 요소 설명 품질 테스트 자동화 – 서비스 통합/시스템 테스트 – 단위테스트(xUnit),
I. 테스트 기준 개발 방법, TDD 가. TDD(Test Driven Development)의 개념 테스트 설계를 선수행하여, 테스트 통과 위해 프로그램 코드 리팩토링 과정 반복 개발방법론 나. TDD의 특징 특징 설명 Design of Testablility – 소스코드 의존성 감소, 독립테스트 테스트 커버리지 확보 – 단위 테스트 커버리지, 디버깅용이 견고성 보장 – 발생 가능 오류 조기 탐지 가능 Clean Code