• Title/Summary/Keyword: 테스트 케이스 자동생성

Search Result 72, Processing Time 0.046 seconds

Test Coverage Expansion-based Valid Patch Refinement (테스트 범위 확장 기반 유효 패치 강화)

  • Moon, Junhyeon;Lee, Eunseok
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2019.10a
    • /
    • pp.680-683
    • /
    • 2019
  • 개발자의 부담을 줄이고 소프트웨어의 품질을 향상시키기 위해 APR (Automated Program Repair) 기술을 개선해야 할 필요가 있다. 현재 사용되는 대부분의 APR 기술은 개발자가 수작업으로 작성한 테스트 케이스를 통과하는 유효 패치(Valid Patch)를 만드는 방식을 사용하기 때문에 QoP(Quality of Patch)는 많이 뒤떨어지는 단점을 가지고 있다. 본 논문에서는 테스트 범위가 충분히 높은 테스트 케이스를 자동으로 생성하는 기술을 이용하여 기존의 유효 패치를 강화하는 기술을 제안한다. 제안하는 내용을 Defects4J 의 일부 프로젝트에 적용하여 기존 기법 대비 FL 의 성능은 유지하면서 기존에 찾지 못했던 유효 패치를 추가적으로 찾을 수 있음을 확인하였다.

TC2SMV: A CASE tool for Translating SMV Input Program from Test Cases Generated from State Chart Diagram in UML (TC2SMV: UML State Chart Diagram에서 생성된 테스트 케이스를 SMV 입력 프로그램으로 변환하는 CASE 도구)

  • Yoon, Sang-Hyun;Jo, Jae-Yeon;Yoo, Jun-Beom
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06b
    • /
    • pp.126-128
    • /
    • 2012
  • 소프트웨어 시스템의 안전성을 보장하기 위해 여러 안전성 분석 기법들이 사용되고 있으며, 안전성 분석의 결과인 안전성 요구사항을 시스템이 만족하고 있는지 확인하는지 확인하는 안전성 평가과정이 수행되고 있다. 안전성 평가는 많은 시간과 비용이 드는 문제점을 가지고 있다. 본 논문은 안전성 평가에 드는 시간과 비용을 줄이기 위해 테스트 케이스를 이용하여 안전성 요구사항을 소프트웨어 개발의 가장 기본적인 검증기법인 테스팅을 이용하여 시스템이 만족하는지 확인하는 방법을 제안하고 핸드폰의 카메라 컨트롤러 예제를 이용한 사례 연구를 진행하였으며 이를 지원 위한 도구인 TC2SMV를 개발하였다. TC2SMV는 UML의 state chart diagram에서 생성된 test case들을 SMV 입력 프로그램으로 자동으로 변환하여 사용자가 SMV 모델체킹을 수행할 수 있는 환경을 제공한다.

CREST-BV: An Improved Concolic Testing Technique with Bitwise Operations Support for Embedded Software (CREST-BV: 임베디드 소프트웨어를 위한 Bitwise 연산을 지원하는 Concolic 테스팅 기법)

  • Kim, Yun-Ho;Kim, Moon-Zoo;Jang, Yoon-Kyu
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2012.06b
    • /
    • pp.120-122
    • /
    • 2012
  • 기존 소프트웨어 테스팅 기법은 개발자가 수동으로 테스트 케이스를 작성해야 하는 비효율성으로 인해 임베디드 소프트웨어의 안정성 확보에 어려움이 있다. Concolic 테스팅 기법은 자동으로 소프트웨어 테스트 케이스를 생성함으로써 기존 소프트웨어 테스팅 기법의 문제를 해결했지만, 임베디드 소프트웨어 테스트에 필수적인 bitwise 연산을 지원하지 않는 등의 문제가 있었다. 본 논문에서는 임베디드 소프트웨어를 위해 bitwise 연산을 지원하는 Concolic 테스팅 개선 방법에 대한 연구를 수행하고 오픈 소스 임베디드 소프트웨어 Busybox에 적용하여 기존 연구와 결과를 비교하였다. Busybox의 10개 유틸리티에 적용한 결과 기존 연구 결과 대비 평균 33%의 분기 커버리지 향상이 있었다.

A Test Case Generation Method Based on Activity for Android Application Testing (안드로이드 애플리케이션을 테스트하기 위한 액티비티 기반의 테스트 케이스 생성 방법)

  • Ko, Minhyuk;Seo, Yongjin;Yun, Sangpil;Kim, Hyeon Soo
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.2 no.10
    • /
    • pp.679-690
    • /
    • 2013
  • Smartphones have features that users feel free to install/delete the program they want. Their emergence makes many developers rush into the Smartphone application development market. Thus, developing good applications quickly is becoming even more intense competition in the market. Because, however, the application development and deployment procedures are simple in the Android environments and anyone can participate in the development easily, applications not validated thoroughly are likely to be deployed. Therefore, a systematic approach that can verify Android-based applications with fewer burdens is required. In this paper, we propose a method that generates automatically GUI-based testing scenarios for the Android applications. The automated test scenario generation can reduce the time which the developer spends on testing, thus it can improve the productivity of the development in the testing phase.

A Study of the Model-based Testing for Embedded Software in ESTEREL (ESTEREL 임베디드 소프트웨어를 위한 모델 기반 테스트 기법 연구)

  • YANG Jin-Seok;Kim Jin-Hyun;Sim Jae-Hwan;Kim chang-jin;Choi Jin-Young
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2005.11b
    • /
    • pp.337-339
    • /
    • 2005
  • 본 논문에서는 임베디드 시스템의 제어를 위해 동기화 언어인 에스테렐로 개발된 소프트웨어가 소프트웨어 요구사항을 만족하는지 확인하기 위한 Model-based Test(MBT) 프레임 워크를 제안한다. 제안된 프레임 워크를 기반으로 작성한 프로토 타입의 테스트 도구는 요구사항 모델을 창조하여 On-the-fly 방법을 통해 테스트 케이스를 랜덤하게 자동으로 생성하여 소프트웨어에 대하 테스트를 자동으로 수행한다. 간단한 case study로 레고 마인드스톰 로봇 제어 소프트웨어에 MBT를 수행하고 그 결과를 확인한다.

  • PDF

A Framework of Automatic Unit Test Tool (유닛 테스트 자동화 도구를 위한 프레임워크 설계)

  • Kim Youn-Sang;Baek Chang-Hyun;Park Sung-Kyu
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2006.06c
    • /
    • pp.184-186
    • /
    • 2006
  • 테스트 주도 개발은 익스트림 개발 방법론의 바탕이 되는 방법론이다. 테스트 주도 개발은 소스 코드를 구현을 하기 전에 테스트 케이스를 먼저 만드는 작성한다. .Net 개발 환경에서 테스트 주도 개발을 하기 위해 NUnit 이라는 유닛 테스트 프레임워크를 많이 사용하고 있다. [1] 본 논문은 NUnit 유닛 테스트 프레임워크를 기반으로 리플랙션을 사용하여 유닛 테스팅 자동화 도구의 제작을 위한 프레임워크를 제안한다. 그리고 이 프레임워크를 이용하여 유닛 테스트 뼈대를 자동으로 생성하는 프로그램을 구현하였다.

  • PDF

Test Automation System for Android Software (안드로이드 기반 소프트웨어를 위한 테스트 자동화 체계)

  • Shin, Won;Seok, Jong-Soo;Kim, Tae-Wan;Chang, Chun-Hyon
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2011.06a
    • /
    • pp.202-205
    • /
    • 2011
  • 최근 들어 스마트폰 시장이 활성화 되면서 휴대기기용 플랫폼인 안드로이드 역시 각광받고 있다. 오픈 플랫폼인 안드로이드에 수많은 제조사들과 개발자들이 가세하면서 다양한 플랫폼 버전이 탑재된 하드웨어가 출시되고 있다. 이처럼 혼재된 안드로이드 환경 때문에 상호호환성 문제와 함께 그에 따른 테스트의 필요성 또한 대두되고 있는 상황이다. 하지만 기존의 연구들은 테스트 케이스 자동 생성에 주로 초점이 맞추어져 있고, 컴파일 및 실행에 있어서 반복적인 작업이 필요한 안드로이드의 특성을 반영하지 못하고 있어 테스트 과정에 과도한 시간이 소모되고 인력 및 비용 또한 손실되고 있다. 이에 본 논문에서는 안드로이드 기반 소프트웨어 테스트 시 고려해야 할 문제점을 분석하여 비효율적인 면을 제거하고 테스트를 자동으로 진행할 수 있는 테스트 자동화 체계를 제안한다. 이를 통해 기존의 테스트 과정에서 과하게 투입되는 시간, 인력 및 비용을 줄이고 개발 기간이 짧은 안드로이드 소프트웨어 마켓 시장에 효율적으로 대응할 수 있는 이점을 얻을 수 있다.

Automated Functionality Test Methods for Web-based Applications (웹 기반 어플리케이션의 기능 테스트 자동화 방법)

  • Kuk, Seung-Hak;Kim, Hyeon-Soo
    • The KIPS Transactions:PartD
    • /
    • v.14D no.5
    • /
    • pp.517-530
    • /
    • 2007
  • Recently web applications have growl rapidly and have become more and more complex. As web applications become more complex, there is a growing concern about their quality. But very little attentions are paid to web applications testing and there are scarce of the practical research efforts and tools. Thus, in this paper, we suggest the automated testing methods for web applications. For this, the methods generate an analysis model by analyzing the HTML codes and the source codes. Then test targets are identified and test cases are extracted from the analysis model. In addition, test drivers and test data are generated automatically, and then they are depleted on the web server to establish a testing environment. Through this process we can automate the testing processes for web applications, besides the automated methods makes our approach more effective than the existing research efforts.

Automated Method for Detecting OOB Vulnerability of Heap Memory Using Dynamic Symbolic Execution (동적 기호 실행을 이용한 힙 메모리 OOB 취약점 자동 탐지 방법)

  • Kang, Sangyong;Park, Sunghyun;Noh, Bongnam
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.28 no.4
    • /
    • pp.919-928
    • /
    • 2018
  • Out-Of-Bounds (OOB) is one of the most powerful vulnerabilities in heap memory. The OOB vulnerability allows an attacker to exploit unauthorized access to confidential information by tricking the length of the array and reading or writing memory of that length. In this paper, we propose a method to automatically detect OOB vulnerabilities in heap memory using dynamic symbol execution and shadow memory table. First, a shadow memory table is constructed by hooking heap memory allocation and release function. Then, when a memory access occurs, it is judged whether OOB can occur by referencing the shadow memory, and a test case for causing a crash is automatically generated if there is a possibility of occurrence. Using the proposed method, if a weak block search is successful, it is possible to generate a test case that induces an OOB. In addition, unlike traditional dynamic symbol execution, exploitation of vulnerabilities is possible without setting clear target points.

A Study on User Interface Testing Automation for Web Applications (웹 어플리케이션의 사용자 인터페이스 테스팅 자동화에 대한 연구)

  • 권영호;최은만
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2001.10a
    • /
    • pp.451-453
    • /
    • 2001
  • 인터넷의 폭발적인 성장은 웹 어플리케이션의 증가에 영향을 주었다. 웹 관련 기술의 발전과 다양한 비즈니스 요구사항은 웹 어플리케이션을 점점 더 복잡하게 했고, 따라서 품질과 신뢰성이 중요해졌다. 이 논문에서는 웹 사용자 인터페이스의 테스팅 자동화에 대한 방법을 제시한다. HTML페이지의 객체와 자바스크립트의 객체를 매핑시켜, 사용자 입력 폼에 대한 테스트 케이스를 자동으로 생성해서 UI 테스팅을 자동화하는 방법을 보여준다. 또한 제안된 방법으로 테스팅 자동화 사례를 보여준다.

  • PDF