KR102002545B1 - Code test automatic proceeding method through virtualixation and appratus for the same - Google Patents

Code test automatic proceeding method through virtualixation and appratus for the same Download PDF

Info

Publication number
KR102002545B1
KR102002545B1 KR1020170173472A KR20170173472A KR102002545B1 KR 102002545 B1 KR102002545 B1 KR 102002545B1 KR 1020170173472 A KR1020170173472 A KR 1020170173472A KR 20170173472 A KR20170173472 A KR 20170173472A KR 102002545 B1 KR102002545 B1 KR 102002545B1
Authority
KR
South Korea
Prior art keywords
output value
value
test
normal
predetermined input
Prior art date
Application number
KR1020170173472A
Other languages
Korean (ko)
Other versions
KR20190072253A (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 슈어소프트테크주식회사
Priority to KR1020170173472A priority Critical patent/KR102002545B1/en
Publication of KR20190072253A publication Critical patent/KR20190072253A/en
Application granted granted Critical
Publication of KR102002545B1 publication Critical patent/KR102002545B1/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/3696Methods or tools to render software testable
    • 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
    • G06F11/368Test management for test version control, e.g. updating test cases to a new software version
    • 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
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • 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
    • G06F11/3692Test management for test results analysis

Landscapes

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

Abstract

본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 자동화 방법은 소스코드 테스트를 위한 실물 환경에서, 소정의 입력값을 테스트 수행환경정보에 기초해 확정테스트를 수행하여, 상기 소정의 입력값에 대응하는 제 1 출력값과 상기 제 1 출력값의 정상유무를 판별하는 제 1 정상유무판별값을 획득하는 단계, 상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값을 저장하는 단계, 코드 테스트를 위하여 상기 저장된 테스트 수행환경정보로 구동되는 가상 환경에서, 상기 기 저장된 소정의 입력값을 회귀테스트 수행하여, 상기 저장된 소정의 입력값에 대응하는 제 2 출력값과 상기 제 2 출력값의 정상유무를 판별하는 제 2 정상유무판별값을 획득하는 단계 및 가상 환경에서의 상기 제 2 출력값을 실물 환경에서의 상기 제 1 출력값과 비교하여, 해당 비교 결과를 출력하는 단계를 포함할 수 있다.A method for automating code test execution through virtualization according to an embodiment of the present invention includes the steps of performing a confirm test on a predetermined input value based on test execution environment information in a real environment for source code test, Obtaining a first normal presence / absence discrimination value for discriminating whether or not the first output value is normal; determining whether the predetermined input value, the test execution environment information, the first output value, And a second output value corresponding to the stored predetermined input value and a second output value corresponding to the stored predetermined input value in a virtual environment driven by the stored test execution environment information for code testing, Obtaining a second normal presence / absence discrimination value for discriminating whether or not the second output value is normal, and acquiring the second output value in the virtual environment Compared with the first output value in the it may include a step of outputting the result of the comparison.

Description

가상화를 통한 코드 테스트 수행 자동화 방법 및 장치{CODE TEST AUTOMATIC PROCEEDING METHOD THROUGH VIRTUALIXATION AND APPRATUS FOR THE SAME}TECHNICAL FIELD [0001] The present invention relates to a method and an apparatus for performing code test execution through virtualization,

본 발명은 가상화를 통한 코드 테스트 수행 자동화 방법 및 장치에 관한 것으로, 보다 구체적으로 실물 환경에서의 코드 테스트 수행 결과를 저장하여, 저장된 테스트 수행 결과를 바탕으로 가상 환경에서 다시 코드 테스트 하기 위한 가상화를 통한 코드 테스트 수행 자동화 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for automating code test execution through virtualization, more specifically, by storing virtual test results in a real environment, And a method and apparatus for automating code test execution.

종래에는 개발된 소프트웨어를 검증하기 위해 사람이 일일이 테스트를 수행하여 왔다. 이 경우, 수천번 내지 수만번 반복되는 테스트를 오프라인 상에서 사람이 일일이 수행함으로서, 시간이 많이 들고 이로 인한 비용 또한 상당히 많이 들게 되었다. 특히, 테스트 수행시 오류가 발생하는 경우, 오류가 발생한 부분을 오류가 발생하지 않을 때까지 반복 수행해왔으며, 개발된 소프트웨어의 버전이 올라갈 때마다 이러한 과정을 반복함으로서 상기 문제점에 대한 해결책이 시급한 실정이다.Conventionally, a person has been performing tests to verify developed software. In this case, since the person performs the test repeatedly from several thousands to tens of thousands of times offline, it is time-consuming and the cost is also considerably high. In particular, if an error occurs during the execution of the test, the error occurrence part is repeated until no error occurs, and a solution to the above problem is urgently required by repeating this process each time the developed software version is upgraded .

본 발명은 상기 문제점을 해결하기 위해 도출된 것으로, 반복되는 테스트를 사람이 직접 오프라인에서 수행하는 것이 아닌, 가상화 환경에서 자동 수행되도록 제어함으로서, 테스트 수행에 드는 시간과 노력을 단축시키는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made in order to solve the above problems, and it is an object of the present invention to shorten the time and effort required for performing a test by automatically performing a repeated test in a virtualized environment, .

본 발명의 일 실시예에 따른 가상화를 통한 코드 테스트 수행 자동화 방법은 코드 테스트를 위한 실물 환경에서, 소정의 입력값을 테스트 수행환경정보에 기초해 확정테스트를 수행하여, 상기 소정의 입력값에 대응하는 제 1 출력값과 상기 제 1 출력값의 정상유무를 판별하는 제 1 정상유무판별값을 획득하는 단계, 상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값을 저장하는 단계, 코드 테스트를 위하여 상기 저장된 테스트 수행환경정보로 구동되는 가상 환경에서, 상기 기 저장된 소정의 입력값을 회귀테스트 수행하여, 상기 저장된 소정의 입력값에 대응하는 제 2 출력값과 상기 제 2 출력값의 정상유무를 판별하는 제 2 정상유무판별값을 획득하는 단계 및 가상 환경에서의 상기 제 2 출력값을 실물 환경에서의 상기 제 1 출력값과 비교하여, 해당 비교 결과를 출력하는 단계를 포함할 수 있다.A method for automating code test execution through virtualization according to an exemplary embodiment of the present invention includes performing a confirm test on a predetermined input value based on test execution environment information in a real environment for code test, Obtaining a first normal presence / absence discrimination value for discriminating whether or not the first output value is normal; determining whether the predetermined input value, the test execution environment information, the first output value, And a second output value corresponding to the stored predetermined input value and a second output value corresponding to the stored predetermined input value in a virtual environment driven by the stored test execution environment information for code testing, Obtaining a second normal presence / absence discrimination value for discriminating whether or not the second output value is normal, and acquiring the second output value in the virtual environment Compared with the first output value in the it may include a step of outputting the result of the comparison.

본 발명의 다른 실시예에 따른 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체는 상기 방법에 따른 컴퓨터 프로그램을 기록할 수 있다.A computer-readable recording medium for recording a computer program according to another embodiment of the present invention can record a computer program according to the method.

본 발명의 또 다른 실시예에 따른 가상화를 통한 코드 테스트 수행 자동화 장치는 소스코드 테스트를 위한 실물 환경에서, 소정의 입력값을 테스트 수행환경정보에 기초해 확정테스트를 수행하여, 상기 소정의 입력값에 대응하는 제 1 출력값과 상기 제 1 출력값의 정상유무를 판별하는 제 1 정상유무판별값을 획득하는 실물환경데이터획득부, 상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값을 저장하는 메모리부, 코드 테스트를 위한 가상 환경에서, 상기 메모리부에 기 저장된 소정의 입력값을 회귀테스트 수행하여, 상기 저장된 소정의 입력값에 대응하는 제 2 출력값과 상기 제 2 출력값의 정상유무를 판별하는 제 2 정상유무판별값을 획득하는 가상환경데이터획득부 및 가상 환경에서의 상기 제 2 출력값을 실물 환경에서의 상기 제 1 출력값과 비교하여, 해당 비교 결과를 출력하는 비교판단부를 포함할 수 있다.The apparatus for automated code test execution through virtualization according to another embodiment of the present invention performs a confirm test on a predetermined input value based on test execution environment information in a real environment for source code test, A first output value corresponding to the first output value, and a first normal presence / absence discrimination value for discriminating whether the first output value is normal or not; a second input / output unit for inputting the predetermined input value, the test execution environment information, A memory unit for storing the first normal presence / absence discrimination value; and a second output value corresponding to the stored predetermined input value by performing a regression test on a predetermined input value pre-stored in the memory unit in a virtual environment for code testing, A virtual environment data acquisition unit for acquiring a second normal presence / absence discrimination value for discriminating whether or not the second output value is normal; A as compared with the first output value in the real environment, and may include comparison judgment and outputting the result of the comparison unit.

본 발명에 따르면, 반복되는 코드 테스트를 사람이 직접 오프라인에서 수행하는 것이 아닌, 가상화 환경에서 자동 수행되도록 제어함으로서, 코드 테스트 수행에 드는 시간과 노력이 단축될 수 있게 된다.According to the present invention, it is possible to shorten the time and effort required to perform the code test by controlling the repeated code test to be performed automatically in a virtualized environment, rather than being performed directly offline.

도 1은 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 장치에 대한 블록도이다.
도 2는 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 자동화 방법에 대한 순서도이다.
도 3은 도 2의 비교판단부의 판단절차(S240)을 상세화한 순서도이다.
도 4는 본 발명의 실시예에 따라 가상화를 통한 코드 테스트 수행 자동화 장치(1)에서 계산기 어플리케이션이 구동되는 경우의 실물 환경 DB(410)와 가상 환경 DB(420)를 나타내기 위해 참조한 도면이다.
1 is a block diagram of an apparatus for performing a code test through virtualization according to an embodiment of the present invention.
2 is a flowchart illustrating a method of automating code test execution through virtualization according to an embodiment of the present invention.
FIG. 3 is a detailed flowchart of a determination procedure (S240) of the comparison determination unit of FIG.
4 is a diagram referred to for illustrating a real environment DB 410 and a virtual environment DB 420 when a calculator application is run in the automatic code test execution apparatus 1 through virtualization according to an embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.The following detailed description of the invention refers to the accompanying drawings, which illustrate, by way of illustration, specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment. It is also to be understood that the position or arrangement of the individual components within each disclosed embodiment may be varied without departing from the spirit and scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is to be limited only by the appended claims, along with the full scope of equivalents to which such claims are entitled, if properly explained. In the drawings, like reference numerals refer to the same or similar functions throughout the several views.

이하, 첨부되는 도면을 참조하여 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 자동화 방법 및 장치에 대해 기술하고자 한다. Hereinafter, a method and apparatus for automating code test execution through virtualization according to an embodiment of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 장치(1)에 대한 블록도이다.1 is a block diagram of an apparatus 1 for executing a code test through virtualization according to an embodiment of the present invention.

도 1에 도시한 바와 같이, 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 장치(1)는 입력부(100), 제어부(200), 메모리부(300), 출력부(400)를 포함할 수 있다.1, an apparatus 1 for executing a code test through virtualization according to an embodiment of the present invention includes an input unit 100, a control unit 200, a memory unit 300, and an output unit 400 .

본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 장치(1)는 운영체제에 의해 구동되고, 소프트웨어의 설치 및 편집이 가능한 장치로서, 프로그램 모듈 또는 하드웨어들을 포함한다. 메모리부(300)를 구비하고 마이크로 프로세서(이하, 제어부(200)라 한다)를 탑재하여 연산 능력을 갖춘 기기라면 얼마든지 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 장치(1)로서 이용될 수 있다. 예를 들어, 데스크탑(desktop) 컴퓨터, 노트북(notebook) 컴퓨터, PDA(Personal Digital Assistant) 및 스마트폰(smart phone)과 같은 전자 장치일 수 있다. The apparatus 1 for executing a code test through virtualization according to an embodiment of the present invention is an apparatus which is driven by an operating system and is capable of installing and editing software and includes a program module or hardware. If a device having a memory unit 300 and a microprocessor (hereinafter referred to as a control unit 200) and equipped with computing capability is used as the code test execution apparatus 1 through virtualization according to the embodiment of the present invention . For example, it may be an electronic device such as a desktop computer, a notebook computer, a personal digital assistant (PDA), and a smart phone.

입력부(100)는 사용자가 컴퓨팅 시스템을 조작할 수 있도록 하는 입력 경로가 되는 것으로, 키보드, 마우스, 포인팅 장치, 터치 스크린 등을 포함할 수 있다. 본 발명의 경우, 입력부(100)를 통해 테스트 코드가 입력되며, 제어부(200)는 입력된 테스트 코드를 테스트 수행하여, 해당 결과가 출력부(400)로 출력될 수 있다. 입력부(100)는 실물코드입력부(110) 및 가상코드입력부(120)를 포함하고, 실물코드입력부(110)를 통해 사용자로부터 테스트 코드가 입력되고, 입력된 테스트 코드가 실물환경데이터획득부(210)를 통해 메모리부(300)에 저장되면, 저장된 테스트 코드는 다시 가상코드입력부(120)를 통해 가상환경데이터획득부(220)로 전송된다.The input unit 100 may be a keyboard, a mouse, a pointing device, a touch screen, or the like as an input path for allowing a user to operate the computing system. In the present invention, a test code is input through the input unit 100, and the controller 200 tests the input test code and outputs the result to the output unit 400. The input unit 100 includes a physical code input unit 110 and a virtual code input unit 120. The test code is input from the user through the physical code input unit 110 and the inputted test code is supplied to the real environment data acquisition unit 210 The stored test code is transmitted to the virtual environment data acquiring unit 220 through the virtual code input unit 120 again.

제어부(200)는 입력부(100), 메모리부(300), 출력부(400)와 연동되어 가상화를 통한 코드 테스트 수행 장치(1)를 제어하는 것으로, 본 발명의 일 실시예에 따라 실물환경데이터획득부(210), 가상환경데이터획득부(220), 및 비교판단부(230)를 포함할 수 있다. 본 발명의 실시예에 따라 실물환경데이터획득부(210)는 코드 테스트를 위한 실물 환경에서, 소정의 입력값을 테스트 수행환경정보에 기초해 확정테스트를 수행하여, 소정의 입력값에 대응하는 제 1 출력값과 제 1 출력값의 정상유무를 판별하는 제 1 정상유무판별값을 획득할 수 있다. 그리고 가상환경데이터획득부(220)는 코드 테스트를 위하여 기 저장된 테스트 수행환경정보로 구동되는 가상 환경에서, 메모리부(300)에 기 저장된 소정의 입력값을 회귀테스트 수행하여, 기 저장된 소정의 입력값에 대응하는 제 2 출력값과 제 2 출력값의 정상유무를 판별하는 제 2 정상유무판별값을 획득할 수 있다. 또한, 비교판단부(230)는 가상 환경에서의 제 2 출력값을 실물 환경에서의 제 1 출력값과 비교하여, 해당 비교 결과를 출력할 수 있다.The control unit 200 controls the code test execution device 1 through virtualization in cooperation with the input unit 100, the memory unit 300, and the output unit 400. In accordance with an embodiment of the present invention, An acquisition unit 210, a virtual environment data acquisition unit 220, and a comparison determination unit 230. According to an embodiment of the present invention, the real environment data acquisition unit 210 performs a confirmation test based on the test execution environment information in a real environment for code testing, 1 < / RTI > output value and the first output value can be obtained. The virtual environment data acquisition unit 220 performs a regression test on a predetermined input value previously stored in the memory unit 300 in a virtual environment driven by pre-stored test execution environment information for code testing, Whether the second output value corresponding to the first output value and the second output value corresponding to the second output value is normal or not can be obtained. Also, the comparison determination unit 230 may compare the second output value in the virtual environment with the first output value in the real environment, and output the comparison result.

메모리부(300)는 가상화를 통한 코드 테스트 수행 장치(1)의 다양한 정보를 저장한다. 메모리부(300)는 가상화를 통한 코드 테스트 수행 장치(1)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 가상화를 통한 코드 테스트 수행 장치(1)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수도 있다. 또한, 본 발명의 일 실시예에 따라 메모리부(300)는 소정의 입력값, 테스트 수행환경정보, 제 1 출력값, 및 제 1 정상유무판별값 이외에, 제 2 출력값 및 제 2 정상유무판별값을 저장할 수 있다.The memory unit 300 stores various information of the code test execution device 1 through virtualization. The memory unit 300 includes a plurality of application programs (application programs or applications) driven by the code test execution apparatus 1 through virtualization, data for operation of the code test execution apparatus 1 through virtualization, Commands can be stored. At least some of these applications may be downloaded from an external server via wireless communication. In addition, according to an embodiment of the present invention, the memory unit 300 may store the second output value and the second normal presence / absence discrimination value in addition to the predetermined input value, the test execution environment information, the first output value, Can be stored.

출력부(400)는 터치스크린, 모니터 등을 포함하며, 제어부(200)를 통해 처리된 결과를 디스플레이할 수 있다. 특히, 본 발명에 따르면 제 2 출력값과 제 1 출력값을 비교한 결과를 출력할 수 있다. The output unit 400 may include a touch screen, a monitor, and the like, and may display results processed through the control unit 200. Particularly, according to the present invention, it is possible to output the result of comparing the second output value and the first output value.

지금까지는 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 자동화 장치의 구성을 기술하였으며, 하기에서 가상화를 통한 코드 테스트 수행 자동화 방법에 대해 기술하고자 한다. Up to now, a configuration of an automatic code test execution apparatus through virtualization according to an embodiment of the present invention has been described, and a method of automating code test execution through virtualization will be described below.

도 2는 본 발명의 실시예에 따른 가상화를 통한 코드 테스트 수행 자동화 방법에 대한 순서도이다.2 is a flowchart illustrating a method of automating code test execution through virtualization according to an embodiment of the present invention.

도 2에 도시한 바와 같이, 본 발명의 실시예에 따른 실물환경데이터획득부(210)는 먼저, 코드 테스트를 위한 실물 환경에서, 소정의 입력값을 테스트하여 소정의 입력값에 대응하는 출력값을 획득할 수 있다. 구체적으로, 실물환경데이터획득부(210)는 테스트 수행환경정보에 기초해 확정테스트를 수행하여, 소정의 입력값에 대응하는 제 1 출력값과, 제 1 출력값의 정상유무를 판별하는 제 1 정상유무판별값을 획득할 수 있다(S210). 그리고, 상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값을 메모리(300)에 저장할 수 있다(S220). 이러한 소정의 입력값, 테스트 수행환경정보, 제 1 출력값, 및 제 1 정상유무판별값은 코드 테스트를 수행하는 장치에 저장될 수도 있으나, 별도의 외부 장치(예, USB)에 저장될 수도 있다. 그리고, 테스트 수행환경정보는 데이터베이스 데이터, 파일, 환경 변수, 또는 장치 입력 신호 등을 포함할 수 있다.As shown in FIG. 2, the real environment data acquisition unit 210 according to the embodiment of the present invention firstly tests a predetermined input value in a real environment for code testing, and outputs an output value corresponding to a predetermined input value Can be obtained. Specifically, the real environment data acquisition unit 210 performs a confirm test on the basis of the test execution environment information to generate a first output value corresponding to a predetermined input value, a first normal state presence / absence The discrimination value can be obtained (S210). The predetermined input value, the test execution environment information, the first output value, and the first normal presence / absence discrimination value may be stored in the memory 300 (S220). The predetermined input value, the test execution environment information, the first output value, and the first normal presence / absence discrimination value may be stored in a device that performs a code test, but may be stored in a separate external device (e.g., USB). The test execution environment information may include database data, a file, an environment variable, or a device input signal.

예를 들어, 도 4에 도시한 바와 같이, 메모리(300)는 실물 환경 DB(410)와 가상 환경 DB(420)를 저장할 수 있으며, 각 DB에는 코드 테스트 케이스(TC1, TC2 또는 TC1a, TC1b, TC2a, TC2b) 에 관련된 정보가 각각 포함될 수 있다. 그리고, 각 코드 테스트 케이스는 입력값 정보, 수행 환경 정보, 출력값(A, A') 정보, 및 정상유무판별값(N, N') 정보를 포함할 수 있다. 본 발명에서 입력값 정보는 테스트를 수행하기 위해 입력되는 값이고, 수행 환경 정보는 테스트를 수행하는 변수나 조건 등의 정보이고, 출력값(A, A')은 테스트 수행 결과값이며, 정상유무판별값(N,N')은 테스트 수행 결과, 입력값이 제대로 테스트 수행 되었는지 여부에 대해 판별한 정보이다. 만일, 정상유무판별값(N,N')이 비정상으로 얻어진 경우, 테스트 케이스(입력값)가 수행되기 위한 원본 소스코드에 수정이 가해진 것으로 인식될 수 있다. 즉, 본 발명에 의하면, 동일한 코드 테스트 케이스(입력값)를 수행해도 출력값이나 정상유무판별값이 원본 소스코드 변경에 따라 다르게 출력될 수 있으므로, 원본 소스코드에 수정이 가해졌는지 여부를 판별하는 것이 중요할 수 있다. 4, the memory 300 may store a real environment DB 410 and a virtual environment DB 420. Each DB may include a code test case TC1, TC2 or TC1a, TC1b, TC2a, and TC2b, respectively. Each code test case may include input value information, execution environment information, output value (A, A ') information, and normal presence / absence discrimination value (N, N') information. In the present invention, the input value information is a value input for performing a test, the execution environment information is information such as a variable or condition for performing a test, the output value A, A 'is a test execution result value, The values (N, N ') are information that determines whether the input value is properly tested as a result of the test. If the normal presence / absence discrimination value (N, N ') is obtained abnormally, it can be recognized that the original source code for executing the test case (input value) is modified. In other words, according to the present invention, even if the same code test case (input value) is performed, the output value or the presence / absence discrimination value can be outputted differently according to the original source code change. Therefore, It can be important.

도 4는 본 발명의 실시예에 따라 가상화를 통한 코드 테스트 수행 자동화 장치(1)에서 계산기 어플리케이션이 구동되는 경우의 실물 환경 DB(410)와 가상 환경 DB(420)에 대한 도면이다. 이 때, 테스트 수행 환경 정보는 공학용 계산기, 일반 계산기, 프로그래머용 계산기 등의 정보가 될 수 있으며, 본 발명의 경우, 특히 공학용 계산기 어플리케이션에서 SUM함수가 구동될 때를 가정한다. FIG. 4 is a diagram of a real environment DB 410 and a virtual environment DB 420 in a case where a calculator application is run in the automatic code test execution apparatus 1 through virtualization according to an embodiment of the present invention. At this time, the test execution environment information may be information of a scientific calculator, a general calculator, a calculator for a programmer, etc. In the present invention, it is assumed that a SUM function is driven in a scientific calculator application in particular.

도 4에 도시한 바와 같이, 실물환경데이터획득부(210)는 제 1 테스트 케이스(TC1)로, 테스트 수행환경정보(공학용 계산기 어플리케이션에서 SUM함수 구동)에 기초해 확정테스트를 수행하여, 소정의 입력값(1,1)에 대응하는 제 1 출력값(2)과, 제 1 출력값(2)의 정상유무를 판별하는 제 1 정상유무판별값(정상)을 획득할 수 있다. 또한, 제 2 테스트 케이스(TC2)로, 테스트 수행환경정보(공학용 계산기 어플리케이션에서 SUM함수 구동)에 기초해 확정테스트를 수행하여, 소정의 입력값(1,1)에 대응하는 제 1 출력값(3)과, 제 1 출력값(3)의 정상유무를 판별하는 제 1 정상유무판별값(비정상)을 획득할 수 있다. 전술한 예에서 "정상"은 1+1=2를 의미하고, "비정상"은 1+1=3을 의미한다. 그리고, 상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값을 메모리(300)에 저장할 수 있다.4, the real environment data acquisition unit 210 performs a confirmation test on the basis of the test execution environment information (the SUM function in the scientific calculator application) as the first test case TC1, It is possible to obtain the first output value 2 corresponding to the input value 1,1 and the first normal presence / absence discrimination value (normal) for discriminating whether the first output value 2 is normal or not. In addition, the second test case TC2 performs a definite test on the basis of the test execution environment information (the SUM function in the scientific calculator application) to obtain the first output value 3 corresponding to the predetermined input value (1, 1) , And a first normal presence / absence discrimination value (abnormal) for discriminating whether the first output value 3 is normal or not. In the above example, "normal" means 1 + 1 = 2, and "abnormal" means 1 + 1 = 3. The predetermined input value, the test execution environment information, the first output value, and the first normal presence / absence discrimination value may be stored in the memory 300.

다음, 가상환경데이터획득부(220)는 코드 테스트를 위하여 기 저장된 테스트 수행환경정보로 구동되는 가상 환경에서, 기 저장된 소정의 입력값을 다시 테스트할 수 있다. 구체적으로, 확정 테스트를 수행했던 입력값(테스트 케이스)과 동일한 입력값을 부여하였을 때, 실물 환경에서의 제 1 출력값과 다른 가상 환경에서의 제 2 출력값이 획득된 것이 원본 소스코드 변경(예를 들어, 소스코드 버전 업)에 의한 것으로 판단되기 위해서는, 확정테스트를 수행한 테스트 수행환경정보와 회귀테스트를 수행하기 위한 테스트 수행환경정보는 서로 동일하다는 전제가 필요한 것이다. 다시 말해, 가상 환경에서 회귀테스트 수행시, 테스트 수행 결과에 영향을 주는 모든 외부 요인들을 고정시켜 제 2 출력값이 제 1 출력값과 다른 것이 원본 소스코드 변경에 의한 것으로 판단하기 위함이다. 이러한 가상 환경에서의 테스트는 사용자에 의한 직접적인 테스트가 아닌, 가상화를 통한 코드 테스트 수행 자동화 장치(1)에 의한 자동 테스트로, 수천번 내지 수만번 반복 테스트를 보다 용이하고 빠르게 수행할 수 있다. 구체적으로, 가상환경데이터획득부(220)는 기 저장된 소정의 입력값을 자동으로 회귀테스트 수행하여, 메모리(300)에 기 저장된 소정의 입력값에 대응하는 제 2 출력값과 제 2 출력값의 정상유무를 판별하는 제 2 정상유무판별값을 획득할 수 있다(S230). 그리고, 상기 제 2 출력값과 제 2 정상유무판별값은 메모리(300)에 저장될 수 있다.Next, the virtual environment data acquisition unit 220 may test the pre-stored predetermined input values in the virtual environment driven by the pre-stored test execution environment information for the code test. Specifically, when the same input value as the input value (test case) in which the confirmation test is performed is given, the second output value in the virtual environment different from the first output value in the real environment is obtained as the original source code change The source code version up), it is necessary to assume that the test execution environment information on which the confirmation test is performed and the test execution environment information for performing the regression test are the same. In other words, when the regression test is performed in the virtual environment, all external factors that affect the test result are fixed to judge that the second output value is different from the first output value due to the change of the original source code. The test in this virtual environment can be carried out more easily and quickly by the automatic test by the automatic code test execution device 1 through virtualization, rather than directly by the user. Specifically, the virtual environment data acquiring unit 220 automatically performs a regression test on previously stored predetermined input values to determine whether the second output value and the second output value corresponding to the predetermined input values previously stored in the memory 300 are normal The second normal presence / absence discrimination value can be obtained (S230). The second output value and the second normal presence / absence discrimination value may be stored in the memory 300.

도 4에 도시한 바와 같이, 가상환경데이터획득부(220)는 제 2 테스트 케이스(TC1a)로, 테스트 수행환경정보(공학용 계산기 어플리케이션에서 SUM함수 구동)에 기초해 회귀 테스트를 수행하여, 실물 환경에서 메모리(300)에 기 저장된 소정의 입력값(1,1)에 대응하는 제 2 출력값(2)과, 제 2 출력값(2)의 정상유무를 판별하는 제 2 정상유무판별값(정상)을 획득하여 저장할 수 있다. 또한, 제 2 테스트 케이스(TC1b)로, 테스트 수행환경정보(공학용 계산기 어플리케이션에서 SUM함수 구동)에 기초해 회귀 테스트를 수행하여, 기 저장된 소정의 입력값(1,1)에 대응하는 제 2 출력값(3)과, 제 2 출력값(3)의 정상유무를 판별하는 제 2 정상유무판별값(비정상)을 획득하여 저장할 수 있다. 또한, 제 2 테스트 케이스(TC2a)로, 테스트 수행환경정보(공학용 계산기 어플리케이션에서 SUM함수 구동)에 기초해 회귀 테스트를 수행하여, 기 저장된 소정의 입력값(1,1)에 대응하는 제 2 출력값(3)과, 제 2 출력값(3)의 정상유무를 판별하는 제 2 정상유무판별값(비정상)을 획득하여 저장할 수 있다. 그리고, 제 2 테스트 케이스(TC2b)로, 테스트 수행환경정보(공학용 계산기 어플리케이션에서 SUM함수 구동)에 기초해 회귀 테스트를 수행하여, 기 저장된 소정의 입력값(1,1)에 대응하는 제 2 출력값(4 또는 2)과, 제 2 출력값(4 또는 2)의 정상유무를 판별하는 제 2 정상유무판별값(확인필요)을 획득하여 저장할 수 있다.4, the virtual environment data acquisition unit 220 performs a regression test on the second test case TC1a based on the test execution environment information (the SUM function in the scientific calculator application) A second output value 2 corresponding to a predetermined input value 1,1 stored in the memory 300 and a second normal presence / absence discrimination value (normal) for discriminating whether the second output value 2 is normal or not Can be acquired and stored. In the second test case TC1b, a regression test is performed based on the test execution environment information (the SUM function is driven in the scientific calculator application) to obtain a second output value (3) for determining whether or not the second output value (3) is normal, and a second normal presence / absence discrimination value (abnormal) for discriminating the normal state of the second output value (3). In the second test case TC2a, the regression test is performed based on the test execution environment information (the SUM function is driven in the scientific calculator application) to obtain the second output value (3) for determining whether or not the second output value (3) is normal, and a second normal presence / absence discrimination value (abnormal) for discriminating the normal state of the second output value (3). In the second test case TC2b, a regression test is performed based on the test execution environment information (the SUM function is driven in the scientific calculator application) to obtain a second output value The second normal presence / absence discrimination value (confirmation required) for discriminating whether the second output value 4 or 2 is normal or not can be acquired and stored.

이어서, 비교판단부(230)는 가상 환경에서의 제 2 출력값을 실물 환경에서의 제 1 출력값과 비교하여, 해당 비교 결과를 출력할 수 있다(S240).Then, the comparison determining unit 230 may compare the second output value in the virtual environment with the first output value in the real environment, and output the comparison result (S240).

구체적으로, 도 3에 도시한 바와 같이, 비교판단부(230)는 저장단계에서 기 저장된 제 1 출력값과 제 1 정상유무판별값을 기초로 제 1 출력값이 정상인지 여부를 판단할 수 있다(S241). 만일, 제 1 출력값이 정상인 것으로 판단한 경우, 제 1 출력값과 제 2 출력값이 서로 동일한지 여부를 판단하며(S242), 동일 여부 판단 결과, 서로 동일한 것으로 판단한 경우, 테스트 통과 메시지를 출력할 수 있으나(S243), 동일 여부 판단 결과, 서로 다른 것으로 판단한 경우, 오류 발생 메시지를 출력할 수 있다(S244). 동일 여부 판단 결과, 서로 다른 것으로 판단한 경우, 원본 소스 코드에 변경이 가해졌음을 의미하므로 이를 나타내는 오류 발생 메시지를 출력하는 것이다.3, the comparison determining unit 230 may determine whether the first output value is normal based on the first output value previously stored and the first normal presence / absence discrimination value in the storing step (S241 ). If it is determined that the first output value is normal, it is determined whether the first output value and the second output value are identical to each other (S242). If it is determined that the first output value and the second output value are identical to each other, S243). If it is determined that they are different from each other, an error occurrence message may be output (S244). If it is determined that they are different from each other as a result of the same determination, it indicates that a change has been made to the original source code.

예를 들어, 실물환경에서의 TC1의 제 1 출력값(2)이 정상인 것으로 판단한 경우, 제 1 출력값(2)과 가상환경에서의 TC1a의 제 2 출력값(2)이 서로 동일한지 여부를 판단하며, TC1a와 같이 서로 동일한 것으로 판단한 경우, 테스트 통과 메시지를 출력할 수 있다. 반면, 제 1 출력값(2)과 가상환경에서의 TC1b의 제 2 출력값(3)이 서로 동일한지 여부를 판단하며, TC1b와 같이 서로 다른 것으로 판단한 경우, 오류 발생 메시지를 출력할 수 있다. TC1b의 경우, 제 1 출력값이 정상인데, 제 2 출력값은 비정상이므로, 가상환경에서의 테스트 수행시 원본 소스코드에 수정이 가해져 오류가 발생함을 나타내는 것으로 판단할 수 있다. For example, when it is determined that the first output value 2 of the TC1 in the real environment is normal, it is determined whether the first output value 2 and the second output value 2 of the TC1a in the virtual environment are equal to each other, TC1a, it is possible to output a test pass message. On the other hand, it is determined whether the first output value (2) and the second output value (3) of the TC1b in the virtual environment are identical to each other. In the case of TC1b, since the first output value is normal and the second output value is abnormal, it can be determined that a correction is made to the original source code when the test is performed in the virtual environment, and an error occurs.

반면, 비교판단부(230)는 저장단계에서 기 저장된 제 1 출력값과 제 1 정상유무판별값을 기초로 제 1 출력값이 정상인지 여부를 판단할 수 있다(S241). 만일, 제 1 출력값이 비정상인 것으로 판단한 경우, 제 1 출력값과 제 2 출력값이 서로 동일한지 여부를 판단하며(S245), 동일 여부 판단 결과, 서로 동일한 것으로 판단한 경우, 오류 미수정 상태 메시지를 출력할 수 있으나(S246), 동일 여부 판단 결과, 서로 다른 것으로 판단한 경우, 외부 객체에 의한 확인이 필요함을 나타내는 확인요청메시지를 출력할 수 있다(S247)On the other hand, the comparison determination unit 230 may determine whether the first output value is normal based on the first output value and the first normal presence / absence determination value stored in the storing step (S241). If it is determined that the first output value is abnormal, it is determined whether the first output value and the second output value are identical to each other (S245). If the first output value and the second output value are identical, (S246). However, if it is determined that they are different from each other as a result of the same determination, a confirmation request message indicating that confirmation by an external object is necessary may be output (S247)

예를 들어, 실물환경에서의 TC2의 제 1 출력값(3)이 비정상인 것으로 판단한 경우, 제 1 출력값(3)과 가상환경에서의 TC2a의 제 2 출력값(3)이 서로 동일한지 여부를 판단하며, TC2a와 같이 서로 동일한 것으로 판단한 경우, 오류 미수정 상태 메시지를 출력할 수 있다. 이 경우는, 확정테스트 수행시 원본 소스코드에 변경이 가해진 이후, 회귀테스트 수행시에도 동일한 원본 소스코드를 이용하므로, 오류 미수정 상태 메시지를 출력하는 것이다. 반면, 제 1 출력값(3)과 가상환경에서의 TC2b의 제 2 출력값(4 또는 2)이 서로 동일한지 여부를 판단하며, TC2b와 같이 서로 다른 것으로 판단한 경우, 외부 객체에 의한 확인이 필요함을 나타내는 확인요청메시지를 출력할 수 있다. 제 1 출력값이 비정상인데, 제 2 출력값이 제 1 출력값과 서로 다르다면, 이는 오류가 발생한 제 1 출력값에 대해 원본 소스코드상에 또 다른 수정이 가해졌다는 의미이므로, 이 경우, 외부 객체(예> 사람)에 의한 확인이 필요함을 나타낸다. 즉, S244단계의 경우 확정테스트 수행시에는 소스코드가 변경되지 않았으나, 회귀테스트 수행시에는 소스코드가 변경되었으므로, 소스코드 변경은 한번만 이루어져 오류 메시지를 출력한다. 이와 비교하여, S247단계의 경우, 확정테스트 수행시에도 소스코드 변경이 한번 이루어진 상태에서, 회귀테스트 수행시에 소스코드 변경이 다시 이루어진 것이므로, 확인요청메시지를 출력하는 것이다. For example, when it is determined that the first output value 3 of the TC2 in the real environment is abnormal, it is determined whether the first output value 3 and the second output value 3 of the TC2a in the virtual environment are equal to each other , And TC2a, it is possible to output an error unfixed status message. In this case, since the same original source code is used when the regression test is performed after the change of the original source code is performed during the confirmation test, the error unfixed status message is output. On the other hand, it is determined whether the first output value 3 and the second output value 4 or 2 of the TC2b in the virtual environment are identical to each other. If it is determined that the first output value 3 is different from TC2b, A confirmation request message may be output. If the first output value is abnormal and the second output value is different from the first output value, this means that another modification has been made to the original source code with respect to the first output value in which the error occurred. In this case, Person) needs to be confirmed. That is, in the step S244, since the source code has not been changed at the time of performing the confirmation test but the source code has been changed at the time of performing the regression test, the source code change is performed only once and an error message is output. In contrast, in the case of step S247, since the source code is changed again when the regression test is performed while the source code is once changed even when the confirmation test is performed, the confirmation request message is output.

이러한 회귀 테스트 수행은, 코드의 버전이 변경될 때마다 주기적으로 자동 수행될 수 있다.This regression test execution can be performed periodically automatically whenever the version of the code is changed.

이상 설명된 실시 형태는 다양한 컴퓨터 구성요소를 통하여 실행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터로 판독가능한 기록매체에 기록될 수 있다. 상기 컴퓨터로 판독가능한 기록매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. The embodiments described above can be implemented in the form of program instructions that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include program commands, data files, data structures, and the like, alone or in combination.

상기 컴퓨터로 판독가능한 기록매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.The program instructions recorded on the computer-readable recording medium may be those specially designed and constructed for the present invention or may be those known to those skilled in the art of computer software.

컴퓨터로 판독가능한 기록매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 실행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of the computer-readable recording medium include magnetic media such as a hard disk, a floppy disk and a magnetic tape, optical recording media such as CD-ROM and DVD, magneto-optical media such as a floptical disk, optical media), and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules for performing the process according to the present invention, and vice versa.

본 명세서의 양상들은 전체적으로 하드웨어, 전체적으로 소프트웨어 (펌웨어, 상주 소프트웨어, 마이크로 코드 등을 포함 함) 또는 컴퓨터 판독 가능 프로그램 코드가 구현 된 하나 이상의 컴퓨터 판독 가능 매체에 구현 된 컴퓨터 프로그램 제품의 형태를 취할 수 있다.Aspects of the present disclosure may take the form of a whole, hardware, a computer program product embodied in one or more computer readable media having software (including firmware, resident software, microcode, etc.) or computer readable program code embodied throughout .

이상에서 실시예들에 설명된 특징, 구조, 효과 등은 본 발명의 하나의 실시예에 포함되며, 반드시 하나의 실시예에만 한정되는 것은 아니다. 나아가, 각 실시예에서 예시된 특징, 구조, 효과 등은 실시예들이 속하는 분야의 통상의 지식을 가지는 자에 의해 다른 실시예들에 대해서도 조합 또는 변형되어 실시 가능하다. 따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.The features, structures, effects and the like described in the embodiments are included in one embodiment of the present invention and are not necessarily limited to only one embodiment. Furthermore, the features, structures, effects and the like illustrated in the embodiments can be combined and modified by other persons skilled in the art to which the embodiments belong. Therefore, it should be understood that the present invention is not limited to these combinations and modifications.

또한, 이상에서 실시예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is clearly understood that the same is by way of illustration and example only and is not to be taken by way of illustration, It can be seen that various modifications and applications are possible. For example, each component specifically shown in the embodiments can be modified and implemented. It is to be understood that all changes and modifications that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.

Claims (8)

소스코드 테스트를 위한 실물 환경에서, 소정의 입력값을 테스트 수행환경정보에 기초해 확정테스트를 수행하여, 상기 소정의 입력값에 대응하는 제 1 출력값과 상기 제 1 출력값의 정상유무를 판별하는 제 1 정상유무판별값을 획득하는 단계;
상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값을 저장하는 단계;
코드 테스트를 위하여 상기 기 저장된 테스트 수행환경정보로 구동되는 가상 환경에서, 상기 기 저장된 소정의 입력값을 회귀테스트 수행하여, 상기 저장된 소정의 입력값에 대응하는 제 2 출력값과 상기 제 2 출력값의 정상유무를 판별하는 제 2 정상유무판별값을 획득하는 단계; 및
가상 환경에서의 상기 제 2 출력값을 실물 환경에서의 상기 제 1 출력값과 비교하여, 해당 비교 결과를 출력하는 단계; 를 포함하는, 가상화를 통한 코드 테스트 수행 자동화 방법.
A test method for performing a confirm test on a predetermined input value based on test execution environment information in a real environment for a source code test to determine whether a first output value corresponding to the predetermined input value and whether the first output value is normal or not 1 normal presence / absence discrimination value;
Storing the predetermined input value, the test execution environment information, the first output value, and the first normal presence / absence discrimination value;
And a second output value corresponding to the stored predetermined input value and a second output value corresponding to the normal value of the second output value in a virtual environment driven by the pre- Obtaining a second normal presence / absence discrimination value for discriminating presence or absence of the second normal presence / absence discrimination value; And
Comparing the second output value in a virtual environment with the first output value in a real environment and outputting the comparison result; A method for automating code test execution through virtualization.
제 1항에 있어서,
상기 해당 비교 결과 출력단계는,
상기 저장단계에서 기 저장된 상기 제 1 출력값과 상기 제 1 정상유무판별값을 기초로 상기 제 1 출력값이 정상인지 여부를 판단하는 단계;
상기 제 1 출력값이 정상인 것으로 판단한 경우, 상기 제 1 출력값과 상기 제 2 출력값이 서로 동일한지 여부를 판단하는 단계;
상기 동일 여부 판단 결과, 서로 동일한 것으로 판단한 경우, 통과 메시지를 출력하는 단계; 및
상기 동일 여부 판단 결과, 서로 다른 것으로 판단한 경우, 오류 메시지를 출력하는 단계;를 포함하는,
가상화를 통한 코드 테스트 수행 자동화 방법.
The method according to claim 1,
The comparison result output step may include:
Determining whether the first output value is normal based on the first output value previously stored in the storing step and the first normal presence / absence discrimination value;
Determining whether the first output value and the second output value are equal to each other if the first output value is determined to be normal;
Outputting a pass message when it is determined that they are identical to each other; And
And outputting an error message if the result of the determination is that they are different from each other.
How to automate code testing through virtualization.
제 1항에 있어서,
상기 해당 비교 결과 출력단계는,
상기 저장단계에서 기 저장된 상기 제 1 출력값과 상기 제 1 정상유무판별값을 기초로 상기 제 1 출력값이 정상인지 여부를 판단하는 단계;
상기 제 1 출력값이 비정상인 것으로 판단한 경우, 상기 제 1 출력값과 상기 제 2 출력값이 서로 동일한지 여부를 판단하는 단계;
상기 동일 여부 판단 결과, 서로 동일한 것으로 판단한 경우, 오류 메시지를 출력하는 단계; 및
상기 동일 여부 판단 결과, 서로 다른 것으로 판단한 경우, 외부 객체에 의한 확인이 필요함을 나타내는 확인요청메시지를 출력하는 단계;를 포함하는,
가상화를 통한 코드 테스트 수행 자동화 방법.
The method according to claim 1,
The comparison result output step may include:
Determining whether the first output value is normal based on the first output value previously stored in the storing step and the first normal presence / absence discrimination value;
Determining whether the first output value and the second output value are identical to each other if the first output value is determined to be abnormal;
Outputting an error message when it is determined that they are identical to each other; And
And outputting an acknowledgment request message indicating that an acknowledgment by an external object is necessary if the result of the determination is the same.
How to automate code testing through virtualization.
제 3항에 있어서,
상기 확인요청메시지 출력단계는,
상기 가상 환경에서 상기 회귀테스트 수행시, 상기 회귀테스트 수행대상이 되는 상기 소스코드에 수정이 가해진 것으로 판단하는 단계;를 포함하는,
가상화를 통한 코드 테스트 수행 자동화 방법.
The method of claim 3,
Wherein the step of outputting the confirmation request message comprises:
And determining that modification is applied to the source code to be subjected to the regression test when the regression test is performed in the virtual environment.
How to automate code testing through virtualization.
제 1항에 있어서,
상기 회귀 테스트 수행은,
상기 소스코드의 버전이 변경될 때마다 주기적으로 자동 수행되는,
가상화를 통한 코드 테스트 수행 자동화 방법.
The method according to claim 1,
In the regression test,
Wherein the source code is automatically performed every time the version of the source code is changed,
How to automate code testing through virtualization.
제 1항에 있어서,
상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값은 상기 소스코드 테스트를 수행하는 장치에 저장되거나, 별도의 외부 장치에 저장되는,
가상화를 통한 코드 테스트 수행 자동화 방법.
The method according to claim 1,
Wherein the predetermined input value, the test execution environment information, the first output value, and the first normal presence / absence discrimination value are stored in an apparatus for performing the source code test,
How to automate code testing through virtualization.
제 1항 내지 제 6항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체.
A computer-readable recording medium for recording a computer program for executing the method according to any one of claims 1 to 6.
소스코드 테스트를 위한 실물 환경에서, 소정의 입력값을 테스트 수행환경정보에 기초해 확정테스트를 수행하여, 상기 소정의 입력값에 대응하는 제 1 출력값과 상기 제 1 출력값의 정상유무를 판별하는 제 1 정상유무판별값을 획득하는 실물환경데이터획득부;
상기 소정의 입력값, 상기 테스트 수행환경정보, 상기 제 1 출력값, 및 상기 제 1 정상유무판별값을 저장하는 메모리부;
코드 테스트를 위하여 상기 저장된 테스트 수행환경정보로 구동되는 가상 환경에서, 상기 메모리부에 기 저장된 소정의 입력값을 회귀테스트 수행하여, 상기 저장된 소정의 입력값에 대응하는 제 2 출력값과 상기 제 2 출력값의 정상유무를 판별하는 제 2 정상유무판별값을 획득하는 가상환경데이터획득부; 및
가상 환경에서의 상기 제 2 출력값을 실물 환경에서의 상기 제 1 출력값과 비교하여, 해당 비교 결과를 출력하는 비교판단부;를 포함하는, 가상화를 통한 코드 테스트 수행 자동화 장치.
A test method for performing a confirm test on a predetermined input value based on test execution environment information in a real environment for a source code test to determine whether a first output value corresponding to the predetermined input value and whether the first output value is normal or not 1 < / RTI > normal presence / absence discrimination value;
A memory unit for storing the predetermined input value, the test execution environment information, the first output value, and the first normal presence / absence discrimination value;
In a virtual environment driven by the stored test execution environment information for a code test, a predetermined input value previously stored in the memory unit is subjected to a regression test, and a second output value corresponding to the stored predetermined input value and the second output value A virtual environment data acquiring unit for acquiring a second normal presence / absence discrimination value for discriminating whether or not there is a normal state; And
And a comparison determination unit for comparing the second output value in a virtual environment with the first output value in a real environment and outputting the comparison result.
KR1020170173472A 2017-12-15 2017-12-15 Code test automatic proceeding method through virtualixation and appratus for the same KR102002545B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170173472A KR102002545B1 (en) 2017-12-15 2017-12-15 Code test automatic proceeding method through virtualixation and appratus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170173472A KR102002545B1 (en) 2017-12-15 2017-12-15 Code test automatic proceeding method through virtualixation and appratus for the same

Publications (2)

Publication Number Publication Date
KR20190072253A KR20190072253A (en) 2019-06-25
KR102002545B1 true KR102002545B1 (en) 2019-07-22

Family

ID=67065400

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170173472A KR102002545B1 (en) 2017-12-15 2017-12-15 Code test automatic proceeding method through virtualixation and appratus for the same

Country Status (1)

Country Link
KR (1) KR102002545B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210100240A (en) * 2020-02-05 2021-08-17 한국전자통신연구원 Emulating environment detecting method unaffected by context switching using cache characteristic of havard architecture and system using the same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015511737A (en) 2012-02-27 2015-04-20 クゥアルコム・インコーポレイテッドQualcomm Incorporated Application validation for graphics processing units

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102013582B1 (en) * 2012-09-07 2019-08-23 삼성전자 주식회사 Apparatus and method for detecting error and determining corresponding position in source code of mixed mode application program source code thereof
JP6496562B2 (en) * 2014-04-11 2019-04-03 ルネサスエレクトロニクス株式会社 Semiconductor device, diagnostic test method and diagnostic test circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015511737A (en) 2012-02-27 2015-04-20 クゥアルコム・インコーポレイテッドQualcomm Incorporated Application validation for graphics processing units

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210100240A (en) * 2020-02-05 2021-08-17 한국전자통신연구원 Emulating environment detecting method unaffected by context switching using cache characteristic of havard architecture and system using the same
KR102319115B1 (en) 2020-02-05 2021-11-01 한국전자통신연구원 Emulating environment detecting method unaffected by context switching using cache characteristic of havard architecture and system using the same

Also Published As

Publication number Publication date
KR20190072253A (en) 2019-06-25

Similar Documents

Publication Publication Date Title
US9715441B2 (en) Risk-based test coverage and prioritization
US10019256B2 (en) Systems and methods for incremental software development
US9378124B1 (en) Software testing optimizer
US10885201B2 (en) Apparatus for quantifying security of open-source software package, and apparatus and method for optimizing open-source software package
US20140380279A1 (en) Prioritizing test cases using multiple variables
WO2018175496A9 (en) Code defect prediction by training a system to identify defect patterns in code history
US20150317234A1 (en) System, method, apparatus and computer program for automatic evaluation of user interfaces in software programs
CN110674047B (en) Software testing method and device and electronic equipment
US9513889B2 (en) System and method of automating installation of applications
KR102002545B1 (en) Code test automatic proceeding method through virtualixation and appratus for the same
EP3321808B1 (en) Verification system and verification method
CN114647572A (en) Method and system for software application component testing
CN109684205B (en) System testing method, device, electronic equipment and storage medium
US9348733B1 (en) Method and system for coverage determination
KR20120111618A (en) Apparatus and method for testing plc command
JP6747161B2 (en) Software quality judgment method
JP6320269B2 (en) Software test support apparatus and software test support program
US10545858B2 (en) Method for testing a graphical interface and corresponding test system
KR101999321B1 (en) Program test system and test method using the same
CN111143229A (en) Software testing method and device, computer equipment and computer readable storage medium
WO2019142266A1 (en) Test case generation device, test case generation method, and test case generation program
CN111258910B (en) Static link library function verification method and device, electronic equipment and storage medium
JP6890795B1 (en) Programs, methods, information processing equipment, and systems
CN117851265A (en) Test method, test device, electronic equipment and storage medium
KR102015344B1 (en) Device and method for configuring monitoring environment of application

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