$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

소프트웨어 품질향상을 위한 소스코드 기반의 테스트 케이스 자동 생성에 관한 연구
A Study on the Automatic Generation of Test Case Based on Source Code for Quality Improvement 원문보기

전기전자학회논문지 = Journal of IKEEE, v.19 no.2, 2015년, pp.186 - 192  

손웅진 (Department of Electronic Engineering, Hanbat National Univ.) ,  이승호 (Department of Electronics&Control Engineering, Hanbat National University)

초록
AI-Helper 아이콘AI-Helper

본 논문에서는 소프트웨어 개발 과정에서 소프트웨어의 품질향상에 필요한 소스코드의 API를 기반으로 테스트 케이스를 자동으로 생성할 수 있는 기법을 제안한다. 제안된 기법은 Doxygen 오픈소스 툴을 이용한 소스코드 분석 과정, 분석된 결과를 이용한 API 사양 정의 과정, 테스트 디자인 생성 과정, Pairwise Test 기법을 적용한 테스트 케이스 생성 과정 등의 4가지 과정으로 구성된다. Doxygen 오픈소스 툴을 이용한 소스코드 분석 과정은 소스코드의 API 정보인 API 명, 입력 파라미터, 리턴 파라미터 정보 등을 추출하는 단계이다. 분석된 결과를 이용한 API 사양 정의 과정은 추출한 API 정보를 바탕으로 SQLite 데이터베이스를 이용하여 테스트 케이스 생성에 필요한 API 정보들을 데이터베이스화하여 정의하는 단계이다. 테스트 디자인 생성 과정은 정의된 API를 기반으로 입력 파라미터, 리턴 파라미터의 임계치 설정, 제약사항 설정 등을 통해 시나리오를 디자인하여 데이터베이스로 구성하는 단계이다. Pairwise Test 기법을 적용한 테스트 케이스 생성 과정은 테스트 디자인 정보를 바탕으로 Pairwise 조합 기법을 적용하여 실제 테스트 케이스를 생성하여 데이터베이스로 구성하는 단계이다. 제안된 기법의 효율성을 평가하기 위하여 기존의 명세서 기반의 테스트 케이스 생성 방법과 비교한 결과 비슷한 시간 내에 훨씬 더 많은 테스트 케이스가 생성되며, 명세 기반 기법으로는 불가능한 소스코드에 대한 기능 검증도 가능하여 소스코드내 결함 위치도 확인할 수 있다. 따라서 사람의 인력을 통한 수작업에 의존적으로 진행하였던 소프트웨어 개발 품질 향상 과정을 소스코드의 API를 기반으로 자동으로 테스트 케이스를 생성함으로써, 노동력 절감 및 제품 개발 시간 등을 단축 할 수 있으리라 기대된다.

Abstract AI-Helper 아이콘AI-Helper

This paper proposes an automatic generation technology of test case based on API in source code for software's quality improvement. The proposed technology is comprised of four processes which are analyzing source code by using the Doxygen open source tool, defining API specification by using analyz...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 따라서 본 논문에서는 이러한 명세 기반 테스트 케이스 생성 방법의 단점인 노동력 및 많은 소요 시간을 해결할 수 있는 소스코드의 API를 기반으로 테스트 케이스를 자동으로 생성할 수 있는 기법을 제안한다.
  • 본 논문에서는 소프트웨어 개발 과정에서 소프트웨어의 품질향상을 위한 소스코드의 API를 기반으로 테스트 케이스를 자동으로 생성할 수 있는 기법을 제안 하였다. 제안된 소스코드 기반의 테스트 케이스 자동생성 기법은 소스코드를 Doxygen 오픈소스 툴을 이용 하여 분석한 후, API 정보인 API 명, 입력 파라미터, 리턴 파라미터 정보 등을 추출하여 API 사양을 정의한 후 데이터베이스화 하였다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
소프트웨어 테스팅 기술은 어떤 목적으로 적용되는가? 현대의 소프트웨어 역할은 기존의 컴퓨팅 영역을 탈피해 가전, 무선 단말기, 산업 기기 등 전방위로 확산되면서 SW 개발 공정은 물론 개발이 끝난 제품의 SW 결함을 사전에 진단하고 정상 동작여부를 시험하는 SW 테스팅 역할의 중요성이 점차 부각되고 있다. 또한, 소프트웨어 테스팅 기술은 응용 프로그램 또는 시스템의 동작과 성능·안정성이 요구하는 수준을 충족시키는지 확인하기 위해 “개발 전 과정에 걸쳐” 결함을 발견하는 행위로 현재 그 중요성이 부각되어 IT(Information Technology) 산업 전반에 걸쳐 적용되고 있다. 한편, 스마트폰, 태블릿PC, 클라우드 서비스, 빅데이터(Big Data), Social Computing, 사물 인터넷 등 전략 기술 분야에서도 SW 테스팅을 적용하여 사전에 결함을 발견하고 성능의 안정성을 확보하기 위해 많은 노력을 기울이고 있다.
소프트웨어 결함이 끼치는 악영향은? 6%에 해당하는 엄청난 규모라는 분석 결과를 발표하였다. 그러나, 실제 비용 추정 모델에는 소프트웨어의 신뢰도 저하에 따른 부차적인 손실, 즉 브랜드 이미지 저하, 고객의 충성도 저하, 매출 및 시장점유율 하락 등은 고려대상이 아니기 때문에 실제 유형, 무형적 손실을 합하면 예상하기 힘든 경제적 손실이 발생하고 있음을 알 수 있다. 한편, 이 매몰 비용(sunk cost)중에서 220억 달러는 더 나은 소프트웨어 테스팅을 통해 줄일 수 있는 비용이라는 분석 결과도 포함하여 발표하였다.
NIST가 발표한 소프트웨어 결함이 미국 경제에 미치는 비용은? 한편, 스마트폰, 태블릿PC, 클라우드 서비스, 빅데이터(Big Data), Social Computing, 사물 인터넷 등 전략 기술 분야에서도 SW 테스팅을 적용하여 사전에 결함을 발견하고 성능의 안정성을 확보하기 위해 많은 노력을 기울이고 있다.[1-2] NIST(National Institute of Standards and Technology)는 소프트웨어 결함이 미국 경제에 미치는 비용은 1년에 600억 달러에 달하며 이는 미국 GDP의 0.6%에 해당하는 엄청난 규모라는 분석 결과를 발표하였다. 그러나, 실제 비용 추정 모델에는 소프트웨어의 신뢰도 저하에 따른 부차적인 손실, 즉 브랜드 이미지 저하, 고객의 충성도 저하, 매출 및 시장점유율 하락 등은 고려대상이 아니기 때문에 실제 유형, 무형적 손실을 합하면 예상하기 힘든 경제적 손실이 발생하고 있음을 알 수 있다.
질의응답 정보가 도움이 되었나요?

참고문헌 (6)

  1. Q. Xie and A.M. Memon, "Model-Based Testing of Community-Driven Open-Source GUI Applications," Software Maintenance, 2006. ICSM '06. 22nd IEEE International Conference on, pp. 145-154, Sep. 2006. 

  2. J. H. Kim, "Android and Android Market", Journal of Contents Association, Vol.7, No.2, pp.29-36, 2009. 

  3. Malte Lochau, Sebastian Oster, Ursula Goltz, Andy Schurr, "Model-based pairwise testing for feature interaction coverage in software product line engineering," Software Quality Journal Vol. 20, No. 3, pp.567-604, Sep. 2012. 

  4. Amitava Mukherjee, "A Near-Nonparametric Partially Sequential Test for Monitoring Phase II Location Under Pairwise Dependence Between Two Phases," Sequential Analysis Vol. 30, No.2, pp.208-228, Feb. 2011. 

  5. James Bach, "Risk and Requirements-Based Testing," IEEE Computer, Vol.32, No.6, pp.113-114, June, 1999. 

  6. Luc Duchateau, Paul Janssen, "Pairwise nonparametric non inferiority tests in $3{\times}3$ cross-over trials: should we adjust for period," Statistics in Medicine Vol. 24, No.10, pp.1525-1536, May. 2005. 

저자의 다른 논문 :

관련 콘텐츠

오픈액세스(OA) 유형

GOLD

오픈액세스 학술지에 출판된 논문

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로