뱁새유니버스

정보관리기술사 133회 1교시 2번문제

by 뱁새유니버스

1. 세줄요약

01. 한 문제마다 한 장의 분량을 작성한다 생각하고 정리해야겠다.

02. 현업에서 restful방식으로 통신하자고 하는데도 한장을 쓰려니...

03. 어렵다!! 매일 블로그에 정리를 잘해서 시험공부를 해봐야겠다.

2. 시험문제 접근법

(1) 개념 정의

뮤테이션(Mutation Test)는 소프트웨어 테스트 기법 중 하나로, 개발한 소스코드의 특정 부분을 의도적으로 수정하여 해당 코드가 올바르게 작동하고 있는지 테스트 케이스들을 검증하는 것입니다. 이를 통해 테스트 케이스의 강도와 유효성을 측정하는 것입니다.

 

주요 개념 

1. 뮤턴트(Mutant) : 소스 코드의 일부를 변경하여 생성된 새로운 코드 버전

2. 살아있는 뮤턴트(Live Mutant) : 테스트 케이스를 통해 테스트한 결과 오류를 검출하지 못하고 살아있는 뮤턴트를 뜻합니다. 이는 테스트 케이스가 충분히 강력하지 않다는 것입니다.

3. 죽은 뮤턴트(Dead Mutant) : 테스트 케이스를 통해 테스트한 결과 오류가 검출된 뮤턴트입니다. 이는 테스트 케이스가 해당 변형을 효과적으로 감지했음을 나타냅니다. 

(2) 테스트 절차 

1. 원본 코드 준비

  • 뮤테이션 테스트를 수행할 원본 소스 코드를 준비합니다.

2. 뮤턴트 생성

  • 원본 코드의 특정 부분을 다양한 방식으로 변경하여 여러 뮤턴트를 생성합니다.

3. 테스트 케이스 실행

  • 각 뮤턴트에 대해 기존의 테스트 케이스를 실행합니다.

4. 결과 분석

  • 죽은 뮤턴트와 살아있는 뮤턴트를 분류합니다.

5. 테스트 케이스 개선

  • 살아있는 뮤턴트가 존재하는 경우 , 이를 잡아내기 위한 추가적인 테스트 케이스를 작성하거나 기존 테스트 케이스를 개선합니다. 

(3) 장단점을 적자.

장점

  • 테스트 케이스 평가 가능 : 뮤테이션 테스트는 기존 테스트 케이스가 코드의 잠재적 오류를 얼마나 효과적으로 검출할 수 있는지 평가할 수 있습니다.ㄹ
  • 테스트 커버리지 향상 : 놓칠 수 있는 부분들을 발견하여 개선할 수 있습니다.

단점

  • 비용과 시간 : 뮤턴트 생성과 테스트 케이스 실행 등 많은 시간이 소요될 수 있습니다.
  • 복잡성 : 뮤테이션 테스트는 설정과 분석이 복잡할 수 있습니다. 

3. 마치며

이번 시간은 정보관리기술사 133회 1교시 2번문제 뮤테이션 테스트(Mutation Tesst)가 무엇인지 알아봤습니다.

내용을 정리함에 있어 개념, 절차, 특징, 장단점, 예시 순으로 설명해주면 좋을 것 같습니다.

갈길은 멀고 할일은 많군요!

질문이 있으시면 언제든 댓글 남겨주세요! 답변드리겠습니다. 같이 공부합시다^^
이 글을 보는 모든 분들 오늘 하루가 행복하시길 바랍니다.
감사합니다.

반응형

블로그의 정보

가슴이 웅장해지는 모든것

뱁새유니버스

활동하기