서지주요정보
Automated unit test generation with realistic unit context synthesis for low false alarms = 실제적인 유닛 컨텍스트 합성으로 거짓 경보를 줄인 자동화된 유닛 테스트 생성
서명 / 저자 Automated unit test generation with realistic unit context synthesis for low false alarms = 실제적인 유닛 컨텍스트 합성으로 거짓 경보를 줄인 자동화된 유닛 테스트 생성 / Yunho Kim.
발행사항 [대전 : 한국과학기술원, 2017].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8031154

소장위치/청구기호

학술문화관(문화관) 보존서고

DCS 17007

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

Current testing practice in industry is often ineffective and inefficient to detect bugs since most test cases are created manually. In addition, the execution space of a complex target program is too large to explore in limited testing time. As a solution for these problems, automated unit test techniques automatically generate drivers/stubs for each unit of a target program and test cases to explore the execution space of each target unit separately. However, these techniques suffer a large number of false alarms due to approximated inaccurate unit contexts which allow infeasible executions of a target unit. In this dissertation, I present an automated unit test generation framework that synthesizes realistic unit context to automatically detect bugs with low false alarms. The first part of this dissertation presents CONBOL which is the world's first automated unit testing framework for large industrial C programs. CONBOL generates symbolic unit testing drivers/stubs automatically and applies heuristics to reduce false alarms caused by the imprecise drivers/stubs. CONBOL demonstrated its bug detection effectiveness by detecting 24 new crash bugs in a four million lines long industrial embedded program. The second part of this dissertation presents the world's most accurate automated unit testing framework CONCERT which reduces a large number of false alarms by automatically synthesizing realistic unit contexts. CONCERT synthesizes test drivers/stubs to represent realistic contexts of a target unit f by utilizing the code of the other units which are closely relevant to f. The relevance of other unit g to f is measured based on how many times g and f are executed together in system executions. In the experiments on the 67 crash bugs of the 15 real-world C programs (55KLOC on average), CONCERT demonstrates both high bug detection ability (i.e., 83.6% of the target bugs detected) and low false/true alarm ratio (i.e., 2.4 false alarms per one true alarm). As future work, I will improve the function correlation metric for reducing false alarms further. Also, I plan to develop a framework to build system test cases based on automatically generated unit test cases. Furthermore, I will utilize unit relevance information for other purposes such as impact analysis.

소프트웨어 개발 과정에서 대부분 테스트 케이스를 수작업으로 만들고 있기 때문에 소프트웨어 테스팅이 효율적, 효과적이지 못하다. 또한, 소프트웨어가 크고 복잡해짐에 따라 제한된 개발 시간동안 소프트웨어의 다양한 행동을 충분히 살펴보는 것이 어렵다. 이와 같은 문제를 해결하기 위해 소프트웨어 각 소프트웨어 유닛의 테스트 드라이버/스텁 함수와 유닛 테스트 케이스를 자동으로 생성하는 자동화된 유닛 테스트 생성 기법이 개발되었다. 하지만 기존의 자동화된 유닛 테스트 생성 기법은 타겟 유닛의 부정확한 컨텍스트로 인해 실제 프로그램 수행 과정에서는 탐색할 수 없는 실행 경로를 탐색하여 많은 수의 거짓 경보를 생성하는 문제가 있다. 본 논문은 실제적인 유닛 컨텍스트를 합성하여 거짓 경보를 줄이고 버그를 자동으로 탐지하는 자동화된 유닛 테스트 생성 기법을 제안한다. 본 논문은 우선 세계 최초로 산업체의 대규모 C 프로그램에 적용 가능한 자동화된 유닛 테스트 생성 기법 CONBOL을 제안한다. CONBOL은 자동으로 심볼릭 유닛 테스트 드라이버/스텁 함수를 생성하고 부정확한 드라이버/스텁 함수로 생성되는 거짓 경보를 줄이기 위한 거짓 경보 제거 휴리스틱을 적용한다. 400만 줄 규모의 대규모 산업체 C 프로그램을 대상으로 CONBOL을 적용한 결과 24개의 새로운 버그를 발견하여 버그 탐지 능력이 우수함을 입증하였다. 본 논문은 두 번째로 실제적인 유닛 컨텍스트를 합성하여 거짓 경보를 크게 줄인 자동화된 유닛 테스트 생성 기법 CONCERT를 제안한다. CONCERT는 테스트 대상 함수 f의 테스트 드라이버/스텁 함수를 생성할 때 f와 밀접하게 연관된 다른 함수의 코드를 활용함으로써 실제적인 유닛 컨텍스트를 생성한다. 테스트 대상 함수 f와 다른 함수 g의 연관도는 테스트 대상 소프트웨어가 실행되는 동안 f와 g가 얼마나 많이 같이 실행되었는지를 기준으로 정의된다. 15개 실제 C 프로그램(평균 55KLOC)의 67개 크래시 버그를 대상으로 적용한 결과 CONCERT 는 83.6%의 버그를 탐지하여 높은 버그 탐지 능력을 보이고, 1개의 진짜 경보당 2.4개의 거짓 경보를 보고하여 낮은 거짓/진짜 경보 비율을 보였다. 향후 연구로는 함수 연관도 측정 방법을 더 정확하게 개선하여 거짓 경보를 줄이고 유닛 테스트과정에서 얻은 정보를 활용하여 시스템 테스트 케이스를 생성하고자 한다. 또한, 함수 연관도를 리팩토링, 변화 분석 등 다양한 분석 기법에 적용하여 기존 분석 기법을 개선하고자 한다.

서지기타정보

서지기타정보
청구기호 {DCS 17007
형태사항 iv, 51 : 삽화 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 김윤호
지도교수의 영문표기 : Moonzoo Kim
지도교수의 한글표기 : 김문주
학위논문 학위논문(박사) - 한국과학기술원 : 전산학부,
서지주기 References : p. 47-51
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서