서지주요정보
Exploiting mutant’s relationship with code, faults, and patches for higher efficacy of mutation analysis = 뮤테이션 기법의 효용성 향상을 위한 뮤턴트와 코드, 결함, 패치 사이의 관계 분석
서명 / 저자 Exploiting mutant’s relationship with code, faults, and patches for higher efficacy of mutation analysis = 뮤테이션 기법의 효용성 향상을 위한 뮤턴트와 코드, 결함, 패치 사이의 관계 분석 / Jinhan Kim.
발행사항 [대전 : 한국과학기술원, 2023].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8040351

소장위치/청구기호

학술문화관(도서관)2층 학위논문

DCS 23020

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

Mutation testing has long been used as a powerful testing technique to evaluate the test suite quality as well as to analyse the program under test. However, it still has issues of scalability and applicability due to the high cost of running tests against mutants. To improve its efficacy even on large programs, this dissertation explores mutant's relationship with code, faults, and patches that have not been explored much but are likely to be useful. First, we investigate the mutant's relationship with code to assist predicting the kill of a mutant without running the tests. By exploring the natural language channel of the code around the mutant, we build a deep neural network to learn and predict the mutant's killability. Second, we explore the mutant's relationship with the faults to localise the faults. We propose several statistical inference techniques that can learn the mutant-fault relationships in advance, in terms of their similarity of test executions. Lastly, we investigate the mutant's relationship with the patches. We hypothesise that the mutants (faults) and patches do not syntactically differ from each other and conduct various empirical studies to show how much they are similar. Our empirical results suggest that exploiting those relationships makes mutation analysis more viable and effective.

뮤테이션 테스팅 기법은 오랫동안 소프트웨어의 테스트 품질을 검증하는 데에 좋은 성능을 보였으며 이를 통해 프로그램 자체를 분석하는 데에도 널리 사용되었다. 하지만 이 기법은 수많은 뮤턴트에 대한 테스트 실행을 동반하여 많은 시간과 컴퓨팅 리소스를 소모하게 되어, 아직까지도 큰 스케일의 프로그램에 대해서는 적용될 수 없다는 문제점을 가지고 있다. 이러한 문제점을 완화하기 위해, 본 논문에서는 뮤턴트와 코드, 결함, 패치와의 관계성을 탐구한다. 첫번째로, 뮤턴트 주변의 코드에서 자연 언어 채널을 분석하여 테스트 실행을 하지 않고 뮤턴트 탐지 여부를 예측하는 방법을 제시한다. 두 번째로, 뮤턴트의 결함과의 관계성을 분석하여 결함 위치 추정 정확도를 높이는 방법을 제시한다. 다양한 통계 추정 모델과 과거 뮤테이션 정보를 활용하여 현재 결함 위치를 뮤턴트에 대한 테스트 실행 없이 예측한다. 마지막으로 뮤턴트와 패치의 관계성을 분석한다. 본 논문에서는 뮤턴트와 패치가 구문적으로 다르지 않다고 가정하고, 서로가 얼마나 비슷하며 각자를 대체할 수 있는지를 보이는 다양한 실험을 수행한다. 이러한 실험 통해 본 논문에서 제시한 세 가지 관계 분석이 뮤테이션을 넓은 범위에서 적용될 수 있게 하고 더욱 효과적으로 할 수 있게 할 수 있다는 것을 확인한다.

서지기타정보

서지기타정보
청구기호 {DCS 23020
형태사항 vi, 91 p. : 삽도 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 김진한
지도교수의 영문표기 : Shin Yoo
지도교수의 한글표기 : 유신
Including appendix
학위논문 학위논문(박사) - 한국과학기술원 : 전산학부,
서지주기 References : p. 79-88
주제 Mutation tesing
Mutation analysis
Software testing
Software engineering
뮤테이션 테스팅
뮤테이션 기법
뮤테이션 분석
소프트웨어 테스팅
소프트웨어 엔지니어링
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서