KR20080042659A - Automatic software testing system and method using faulted file - Google Patents

Automatic software testing system and method using faulted file Download PDF

Info

Publication number
KR20080042659A
KR20080042659A KR1020070058329A KR20070058329A KR20080042659A KR 20080042659 A KR20080042659 A KR 20080042659A KR 1020070058329 A KR1020070058329 A KR 1020070058329A KR 20070058329 A KR20070058329 A KR 20070058329A KR 20080042659 A KR20080042659 A KR 20080042659A
Authority
KR
South Korea
Prior art keywords
file
defect
software
normal
module
Prior art date
Application number
KR1020070058329A
Other languages
Korean (ko)
Other versions
KR100897412B1 (en
Inventor
최영한
김형천
홍순좌
박응기
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Publication of KR20080042659A publication Critical patent/KR20080042659A/en
Application granted granted Critical
Publication of KR100897412B1 publication Critical patent/KR100897412B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

An automatic system for detecting fault from software by using a file including software fault generation data and a method thereof are provided to detect the fault from the software by using the file including the software fault generation data, which is formed to reduce fault processed by a system fault mechanism by considering a format of a target file. A normal file generating module(300) automatically generates a normal file(305-2), which is received as input by target software, by using a testing option(301). A fault file generating module(400) automatically generates a fault generation file(501) by inserting fault data generating software fault for the normal file into the normal file. A result analyzing module(600) monitors abnormality when the file is executed by a fault file executing module(500), and analyzes causes of the abnormality and outputs an analysis result when the abnormality occurs. The normal file generating module includes an automatic file generator automatically generating the normal file by calling a function for processing a target file format through an API(Application Program Interface)(303) or a COM(Common Object Module)(304) based on the testing option.

Description

소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템 및 그 방법{AUTOMATIC SOFTWARE TESTING SYSTEM AND METHOD USING FAULTED FILE}AUTOMATIC SOFTWARE TESTING SYSTEM AND METHOD USING FAULTED FILE}

도 1은 본 발명의 일실시예에 따른 소프트웨어 결함 유발 데이터를 삽입하고, 소프트웨어의 결함을 검출하는 자동화 시스템의 시스템 구성도. 1 is a system configuration diagram of an automation system for inserting software defect causing data and detecting software defects according to an embodiment of the present invention.

도 2는 본 발명의 일실시예에 따른 소프트웨어 결함 유발 데이터를 삽입한 파일을 통해 소프트웨어 결함을 검출하는 자동화 과정을 나타낸 순서도. 2 is a flowchart illustrating an automated process of detecting a software defect through a file into which software defect causing data is inserted according to an embodiment of the present invention.

<도면의 주요부분에 대한 부호의 간단한 설명><Brief description of symbols for the main parts of the drawings>

300 : 정상 파일 발생모듈 301 : 테스팅 옵션300: normal file generating module 301: testing option

302 : 자동 파일 발생기 303 : API302: Automatic File Generator 303: API

304 : COM 305-1, 305-2 : 정상 파일304: COM 305-1, 305-2: Normal file

400 : 결함파일 발생모듈 401 : 모듈 400: Defective file generating module 401: Module

402 : 스크립트 403 : 파서 402: script 403: parser

404 : 결함 연산자 405 : 결합 정책부404: defect operator 405: binding policy department

406 : 파일 포맷 분석모듈 407 : 발생기406: file format analysis module 407: generator

500 : 결함 파일 실행모듈 501 : 결함 유발 파일500: fault file execution module 501: fault causing file

502 : 자동 파일 실행기 503 : 모니터링부502: automatic file executor 503: monitoring unit

504 : 결과 분석기 600: 결과분석모듈504: Result Analyzer 600: Result Analysis Module

본 발명은 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템 및 그 방법에 관한 것으로서, 더욱 상세하게는 소프트웨어 결함 검출을 위한 방법 중 결함 데이터를 삽입한 결함 유발 파일을 이용하여 소프트웨어 테스팅하는 자동화 시스템 및 그 방법에 관한 것이다. The present invention relates to an automated system and method for detecting software defects using a file into which software defect-prone data is inserted. More particularly, the present invention relates to a method of detecting defects in software and using a defect-prone file into which defect data is inserted. To an automated system and method for software testing.

소프트웨어 결함 검출을 위해 사용되는 입력으로 함수 파라미터, 사용자 인터페이스, 네트워크와 같은 요소가 있으며, 이들은 결함 삽입 테스팅을 위해 사용되었다. Inputs used for software fault detection include elements such as function parameters, user interface, and network, which are used for defect insertion testing.

그러나, 기존의 결함 유발 데이터를 삽입한 파일을 이용한 소프트웨어 테스팅 방법은 파일 포맷을 고려하지 않고 임의적으로 파일 데이터만 변경하였다. 그래서 시스템 내의 자체 에러처리 메커니즘에 의해 에러로 처리되는 경우가 많아 실제 대상 소프트웨어의 결함을 유도하는 비율이 높지 않은 문제점이 존재하였다. However, the existing software testing method using the file into which the defect-prone data is inserted does not consider the file format and arbitrarily changes only the file data. As a result, it is often handled as an error by its own error handling mechanism in the system.

이와 함께 소프트웨어 결함 검출의 전 과정이 자동화되어 있지 않은 관계로 인하여 소프트웨어 결함 검출하는 과정에 사람이 개입해야 하는 부가적인 부하가 존재하는 문제점이 있었다. In addition, there is a problem in that an additional load that requires human intervention in the process of detecting software defects exists due to the fact that the entire process of software defect detection is not automated.

본 발명은 상기의 문제점을 해결하기 위하여 제안된 것으로서 그 목적은 대상 파일의 포맷을 고려하여 시스템 에러 메커니즘에서 처리되는 에러를 줄일 수 있도록 구성한 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템 및 그 방법을 제공하는 데에 있는 것이다. SUMMARY OF THE INVENTION The present invention has been proposed to solve the above problems, and an object thereof is to solve software defects by using a file into which software defect causing data is configured to reduce errors processed by a system error mechanism in consideration of a format of a target file. It is to provide an automated system and method for detecting the same.

또한, 본 발명의 또 다른 목적은 소프트웨어의 결함을 유발시킬 수 있는 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 시스템을 자동화하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템 및 그 방법을 제공하는 데에 있는 것이다. In addition, another object of the present invention is to use a file into which software defect-induced data is inserted to automate a system for detecting a software defect by using a file into which data may cause a defect in software. It is to provide an automated system and method for detecting the same.

또한, 본 발명의 또 다른 목적은 결함 유발 데이터를 파일에 삽입할 때 해당 파일의 포맷을 고려하여 소프트웨어에서 포맷 불일치로 수행되는 에러 처리의 과정을 줄여 제한된 수로 생성된 결함 유발 파일을 이용해 가능한 많은 소프트웨어의 결함을 유도할 수 있도록 하여 소프트웨어 테스팅의 효율성을 높인 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템 및 그 방법을 제공하는 데에 있는 것이다. In addition, another object of the present invention is to reduce the process of error handling performed by format mismatch in the software in consideration of the format of the file when inserting the defect-prone data into the file, so as to use as many software as possible It is an object of the present invention to provide an automated system and method for detecting software defects using a file into which software defect-producing data is inserted, which enhances the efficiency of software testing.

따라서, 상기한 목적을 이룩하기 위한 본 발명의 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템은, 설정된 테스팅 옵션을 사용하여 대상 소프트웨어에서 입력을 받아들일 수 있는 정상 파일을 자동으로 생성하는 정상 파일 발생모듈과, 정상 파일 발생 모듈에 의해 생성된 정상 파일에 대해 소프트웨어의 결함을 유발시킬 수 있도록 정상 파일에 결함 데이터를 삽입하여 결함 유발 파일을 자동으로 생성하는 결함 파일 발생모듈과, 자동으로 생성된 결함 유발 파일에 대해 자동으로 실행시키는 결함 파일 실행모듈과, 파일이 실행될 때 이상 유무를 감시하며 이상이 발생하였을 경우 이상 원인을 분석하여 사용자에게 출력하는 결과분석모듈로 구성되는 것을 특징으로 한다. Therefore, an automated system that detects a defect in the software by using the file into which the software defect causing data of the present invention is inserted for achieving the above object is a normal file that can accept input from the target software using the set testing option. Normal file generation module that automatically generates file, and defect file that automatically generates defect-inducing file by inserting defect data into normal file to cause software defects for normal file generated by normal file generation module It consists of a module, a defect file execution module that automatically executes the automatically generated fault causing file, and a result analysis module that monitors the presence of an error when the file is executed and analyzes the cause of the error and outputs it to the user. It is characterized by.

또한, 본 발명의 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 방법은, 사용자는 결함 검출의 대상이 되는 소프트웨어에서 입력으로 받아들일 수 있는 파일에 대해 정상 파일을 자동으로 생성할 수 있는 테스팅 설정을 하고, 수동으로 정상 파일을 생성하는 제1 생성단계와, 결함 파일 발생모듈이 소프트웨어의 결함 데이터를 생성하는 제2 생성단계와, 결함 파일 발생모듈이 제2 생성단계에서 생성된 결함 데이터를 제1 생성단계에서 생성한 정상 파일에 삽입하여 결함 유발 파일을 생성하는 제3 생성단계와, 제3 생성단계에서 생성된 결함 유발 파일이 결함 파일 실행모듈로 입력되는 입력단계와, 결함 파일 실행모듈은 생성된 결함 유발 파일을 자동으로 실행시키는 실행단계와, 실행단계에서 발생하는 이상에 대해선 결과분석모듈이 모니터링 및 이상 현상에 대한 분석하는 모니터링 및 분석단계로 구성되는 것을 특징으로 한다. In addition, the automated method of detecting a defect in software by using a file into which the software defect causing data of the present invention is inserted, automatically allows a user to automatically input a normal file to a file that can be accepted as an input by the software that is the object of defect detection. A first generation step of generating test settings that can be generated, manually generating a normal file, a second generation step of generating the defect data of the software by the defect file generation module, and a defect file generation module of the second generation step A third generation step of generating a defect causing file by inserting the generated defect data into the normal file generated in the first generation step; an input step of inputting the defect causing file generated in the third generation step into a defect file execution module; The fault file execution module executes the generated fault-causing file automatically and About the result of the analysis module it is characterized by consisting of a monitoring and analysis for monitoring and analyzing anomalies.

이하, 첨부된 도면을 참조하여 본 발명의 구성에 대하여 보다 상세하게 설명하기로 한다. Hereinafter, with reference to the accompanying drawings will be described in more detail with respect to the configuration of the present invention.

도 1은 본 발명의 일실시예에 따른 소프트웨어 결함 유발 데이터를 삽입하 고, 소프트웨어의 결함을 검출하는 자동화 시스템의 시스템 구성도이다. 1 is a system configuration diagram of an automated system for inserting software defect causing data and detecting software defects according to an embodiment of the present invention.

도 1을 참조하여 보면, 본 발명의 구성은 크게 정상 파일 발생모듈(300), 결함파일 발생모듈(400), 결함 파일 실행모듈(500) 및 결과분석모듈(600)로 구성된다. Referring to Figure 1, the configuration of the present invention is largely composed of a normal file generation module 300, a defect file generation module 400, a defect file execution module 500 and the result analysis module 600.

먼저, 정상 파일 발생모듈(300)은 사용자에 의해 설정된 파일 포맷 이름에 따라 해당 파일을 자동으로 생성한다. First, the normal file generation module 300 automatically generates a corresponding file according to a file format name set by a user.

결함 파일 발생모듈(400)은 설정된 정책에 따라 입력으로 설정된 정상 파일(Target File)(305-1)에 또는 정상 파일 발생모듈(300)에 의해 자동으로 생성된 정상 파일(305-2)에 소프트웨어 결함 데이터를 자동으로 삽입하여 결함 유발 파일을 생성한다. The defect file generating module 400 is configured in a target file 305-1 set as an input according to a set policy or in a normal file 305-2 automatically generated by the normal file generating module 300. Automatically insert defect data to create a defect causing file.

결함 파일 실행모듈(500)은 결함 유발 파일을 자동으로 실행시킨다. The defect file execution module 500 automatically executes the defect causing file.

결과분석모듈(600)은 결함 유발 파일을 실행시키는 과정에서 발생하는 이상현상을 모니터링하고 이상 현상이 발생했을 경우에 원인을 분석한다. 입력으로 정상 파일 상태인 목적 파일 및 테스팅 옵션 설정을 제외한 모든 과정은 자동화된다.The result analysis module 600 monitors the abnormal phenomenon occurring while executing the defect causing file and analyzes the cause when an abnormal phenomenon occurs. All processes are automated except for setting the target file and testing options as normal input files.

먼저, 정상 파일 발생모듈(300)에 대하여 상세히 설명하기로 한다. 노멀 파일 발생모듈(300)은 입력으로 설정된 테스팅 옵션(301) 중 파일 포맷의 이름을 사용하여 정상 파일을 생성한다. First, the normal file generation module 300 will be described in detail. The normal file generation module 300 generates a normal file using the name of a file format among the testing options 301 set as an input.

특히, 정상 파일 발생모듈(300) 내부의 자동 파일 발생기(302)는 정상 파일의 내용을 생성한 후 설정된 파일 포맷으로 저장하여 정상 파일(305)을 생성한다. 자동 파일 생성기(302)는 사용자가 설정한 옵션을 기반으로 대상 파일 포맷을 처리 할 수 있는 함수를 API(Application Programming Interface)(303) 또는 COM(304)을 통해 호출하여 대상 소프트웨어에서 읽을 수 있는 정상 파일(305-2)을 자동으로 생성하도록 한다. In particular, the automatic file generator 302 inside the normal file generation module 300 generates the normal file 305 by generating the contents of the normal file and storing the file in the set file format. The automatic file generator 302 can call a function that can process a target file format based on an option set by a user through an application programming interface (API) 303 or a COM 304 so that it can be read by the target software. Automatically generate file 305-2.

이때, 정상 파일(305-2)을 사용하여 결함 파일 발생모듈(400)의 입력으로 사용할 수도 있지만, 정상 파일 발생모듈(300)을 거치지 않은 원래부터 생성되어 있는 정상 파일(305-1)을 사용할 수도 있으며, 전술한 바와 같이 자동 파일 발생기(302)에 의해 생성된 정상 파일(305-2)를 이용할 수도 있다. At this time, the normal file 305-2 may be used as an input of the defect file generation module 400, but the normal file 305-1 generated from the original that does not go through the normal file generation module 300 may be used. As described above, the normal file 305-2 generated by the automatic file generator 302 may be used.

소프트웨어의 결합을 유발할 수 있는 데이터를 삽입하는 결함 파일 발생모듈(400)은 정상 파일(406)에 결함 데이터를 삽입하여 결함 유발 파일을 생성하는 모듈이다. 보다 상세하게 설명하면, 결함 파일 발생모듈(400)은 모듈(401) 또는 스크립트(402)를 이용하여 파일 포맷의 정보를 받아들여, 결합 정책부(405)에 정의된 정책에 따라 정상 파일(305-1, 305-2)에 대해 결함 연산자(404)를 수행하여 발생기(407)가 소프트웨어의 결함을 유발시킬 수 있는 결함 데이터를 정상 파일(305-1, 305-2)에 자동으로 삽입한다. The defect file generation module 400 for inserting data that may cause software to be combined is a module for inserting defect data into the normal file 406 to generate a defect causing file. In more detail, the defect file generation module 400 receives the file format information using the module 401 or the script 402, and generates a normal file 305 according to the policy defined in the combining policy unit 405. The defect operator 404 is performed on the -1 and 305-2 so that the generator 407 automatically inserts the defect data into the normal files 305-1 and 305-2, which may cause a software defect.

결함 파일 발생모듈(400)은 크게 파일 포맷 분석모듈(406), 발생기(407), 결함 연산자(404) 및 결합 정책부(405)로 구성된다. 그리고, 파일 포맷 분석모듈(406)은 모듈(401), 스크립트(402) 및 파서(403)로 구성된다. The defect file generation module 400 is largely comprised of a file format analysis module 406, a generator 407, a defect operator 404, and a combination policy unit 405. The file format analysis module 406 is composed of a module 401, a script 402, and a parser 403.

파일 포맷 분석모듈(406) 내의 모듈(401)은 정상 파일(305-1, 305-2) 중 어느 하나의 포맷에 대한 정보를 설정하기 위해 모듈로 구현하거나 XML로 정의된 스크립트로 저장되어 정상 파일(305-1, 305-2)의 파일 포맷을 분석한다. The module 401 in the file format analysis module 406 implements a module to set information on any one of the normal files 305-1 and 305-2, or is stored as a script defined in XML and stored as a normal file. The file formats of (305-1, 305-2) are analyzed.

모듈(401)을 모듈 형태로 구현하는 경우에는 객체로 삽입되어 자동화 프로그램을 재컴파일시켜 사용하도록 구성한다. When the module 401 is implemented in a module form, the module 401 is inserted into an object and configured to recompile and use the automation program.

스크립트(402)가 만약 정상 파일의 포맷을 XML로 정의하면, 파서(403)에 의해 정의된 정상 파일의 XML 포맷에 대한 정보가 설정되어 그에 대한 구문을 해석하도록 한다. If the script 402 defines the format of the normal file in XML, information about the XML format of the normal file defined by the parser 403 is set to parse the syntax.

결함 연산자(404)는 읽어온 정상 파일(305-1, 305-2) 중 어느 하나의 정상 파일(305-1, 305-2)에 대해 바이너리 연산을 수행한다. 정상 파일(305-1, 305-2)에 대하여 결함 연산자(404)가 실행하는 결함 연산은 정상 파일(305-1, 305-2)의 파일 포맷에 따라 숫자와 문자로 구분되어 실행된다. The defect operator 404 performs a binary operation on one of the normal files 305-1 and 305-2 of the read normal files 305-1 and 305-2. Defect operations performed by the defect operator 404 on the normal files 305-1 and 305-2 are executed by being divided into numbers and letters according to the file formats of the normal files 305-1 and 305-2.

결함 정책부(405)는 소프트웨어의 결함을 유발시키는 결함 데이터를 정상 파일(406)에 삽입하는 정책을 설정한다. 정책에는 파일 포맷 분석모듈(406)에서 제공되는 파일 포맷의 정보를 고려하여 각각의 필드에 대해 결함 연산을 수행하는 방법을 정의한다. 발생기(407)에 의해 결함이 발생시에는 결합 정책부(405)에서 설정된 정책에 따라 정상 파일(406)에 대해 결함 연산자(404)의 도움을 받아 결함 데이터를 삽입함으로써 결함 유발 파일(501)을 생성한다. 이때, 발생기(407)는 정상 파일 발생모듈(300)에서 생성된 정상 파일(305-2) 또는 기 생성된 정상 파일(305-1) 중 어느 하나를 입력으로 받아 사용할 수 있다. The defect policy unit 405 sets a policy for inserting defect data causing software defects into the normal file 406. The policy defines a method of performing a defect operation on each field in consideration of the file format information provided by the file format analysis module 406. When a defect is generated by the generator 407, the defect causing file 501 is generated by inserting defect data with the help of the defect operator 404 to the normal file 406 according to the policy set by the combining policy unit 405. do. At this time, the generator 407 may receive any one of the normal file 305-2 or the normal file 305-1 generated by the normal file generation module 300 as an input.

발생기(407)에 의해 생성된 결함 유발 파일(501)은 결함 파일 실행모듈(500)의 입력으로 사용된다. The defect causing file 501 generated by the generator 407 is used as an input of the defect file execution module 500.

결함 파일 실행모듈(500)은 결함 파일 발생모듈(400)에서 생성된 결함 유발 파일(501)을 입력으로 받는다. The defect file execution module 500 receives a defect causing file 501 generated by the defect file generating module 400 as an input.

결함 파일 실행모듈(500) 내의 자동 파일 실행기(502)는 생성된 모든 결함 유발 파일(501)을 자동으로 실행시킨다. The automatic file executor 502 in the defect file execution module 500 automatically executes all generated defect causing files 501.

이와 같이 자동 파일 실행기(502)에 의해 결함 유발 파일(501)이 실행되고, 이 실행에 대한 실행 결과는 모니터링부(503)에 의해 그 실행 결과가 모니터링되고 이와 함께 자동 파일 실행기(502)에서 실행된 결과에 따른 실행 정보를 테스트 로그(505)에 저장한다. The defect causing file 501 is executed by the automatic file executor 502 as described above, and the execution result of the execution is monitored by the monitoring unit 503 and executed by the automatic file executor 502 together. The execution information according to the result is stored in the test log 505.

모니터링부(503)는 자동 파일 실행기(502)를 모니터링하여 이상이 발생했는지 감시하며 이상이 발견되었을 경우 이상이 발생한 시점의 메모리 정보를 결과 분석기(504)로 전송하여 결과 분석기(504)가 이상 원인을 분석하도록 한다. 결과 분석기(504)는 이상이 발생한 시점의 메모리 정보를 이용하여 결함 원인을 분석하여 사용자에게 출력장치 등을 이용하여 보고한다. The monitoring unit 503 monitors the automatic file executor 502 and monitors whether an abnormality has occurred. If an abnormality is found, the monitoring unit 503 transmits the memory information at the time of the abnormality to the result analyzer 504 to cause the result analyzer 504. Analyze The result analyzer 504 analyzes the cause of the defect using the memory information at the time when the abnormality occurs and reports the result to the user using an output device or the like.

도 2는 본 발명의 일실시예에 따른 소프트웨어 결함 유발 데이터를 삽입한 파일을 통해 소프트웨어 결함을 검출하는 자동화 과정을 나타낸 순서도이다. 2 is a flowchart illustrating an automated process of detecting a software defect through a file into which software defect causing data is inserted according to an embodiment of the present invention.

도 2를 참조하여 보면, 사용자는 결함 검출의 대상이 되는 소프트웨어에서 입력으로 받아들일 수 있는 파일에 대해 정상 파일을 자동으로 생성할 수 있는 테스팅 설정을 하고, 수동으로 정상 파일(305-2)을 생성한다(S102). Referring to FIG. 2, the user sets a testing setting to automatically generate a normal file for a file that can be accepted as an input by a software that is a target of defect detection, and manually sets the normal file 305-2. It generates (S102).

해당 입력을 수행한 후 본 발명의 자동화 프로그램의 전과정은 자동으로 이루어진다. After performing the corresponding input, the entire process of the automation program of the present invention is automatically performed.

결함 파일 발생모듈(400)은 소프트웨어의 결함 데이터를 생성한다(S104). The defect file generation module 400 generates defect data of software (S104).

결함 파일 발생모듈(400)은 S104에서 생성된 결함 데이터를 정상 파일들(305-1, 305-2) 중 어느 하나에 삽입하여 결함 유발 파일(501)을 생성한다(S106). 이때, S106에서 정상 파일은 S102에서 생성한 정상 파일 발생모듈(300)에 의해 자동으로 생성된 정상 파일(305-2) 또는 설정된 정책에 따라 입력으로 설정된 정상 파일(305-1) 중 어느 하나에 소프트웨어 결함 데이터를 자동으로 삽입하여 결함 유발 파일을 생성한다.The defect file generation module 400 inserts the defect data generated in S104 into any one of the normal files 305-1 and 305-2 to generate a defect causing file 501 (S106). In this case, the normal file in S106 is either a normal file 305-2 automatically generated by the normal file generation module 300 generated in S102 or a normal file 305-1 set as an input according to a set policy. Automatically insert software defect data to generate a defect causing file.

정상 파일들(305-1, 305-2) 중 어느 하나에 삽입되어 형성된 결함 유발 파일(501)은 결함 파일 실행모듈(500)로 입력된다(S108). The defect causing file 501 inserted into one of the normal files 305-1 and 305-2 is input to the defect file execution module 500 (S108).

결함 파일 실행모듈(500)은 생성된 모든 결함 유발 파일(501)을 자동으로 실행시키며(S110), 실행 중 발생하는 이상에 대해선 결과분석모듈(600)에서 모니터링 및 이상 현상에 대한 분석이 이루어진다(S112). The defect file execution module 500 automatically executes all generated defect causing files 501 (S110), and analyzes the result of the monitoring and the abnormal phenomenon in the result analysis module 600 for the abnormality occurring during execution ( S112).

이상에서 상술한 바와 같이, 본 발명은 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 정상 파일 생성, 파일에 결함 유발 데이터 삽입, 결함 유발 파일의 실행 그리고 파일 실행 중 발생하는 이상 현상 감시 및 분석의 전과정을 자동화함으로써 소프트웨어 테스팅의 효율성을 향상시킨 효과가 있다. As described above, the present invention uses a file into which software defect causing data has been inserted, thereby generating a normal file which detects a defect of software, inserting defect causing data into a file, executing a defect causing file, and an error occurring during file execution. Automating the entire process of monitoring and analyzing phenomena improves the efficiency of software testing.

본 발명은 파일 포맷을 고려하여 결함 유발 테스트를 수행함으로서 소프트웨어 테스트의 테스트 케이스 적절성을 보장하고 정상 파일에 소프트웨어의 결함을 유발시킬 수 있는 데이터에 대해 파일 포맷을 고려하여 삽입함으로써 결함 검출 능력을 향상시킨 효과가 있다. The present invention improves defect detection ability by performing defect-induced tests in consideration of the file format, ensuring test case adequacy of the software test, and inserting data in consideration of the file format into a normal file. It works.

Claims (9)

소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템으로서, An automated system that detects software defects using a file into which software defect causing data is inserted. 설정된 테스팅 옵션을 사용하여 대상 소프트웨어에서 입력을 받아들일 수 있는 정상 파일을 자동으로 생성하는 정상 파일 발생모듈과;A normal file generation module which automatically generates a normal file capable of accepting input from the target software using the set testing option; 정상 파일 발생 모듈에 의해 생성된 정상 파일에 대해 소프트웨어의 결함을 유발시킬 수 있도록 정상 파일에 결함 데이터를 삽입하여 결함 유발 파일을 자동으로 생성하는 결함 파일 발생모듈과;A defect file generation module for automatically generating a defect causing file by inserting defect data into the normal file so as to cause a defect of software for the normal file generated by the normal file generating module; 자동으로 생성된 결함 유발 파일에 대해 자동으로 실행시키는 결함 파일 실행모듈과;A defect file execution module for automatically executing the automatically generated defect causing file; 파일이 실행될 때 이상 유무를 감시하며 이상이 발생했을 경우 이상 원인을 분석하여 사용자에게 출력하는 결과분석모듈을 포함하여 이루어진 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템. Detects the defect of the software by using the file into which the software defect causing data is inserted, which includes a result analysis module which monitors whether there is an error when the file is executed and analyzes the cause of the error and outputs it to the user. Automation system. .. 제1항에 있어서, The method of claim 1, 상기 정상 파일 대신에 기생성되어 있는 정상 파일에 결함 데이터를 삽입하여 결함 유발 파일을 생성하는 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템. And a defect generation file by inserting the defect data into a pre-generated normal file instead of the normal file to generate a defect causing file. 제2항에 있어서, The method of claim 2, 상기 정상 파일 발생모듈은, The normal file generation module, 상기 테스팅 옵션을 기반으로 대상 파일 포맷을 처리할 수 있는 함수를 API 또는 COM을 통해 호출하여 대상 소프트웨어에서 읽을 수 있는 정상 파일을 자동으로 생성하는 자동 파일 발생기로 이루어진 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템. Based on the testing option, a function that can process a target file format is called through an API or COM, and automatically generates a software fault causing data, characterized in that the automatic file generator for generating a normal file that can be read by the target software. An automated system that detects software defects using inserted files. 제2항에 있어서, The method of claim 2, 상기 결함 파일 발생모듈은 모듈 또는 스크립트 중 어느 하나를 이용하여 파일 포맷의 정보를 받아들이고, 결합 정책부에 정의된 정책에 따라 상기 정상 파일들 중 어느 하나의 정상 파일에 대해 결함 연산자를 수행하여 발생기가 소프트웨어의 결함을 유발시킬 수 있는 결함 데이터를 상기 정상 파일에 삽입하는 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템. The fault file generating module receives the file format information by using any one of a module or a script, and performs a fault operator on any one of the normal files according to a policy defined in the combining policy unit. Automated system for detecting a defect of the software by using the file into which the software defect causing data is inserted, characterized in that the defect data that can cause the defect of the software is inserted into the normal file. 제4항에 있어서, The method of claim 4, wherein 상기 스크립트가 정상 파일 포맷을 정의하고 정상 파일의 포맷에 대한 정보가 설정되어 그에 대한 구문을 해석하는 파서를 더 포함하는 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템. The script may further include a parser that defines a normal file format and sets information on the format of the normal file and interprets the syntax thereof. Automation system. 제4항에 있어서, The method of claim 4, wherein 상기 결함 연산자 상기 정상 파일 중 어느 하나의 정상 파일에 대해 바이너리 연산을 수행하며 상기 정상 파일의 파일 포맷에 따라 숫자와 문자로 구분하여 실행하는 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템. The defect operator performs a binary operation on any one of the normal files and executes the software defect causing data, characterized in that the file is divided into numbers and letters according to the file format of the normal file. Automated system for detecting software defects. 제2항에 있어서, The method of claim 2, 상기 결과분석모듈은, The result analysis module, 상기 결함 파일 실행모듈에서 실행된 실행 결과를 모니터링하는 모니터링부와; A monitoring unit for monitoring an execution result executed in the defect file execution module; 상기 결함 파일 실행모듈에 의해 실행된 결과에 따른 실행 정보를 저장하는 테스트 로그와; A test log for storing execution information according to a result executed by the defect file execution module; 상기 모니터링부가 감시하여 이상이 발견되었을 경우 이상이 발생한 시점의 메모리 정보를 상기 모니터링부로부터 전송받아 이상 원인을 분석하고 결함 원인을 분석하여 사용자에게 보고하는 결과 분석기로 이루어진 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 시스템. When the monitoring unit monitors and detects an abnormality, software defect causing data comprising a result analyzer which receives memory information at the time of an abnormality from the monitoring unit, analyzes the cause of the abnormality, and analyzes and reports the cause of the defect to the user. Automated system that detects software defects using the inserted file. 사용자는 결함 검출의 대상이 되는 소프트웨어에서 입력으로 받아들일 수 있는 파일에 대해 정상 파일을 자동으로 생성할 수 있는 테스팅 설정을 하고, 수동으로 정상 파일을 생성하는 제1 생성단계와; A first generating step in which a user sets a testing setting for automatically generating a normal file with respect to a file that can be accepted as input by a software that is a target of defect detection, and manually generates the normal file; 결함 파일 발생모듈이 소프트웨어의 결함 데이터를 생성하는 제2 생성단계와; A second generation step of generating, by the defect file generation module, defect data of software; 결함 파일 발생모듈이 상기 제2 생성단계에서 생성된 결함 데이터를 제1 생성단계에서 생성한 상기 정상 파일에 삽입하여 결함 유발 파일을 생성하는 제3 생성단계와; A third generation step of generating, by the defect file generation module, a defect causing file by inserting the defect data generated in the second generation step into the normal file generated in the first generation step; 상기 제3 생성단계에서 생성된 결함 유발 파일이 결함 파일 실행모듈로 입력되는 입력단계와; An input step of inputting a defect causing file generated in the third generation step into a defect file execution module; 결함 파일 실행모듈은 생성된 결함 유발 파일을 자동으로 실행시키는 실행단계와; The defect file execution module includes: an execution step of automatically executing the generated defect causing file; 상기 실행단계에서 발생하는 이상에 대해선 결과분석모듈이 모니터링 및 이상 현상에 대한 분석하는 모니터링 및 분석단계를 포함하여 이루어지는 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 방법. Detecting a defect in the software using a file containing the software defect causing data, characterized in that it comprises a monitoring and analysis step of monitoring and analyzing the result analysis module for the abnormality occurring in the execution step. Automation method. 제8항에 있어서, The method of claim 8, 상기 정상 파일 대신에 기생성되어 있는 정상 파일에 결함 데이터를 삽입하여 결함 유발 파일을 생성하는 것을 특징으로 하는 소프트웨어 결함 유발 데이터를 삽입한 파일을 이용하여 소프트웨어의 결함을 검출하는 자동화 방법. And a defect generation file by inserting defect data into a pre-generated normal file instead of the normal file to generate a defect causing file.
KR1020070058329A 2006-11-09 2007-06-14 Automatic software testing system and method using faulted file KR100897412B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020060110497 2006-11-09
KR20060110497 2006-11-09

Publications (2)

Publication Number Publication Date
KR20080042659A true KR20080042659A (en) 2008-05-15
KR100897412B1 KR100897412B1 (en) 2009-05-14

Family

ID=39649329

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070058329A KR100897412B1 (en) 2006-11-09 2007-06-14 Automatic software testing system and method using faulted file

Country Status (1)

Country Link
KR (1) KR100897412B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101008959B1 (en) * 2008-09-12 2011-01-17 성균관대학교산학협력단 Method for layer test of Robot software component
KR101042979B1 (en) * 2009-10-23 2011-06-21 한국항공대학교산학협력단 Simulation Kernel-based Simulation Fault Injection Apparatus for the Evaluation of the Dependability of Embedded Systems
US8418143B2 (en) 2009-05-08 2013-04-09 Electronics And Telecommunications Research Institute Software reliability test method using selective fault activation, test area restriction method, workload generation method and computing apparatus for testing software reliability using the same
KR101255265B1 (en) * 2012-08-13 2013-04-15 주식회사 유니테스트 Apparatus for error generating in solid state drive tester
KR101269549B1 (en) * 2009-05-08 2013-06-04 한국전자통신연구원 System and method for testing software reliability using fault injection
KR101420750B1 (en) * 2012-09-20 2014-07-21 한국항공우주산업 주식회사 Unmanned Aerial Vehicle Flight Control Software Verification Method
US9098633B2 (en) 2011-09-07 2015-08-04 Hewlett-Packard Indigo B.V. Application testing
KR20180134677A (en) * 2017-06-09 2018-12-19 슈어소프트테크주식회사 Method and apparatus for fault injection test

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102020798B1 (en) 2015-12-24 2019-09-16 삼성에스디에스 주식회사 Method and System for performing automated test
CN109634782B (en) * 2018-12-06 2021-05-04 Oppo广东移动通信有限公司 Method and device for detecting system robustness, storage medium and terminal

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100313712B1 (en) * 1998-11-27 2002-02-28 오길록 Fault-Based Software Fault Tolerance for Redundant Processors
US20070174679A1 (en) 2006-01-26 2007-07-26 Ibm Corporation Method and apparatus for processing error information and injecting errors in a processor system

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101008959B1 (en) * 2008-09-12 2011-01-17 성균관대학교산학협력단 Method for layer test of Robot software component
US8418143B2 (en) 2009-05-08 2013-04-09 Electronics And Telecommunications Research Institute Software reliability test method using selective fault activation, test area restriction method, workload generation method and computing apparatus for testing software reliability using the same
KR101269549B1 (en) * 2009-05-08 2013-06-04 한국전자통신연구원 System and method for testing software reliability using fault injection
KR101042979B1 (en) * 2009-10-23 2011-06-21 한국항공대학교산학협력단 Simulation Kernel-based Simulation Fault Injection Apparatus for the Evaluation of the Dependability of Embedded Systems
US9098633B2 (en) 2011-09-07 2015-08-04 Hewlett-Packard Indigo B.V. Application testing
KR101255265B1 (en) * 2012-08-13 2013-04-15 주식회사 유니테스트 Apparatus for error generating in solid state drive tester
US9153345B2 (en) 2012-08-13 2015-10-06 Unitest Inc Error generating apparatus for solid state drive tester
KR101420750B1 (en) * 2012-09-20 2014-07-21 한국항공우주산업 주식회사 Unmanned Aerial Vehicle Flight Control Software Verification Method
KR20180134677A (en) * 2017-06-09 2018-12-19 슈어소프트테크주식회사 Method and apparatus for fault injection test

Also Published As

Publication number Publication date
KR100897412B1 (en) 2009-05-14

Similar Documents

Publication Publication Date Title
KR100897412B1 (en) Automatic software testing system and method using faulted file
US9448916B2 (en) Software test automation systems and methods
US9547579B1 (en) Method and apparatus for automatically detecting defects
US20110296246A1 (en) Techniques for debugging an application
CN103257919B (en) Inspection method and device for script programs
CN104820640A (en) Webpage testing method and device
CN105630463A (en) Method and device for detecting JAR packet collision
US20200117587A1 (en) Log File Analysis
US20020116153A1 (en) Test automation framework
US20090288072A1 (en) Automatic Tests of Product Documentation
JP2015011372A (en) Debug support system, method, program, and recording medium
CN112817853A (en) Automatic test method, system and electronic equipment
CN114138633A (en) Method, device and equipment for testing software based on data driving and readable medium
CN110908903B (en) Test method based on editable YAML file
CN113971031A (en) Software package dependency relationship checking method and device
CN110990289A (en) Method and device for automatically submitting bug, electronic equipment and storage medium
CN114661615A (en) FPGA software testing method and device
Black Static analyzers: Seat belts for your code
CN106294109B (en) Method and device for acquiring defect code
US8291389B2 (en) Automatically detecting non-modifying transforms when profiling source code
CN115757138A (en) Method and device for determining script abnormal reason, storage medium and electronic equipment
CN116541308A (en) Regression testing method and system
KR100924519B1 (en) File format analysis system and method for unknown file format to use software security testing
Singhal et al. A critical review of various testing techniques in aspect-oriented software systems
US20080115016A1 (en) System and method for analyzing unknown file format to perform software security test

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130410

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140326

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160328

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20170406

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20180406

Year of fee payment: 10