KR101826618B1 - Method and apparatus for generating test case, computer readable recording medium - Google Patents
Method and apparatus for generating test case, computer readable recording medium Download PDFInfo
- Publication number
- KR101826618B1 KR101826618B1 KR1020160098504A KR20160098504A KR101826618B1 KR 101826618 B1 KR101826618 B1 KR 101826618B1 KR 1020160098504 A KR1020160098504 A KR 1020160098504A KR 20160098504 A KR20160098504 A KR 20160098504A KR 101826618 B1 KR101826618 B1 KR 101826618B1
- Authority
- KR
- South Korea
- Prior art keywords
- cause
- specification file
- item
- items
- user
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
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
Description
본 발명은, 소프트웨어 검증을 위한 테스트 케이스의 생성 방법 및 장치에 관한 것이며, 보다 구체적으로는 소프트웨어 명세서의 변경 발생에 동적으로 적응할 수 있는 테스트 케이스의 자동 생성 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for generating a test case for software verification, and more particularly, to a method and apparatus for automatically generating a test case that can dynamically adapt to a change in a software specification.
소프트웨어에 오류가 있는지를 검토하고 해당 소프트웨어가 요구 사항에 부합하도록 동작하는지를 검증하기 위해서, 통상적으로, 하나 이상의 테스트 케이스를 설계하고 그 설계된 테스트 케이스에 따라 해당 소프트웨어에 대한 테스트를 실행하며 실행의 결과물을 토대로 해당 소프트웨어에 대한 필요한 수정을 행하는 방법이 이용되고 있다. 따라서, 테스트 케이스를 얼마나 효율적으로 설계할 수 있는지는 소프트웨어의 검증에 있어서 매우 중요한 문제가 된다.To review the software for errors and verify that the software works to meet the requirements, you typically design one or more test cases, run tests on the software in accordance with the designed test cases, A method of making necessary modifications to the software is used. Therefore, how efficiently a test case can be designed is a very important issue in software verification.
이와 관련하여, 종래에는 각 테스트 케이스의 설계 및 생성이 테스트 설계자의 수작업에 의해 주로 행하여져 왔는데, 이러한 경우 테스트 케이스의 작성에 많은 시간과 노력이 소요되는 문제가 있고 아울러 작성된 테스트 케이스의 적절성도 보증하기 어려운 문제가 있었다. In this regard, conventionally, the design and generation of each test case has mainly been performed manually by the test designer. In such a case, there is a problem that it takes much time and effort to prepare the test case. In addition, There was a difficult problem.
또한, 이러한 문제를 해결하기 하여, 대한민국 등록특허 제10-1554424호에서는, 테스트할 소프트웨어의 명세서에 포함된 문장들 및 단어들로부터 원인 항목들과 결과 항목들을 획득하여 원인/결과 테이블을 생성하고, 생성된 원인/결과 테이블에 대응하는 인과 그래프를 생성하며, 인과 그래프를 테스트 시나리오로 변환하여 그에 기초한 테스트 케이스를 제공하는, 테스트 케이스의 생성 자동화에 관한 기술이 제안된 바 있다. 그러나, 등록특허 제10-1554424호에 의하더라도, 소프트웨어의 명세서 상에 수정 변경이 발생하는 경우에는, 그에 따라 원인/결과 테이블을 처음부터 새로이 작성해야 하거나 소프트웨어 개발 보수자나 검증자 등이 명세서의 각각의 수정 변경 사항을 수동으로 취득하고 이를 원인/결과 테이블에 수동으로 반영하여야 하는 문제는 여전히 남아 있다. 소프트웨어의 검증 또는 유지 보수 과정에서 수 차례 수정 변경은 불가피하다는 점을 고려할 때, 이러한 문제는 소프트웨어의 개발 보수자나 검증자 등에게 큰 어려움이 되고 있다. In order to solve such a problem, in Korean Patent No. 10-1554424, a cause / result table is generated by obtaining cause items and result items from sentences and words included in the specification of software to be tested, A technique has been proposed for generating a test case corresponding to a generated cause / result table, converting a causal graph into a test scenario, and providing a test case based on the causal graph. However, even in the case of Patent No. 10-1554424, in the case where a modification is made in the specification of the software, it is necessary to newly create a cause / result table from the beginning, or a software development maintainer or a verifier The problem of manually obtaining changes and manually reflecting them in the cause / effect table still remains. Considering that revision changes are inevitable several times during the verification or maintenance of the software, this problem becomes a big difficulty for software development maintainers and verifiers.
따라서, 소프트웨어의 검증을 위한 테스트 케이스의 생성을 자동화하고, 특히 소프트웨어의 명세서에 수정 변경이 발생하는 경우에도, 소프트웨어의 검증자 등이 명세서의 수정 변경 사항을 일일이 확인할 필요 없이, 그러한 수정 변경 사항이 테스트 케이스의 생성에 자동으로 반영되도록 할 수 있는, 효율적인 테스트 케이스의 생성 자동화 방법 및 장치 등이 필요로 된다.Therefore, it is possible to automate the creation of test cases for verification of the software, and even if the software's verifier does not need to verify the revision changes in the specification, An efficient method and apparatus for generating a test case that can be automatically reflected in the generation of a test case is required.
본 발명의 일 특징에 의하면, 소프트웨어 검증을 위한 테스트 케이스 생성 방법이 제공된다. 본 발명의 방법은, 소프트웨어의 제1 명세서 파일을 판독하는 단계; 제1 명세서 파일로부터 하나 이상의 항목을 획득하는 단계; 제1 명세서 파일의 하나 이상의 항목 각각이 소정의 태그 정보를 포함하도록 변경하는 단계; 사용자 제어 입력에 기초하여, 하나 이상의 항목 각각에 대해, 각각의 항목을 원인 항목 또는 결과 항목으로 설정하는 단계; 설정에 기초하여, 하나 이상의 항목에 대한 원인/결과 테이블을 생성 및 저장하는 단계; 및 원인/결과 테이블에 기초하여 테스트 케이스를 생성하는 단계를 포함할 수 있다.According to one aspect of the present invention, a method of generating a test case for software verification is provided. The method includes reading a first specification file of software; Obtaining one or more items from a first specification file; Changing each of the one or more items of the first specification file to include predetermined tag information; Setting, for each of the one or more items, a respective item as a cause item or a result item based on the user control input; Generating and storing a cause / effect table for one or more items based on the setting; And generating a test case based on the cause / result table.
본 발명의 일 실시예에 의하면, 원인/결과 테이블을 저장한 이후에, 소프트웨어의 제2 명세서 파일이 판독될 수 있다. 제2 명세서 파일은, 제1 명세서 파일의 하나 이상의 항목 중 적어도 하나의 항목을 변경하여 생성된 것일 수 있다. 또한, 방법은, 제2 명세서 파일로부터, 태그 정보를 포함하는 적어도 하나의 항목을 획득하는 단계; 원인/결과 테이블을 검색하는 단계; 및 제2 명세서 파일로부터 획득된 적어도 하나의 항목과 원인/결과 테이블의 대응하는 항목을 비교하여, 적어도 하나의 항목 중에서 원인/결과 테이블의 생성 이후에 변경이 발생한 항목과 변경 내용을 식별하는 단계를 더 포함할 수 있다.According to one embodiment of the present invention, after storing the cause / effect table, the second specification file of the software can be read. The second specification file may be generated by modifying at least one item of one or more items of the first specification file. The method also includes obtaining from the second specification file at least one item comprising tag information; Retrieving a cause / effect table; And comparing the at least one item obtained from the second specification file with the corresponding item in the cause / effect table to identify the item and the change at which the change occurred after creation of the cause / effect table among at least one item .
본 발명의 일 실시예에 의하면, 방법은, 제2 명세서 파일을 사용자 디스플레이 장치에 표시하는 단계; 및 원인/결과 테이블을 사용자 디스플레이 장치에 표시하는 단계를 더 포함할 수 있다. 원인/결과 테이블을 사용자 디스플레이 장치에 표시하는 단계는, 식별된 항목과 변경 내용을 사용자 디스플레이 장치에 표시하는 단계를 포함할 수 있다.According to an embodiment of the present invention, a method includes displaying a second specification file on a user display device; And displaying the cause / effect table on the user display device. The step of displaying the cause / effect table on the user display device may include displaying the identified item and the change on the user display device.
본 발명의 일 실시예에 의하면, 식별된 항목과 변경 내용을 표시하는 단계는, 변경 내용의 반영에 관한 사용자 제어 입력을 수신하기 위한 사용자 인터페이스를 제공하는 단계를 포함할 수 있다.According to one embodiment of the present invention, the step of displaying the identified item and the change may comprise providing a user interface for receiving a user-controlled input regarding the reflection of the change.
본 발명의 일 실시예에 의하면, 방법은, 사용자 인터페이스를 통해 입력된 사용자 제어 입력에 기초하여, 원인/결과 테이블을 수정 및 저장하는 단계; 및 수정된 원인/결과 테이블에 기초하여 새로운 테스트 케이스를 생성하는 단계를 더 포함할 수 있다.According to one embodiment of the present invention, a method includes: modifying and storing a cause / effect table based on a user control input entered via a user interface; And generating a new test case based on the modified cause / result table.
본 발명의 일 실시예에 의하면, 소정의 태그 정보는, 하나 이상의 항목 각각에 대해, 각 항목에 대응하는 식별 정보를 포함할 수 있다.According to one embodiment of the present invention, the predetermined tag information may include identification information corresponding to each item for each of the one or more items.
본 발명의 일 실시예에 의하면, 방법은 제1 명세서 파일을 사용자 디스플레이 장치에 표시하는 단계; 및 사용자 인터페이스를 사용자 디스플레이 장치에 표시하는 단계를 더 포함할 수 있다. 제1 명세서 파일로부터 하나 이상의 항목을 획득하는 단계는 사용자 인터페이스를 통해 하나 이상의 항목을 획득하는 단계를 포함할 수 있다.According to one embodiment of the present invention, a method includes displaying a first specification file on a user display device; And displaying the user interface on the user display device. Obtaining one or more items from the first specification file may include obtaining one or more items via a user interface.
본 발명의 일 실시예에 의하면, 방법은 사용자 인터페이스를 통해 사용자 제어 입력을 수신하는 단계를 더 포함할 수 있다.According to an embodiment of the present invention, the method may further comprise receiving a user control input via a user interface.
본 발명의 일 실시예에 의하면, 방법은 하나 이상의 항목에 대한 원인/결과 테이블을 사용자 디스플레이 장치에 표시하는 단계를 더 포함할 수 있다.According to one embodiment of the present invention, the method may further comprise displaying a cause / effect table for one or more items on a user display device.
본 발명의 일 실시예에 의하면, 하나 이상의 항목 각각은, 각각의 대응하는 문장 또는 단어를 포함할 수 있다.According to one embodiment of the present invention, each of the one or more items may comprise a respective corresponding sentence or word.
본 발명의 일 실시예에 의하면, 제1 명세서 파일의 하나 이상의 항목 각각이 소정의 태그 정보를 포함하도록 변경하는 단계는, 하나 이상의 항목 각각의 각 대응하는 문장 또는 단어에 대해 태그 정보를 삽입하는 단계를 포함할 수 있다.According to one embodiment of the present invention, the step of modifying each of the one or more items of the first specification file to include predetermined tag information includes inserting tag information for each corresponding sentence or word of each of the one or more items, . ≪ / RTI >
본 발명의 일 실시예에 의하면, 테스트 케이스를 생성하는 단계는, 원인/결과 테이블에 기초하여 인과 그래프를 생성하는 단계; 및 인과 그래프에 기초하여 테스트 케이스를 생성하는 단계를 포함할 수 있다.According to one embodiment of the present invention, the step of generating a test case comprises the steps of: generating a causal graph based on a cause / effect table; And generating a test case based on the causal graph.
본 발명의 다른 특징에 의하면, 하나 이상의 명령어를 수록한 컴퓨터 판독가능 기록매체로서, 하나 이상의 명령어는 컴퓨터에 의해 실행되는 경우 컴퓨터로 하여금, 전술한 방법들 중 어느 하나의 방법을 수행하도록 하는, 컴퓨터 판독가능 기록매체가 제공된다.According to another aspect of the present invention there is provided a computer readable medium having stored thereon one or more instructions for causing a computer to perform any one of the methods described above, A readable recording medium is provided.
본 발명의 또 다른 특징에 의하면, 컴퓨터 장치로서, 사용자 디스플레이 장치; 메모리; 및 프로세서를 포함하고, 프로세서는, 전술한 방법들 중 어느 하나의 방법을 수행하는, 컴퓨터 장치가 제공된다.According to another aspect of the present invention, there is provided a computer apparatus comprising: a user display device; Memory; And a processor, wherein the processor performs any one of the methods described above.
본 발명에 의하면, 소프트웨어의 명세서에 수정 변경이 발생하는 경우에도, 검증자 등이 명세서의 수정 변경 사항을 일일이 확인할 필요 없이 그러한 수정 변경 사항이 테스트 케이스의 생성에 자동으로 반영되도록 할 수 있는, 효율적인 테스트 케이스의 생성 자동화 방법 및 장치 등이 제공될 수 있다. 그러므로, 본 발명에 의하면, 소프트웨어의 검증에 있어서, 검증자 등의 개입을 최소화하여 검증에 소요되는 시간 및 비용을 크게 감소시킬 수 있다. 또한, 본 발명에 의하면, 테스트 케이스의 생성이 객관적 기준에 따라 자동으로 수행되므로, 종래 검증자의 임의 방식에 따르는 경우에 비해, 보다 적절한 테스트 케이스의 생성을 기대할 수 있다.According to the present invention, even if a modification is made in the specification of the software, it is possible to provide an efficient, efficient, and cost-effective method for allowing a verifier to automatically reflect the modification change in the creation of a test case, A method and apparatus for automatic generation of a test case may be provided. Therefore, according to the present invention, it is possible to greatly reduce the time and cost required for verification by minimizing the intervention of a verifier or the like in software verification. Further, according to the present invention, generation of a test case is automatically performed in accordance with an objective criterion, so that generation of a more appropriate test case can be expected as compared with the case of conforming to a conventional method of a verifier.
도 1은, 본 발명의 일 실시예에 따른, 소프트웨어 검증을 위한 테스트 케이스 생성 장치(100)의 기능을 개략적으로 도시한 기능 블록도이다.
도 2는, 본 발명의 일 실시예에 따른, 원인/결과 테이블의 생성 또는 갱신 동작을 보여주는 동작 흐름도이다.
도 3은, 도 1의 동작 제어부(104)의 기능을 자세히 설명하기 위한 기능 블록도이다.
도 4는, 본 발명의 일 실시예에 따른, 명세서 파일 표시와 그로부터 생성된 원인/결과 테이블 표시의 예를 도시한 도면이다.
도 5는, 본 발명의 일 실시예에 따라, 명세서 파일에 변경이 발생한 경우, 그러한 변경에 대응하여 갱신되는 과정 중에 있는 원인/결과 테이블의 표시를 보여주는 도면이다.1 is a functional block diagram schematically illustrating the function of a test
2 is an operational flow diagram illustrating generation / update operations of a cause / effect table, in accordance with an embodiment of the present invention.
FIG. 3 is a functional block diagram for explaining the functions of the
4 is a diagram illustrating an example of a specification file display and cause / effect table display generated therefrom, in accordance with an embodiment of the present invention.
5 is a diagram showing an indication of a cause / effect table in the process of being updated in response to a change in a specification file in accordance with an embodiment of the present invention.
이하, 첨부 도면을 참조하여 본 발명의 실시예에 관하여 상세히 설명한다. 이하에서는, 본 발명의 요지를 불필요하게 흐릴 우려가 있다고 판단되는 경우, 이미 공지된 기능 및 구성에 관한 구체적인 설명을 생략한다. 또한, 이하에서 설명하는 내용은 어디까지나 본 발명의 일 실시예에 관한 것일 뿐 본 발명이 이로써 제한되는 것은 아님을 알아야 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Hereinafter, when it is determined that there is a possibility that the gist of the present invention may be unnecessarily blurred, a detailed description of known functions and configurations will be omitted. In addition, it should be understood that the following description is only an embodiment of the present invention, and the present invention is not limited thereto.
본 명세서에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 발명을 한정하려는 의도에서 사용된 것이 아니다. 예를 들면, 단수로 표현된 구성요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성요소를 포함하는 개념으로 이해되어야 한다. 또한, 본 발명의 명세서에서, '포함하다' 또는 '가지다' 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하려는 것은 아니다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present invention. For example, an element expressed in singular < Desc / Clms Page number 5 > terms should be understood as including a plurality of elements unless the context clearly dictates a singular value. In addition, in the specification of the present invention, it is to be understood that terms such as "include" or "have" are intended to specify the presence of stated features, integers, steps, operations, components, It is not intended that the use of the term exclude the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
본 명세서에 기재된 실시예에 있어서 '블록' 또는 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '블록' 또는 '부'는, 특정한 하드웨어로 구현될 필요가 있는 '블록' 또는 '부'를 제외하고는, 적어도 하나의 소프트웨어 모듈로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.As used herein, the term " block " or " part " means a functional part that performs at least one function or operation, and may be implemented in hardware or software or a combination of hardware and software. Also, a plurality of 'blocks' or 'sub-units' may be embodied in at least one processor integrated with at least one software module, except for 'blocks' or 'sub-units' that need to be implemented in specific hardware .
덧붙여, 달리 정의되지 않는 한 기술적 또는 과학적인 용어를 포함하여, 본 명세서에서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의된 용어들은, 관련 기술의 문맥상 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 발명의 명세서에서 명백하게 달리 정의하지 않는 한 과도하게 제한 또는 확장하여 해석되지 않는다는 점을 알아야 한다.In addition, all terms used herein, including technical or scientific terms, unless otherwise defined, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Commonly used predefined terms are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are not to be construed as being excessively limited or extended unless explicitly defined otherwise in the specification of the present invention You should know.
이하, 첨부된 도면을 참조하여, 본 발명의 실시예에 대해 구체적으로 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은, 본 발명의 일 실시예에 따른, 소프트웨어 검증을 위한 테스트 케이스 생성 장치(100)의 기능을 개략적으로 도시한 기능 블록도이다. 도시된 바에 위하면, 테스트 케이스 생성 장치(100)는 명세서 판독/수정부(102)와, 동작 제어부(104)와, 사용자 데이터 입출력부(106)와, 데이터베이스(108)를 포함한다.1 is a functional block diagram schematically illustrating the function of a test
본 발명의 일 실시예에 의하면, 명세서 판독/수정부(102)는, 외부 또는 내부 메모리로부터 검증 대상이 되는 소프트웨어의 명세서 파일을 판독할 수 있다. 명세서 파일은 다양한 형식의 문서 파일일 수 있는데, 예컨대 .docx, .xlsx 등의 확장자를 갖는 오픈 XML 형식의 문서 파일일 수 있으며, 다만 본 발명이 이로써 제한되는 것은 아니다. 명세서 파일은, 검증하고자 하는 소프트웨어의 구조 및 동작 특징을 기술한 베이스 명세서로서, 예컨대 해당 소프트웨어의 작성 언어, 문법, 해당 소프트웨어의 기능을 설명하는 부분, 이용되는 파라미터들의 이름, 타입 및 기능 설명, 에러 발생 조건 등을 비롯한 각종 정보를 문장 또는 단어들로서 기술한 것일 수 있다. 명세서 파일에 포함된 문장 또는 단어들에는 해당 소프트웨어의 기능과 관련하여 원인에 해당하는 항목(이하, 원인 항목)들과 그 원인에 대응하여 파생하는 결과에 해당하는 항목(이하, 결과 항목)들이 포함될 수 있다. According to one embodiment of the present invention, the specification reading / correcting
본 발명의 일 실시예에 의하면, 명세서 판독/수정부(102)에 의해 판독되는 명세서 파일은 신규 명세서 파일이거나 변경 명세서 파일일 수 있다. 본 명세서에서, 신규 명세서 파일이라 함은, 해당 명세서 파일이 본 발명의 테스트 케이스 생성 장치에 의해 처리된 적이 없는 새로운 명세서로서, 예컨대 해당 명세서 파일에 후술하는 태그 정보가 포함된 항목이 존재하지 않거나 해당 명세서 파일에 관련된 원인/결과 테이블이 데이터베이스(108)에 존재하지 않는 경우의 명세서 파일을 의미한다. 본 명세서에서, 변경 명세서 파일이라 함은, 관련 명세서 파일이 본 발명의 테스트 케이스 생성 장치에 의해 이전에 처리된 적이 있고 이후 그 명세서 파일의 일부 항목에 변경이 발생한 경우로서, 예컨대 해당 명세서 파일에 태그 정보가 포함된 항목이 이미 존재하고 있거나 해당 명세서 파일에 관련된 원인/결과 테이블이 데이터베이스(108)에 이미 존재하고 있는 경우의 명세서 파일을 의미한다. 본 발명의 일 실시예에 의하면, 명세서 파일은 테스트 케이스 생성 장치(100)의 내부 또는 외부 메모리(도시되지 않음)로부터 판독될 수 있다. According to one embodiment of the present invention, the specification file read by the specification reader /
본 발명의 일 실시예에 의하면, 동작 제어부(104)는 명세서 판독/수정부(102), 사용자 데이터 입출력부(106), 및 데이터베이스(108)와 통신 가능하게 접속될 수 있다. 동작 제어부(104)는, 명세서 판독/수정부(102)에 의해 판독된 명세서 파일에 관한 정보를 수신하고, 수신된 정보를 사용자 데이터 입출력부(106)를 통해 출력하여 사용자에게 제시할 수 있다. 동작 제어부(104)는 또한 사용자 데이터 입출력부(106)를 통한 사용자와의 인터랙션을 통해 해당 명세서 파일에 관한 원인/결과 테이블을 새로이 생성 또는 갱신할 수 있다. 동작 제어부(104)는 또한 데이터베이스(108)와 통신하여, 판독된 명세서 파일에 관련된 테이블이 데이터베이스(108)에 저장되어 있는지를 판정하고, 관련된 테이블이 있다면 그 테이블에 관한 정보를 판독할 수 있고, 새로이 생성 또는 갱신되는 원인/결과 테이블을 데이터베이스(108)에 저장할 수 있다. 동작 제어부(104)는 또한 생성 또는 갱신된 원인/결과 테이블에 기초하여 인과 그래프를 생성하고, 그에 따라 해당 소프트웨어를 검증하기 위한 테스트 케이스를 생성할 수 있다. 본 발명의 일 실시예에 의하면, 동작 제어부(104)는, 생성된 원인/결과 테이블, 인과 그래프 및 테스트 케이스를 사용자 데이터 입출력부(106)를 통해 사용자에게 출력할 수 있다. 동작 제어부(104)의 구체적인 동작에 관해서는 이후 도 3을 참조하여 더 후술하기로 한다. According to one embodiment of the present invention, the
사용자 데이터 입출력부(106)는, 구체적으로 도시되지는 않았으나, 다양한 유형의 사용자 출력 장치들, 예컨대 모니터, 터치 스크린, 각종 디스플레이 장치 등을 포함할 수 있다. 본 발명의 일 실시예에 의하면, 사용자 데이터 입출력부(106)의 사용자 출력 장치들을 통하여, 동작 제어부(104)로부터 수신한 명세서 파일, 사용자와의 인터랙션을 위한 그래픽 사용자 인터페이스 등이 사용자에게 표시될 수 있다. 사용자 데이터 입출력부(106)는 또한, 구체적으로 도시되지는 않았으나, 다양한 유형의 사용자 입력 장치들, 예컨대 마우스, 키보드, 조이스틱, 기타 각종 입력 장치 등을 포함할 수 있다. 본 발명의 일 실시예에 의하면, 사용자 데이터 입출력부(106)의 사용자 입력 장치들을 통해, 사용자가 입력한 제어 정보, 예컨대 판독된 명세서 파일의 각 문장 또는 단어에 관한 원인 또는 결과로의 지정에 관한 정보나, 명세서 파일의 변경 사항의 반영 여부에 관한 사용자 제어 정보 등을 비롯한 각종 사용자 제어 정보가 수신될 수 있다.The user data input /
본 발명의 일 실시예에 의하면, 데이터베이스(108)는 하나 이상의 소프트웨어 명세서 파일에 관한 원인/결과 테이블을 저장할 수 있다. 데이터베이스(108)는 임의의 유형의 메모리 장치일 수 있으며, 본 도면에서는 데이터베이스(108)가 동작 제어부(104)와 별도의 장치로 도시되었으나 본 발명이 이로써 제한되는 것은 아니다. 본 발명의 다른 실시예에 의하면, 데이터베이스(108)는 동작 제어부(104)와 일체화된 일 유형의 메모리 구조일 수도 있다.According to one embodiment of the present invention, the
도 2는, 본 발명의 일 실시예에 따른, 원인/결과 테이블의 생성 또는 갱신 동작을 보여주는 동작 흐름도이다.2 is an operational flow diagram illustrating generation / update operations of a cause / effect table, in accordance with an embodiment of the present invention.
우선, 단계(202)에서, 검증할 소프트웨어의 명세서 파일이 판독될 수 있다. 그런 다음, 단계(204)에서는, 판독된 소프트웨어의 명세서 파일이 신규 명세서 파일인지 아니면 변경 명세서 파일인지 판정될 수 있다.First, in
단계(204)에서, 해당 명세서 파일이 신규 명세서 파일이라고 판정된 경우, 절차는 단계(206)로 진행하여 원인/결과 테이블의 신규 생성 절차가 진행된다. 단계(206)에서는, 주어진 명세서 파일로부터 문장 또는 단어 항목을 획득하고, 그 획득된 문장 또는 단어 항목에 대한 태그 정보를 생성하며, 그 생성된 태그 정보를 주어진 명세서 파일의 해당 항목에 삽입하여 해당 항목을 감싸도록 할 수 있다. 단계(208)에서는, 주어진 문장 또는 단어 항목에 대한 사용자 제어 입력, 예컨대 해당 문장 또는 단어 항목이 원인 항목인지 결과 항목인지에 관한 사용자 선택 정보를 수신할 수 있다. 단계(210)에서는, 해당 문장 또는 단어 항목과, 그에 관한 태그 정보와, 해당 항목에 관한 원인 또는 결과 항목으로서의 사용자 선택 정보를 조합하여, 해당 소프트웨어의 명세서 파일에 관한 원인/결과 테이블을 생성할 수 있다. 그런 다음, 단계(212)에서, 해당 명세서 파일에서 더 처리할 남은 항목이 있는지를 판정하고, 남은 항목이 존재한다면 절차는 단계(206)로 진행하여 남아 있는 다른 항목들에 관한 처리를 계속한다. 단계(212)에서, 명세서 파일에 더 이상 남은 항목이 존재하지 않는 것으로 판정된 경우, 원인/결과 테이블의 생성을 완료하고 단계(228)로 진행하여 생성된 원인/결과 테이블을 데이터베이스(108)에 저장할 수 있다. If it is determined in
한편, 단계(204)에서, 판독된 소프트웨어의 명세서 파일이 신규 명세서 파일이 아니라고 판정된 경우(예컨대, 해당 명세서 파일에 관련된 원인/결과 테이블이 데이터베이스(108)에 이미 존재하거나, 해당 명세서 파일의 하나 이상의 항목에 태그 정보가 이미 삽입되어 있는 경우 등)라면, 절차는 단계(214)로 진행하여 원인/결과 테이블의 갱신 절차를 진행한다. 단계(214)에서는, 우선 데이터베이스(108)로부터 대응하는 원인/결과 테이블을 판독한다. 그런 다음, 단계(216)에서는, 판독된 명세서 파일을 분석하여 태그 정보가 삽입되어 있는 문장 또는 단어 항목을 획득할 수 있다. 단계(218)에서는, 명세서로부터 획득된 문장 또는 단어 항목을, 데이터베이스(108)로부터 판독된 원인/결과 테이블의 대응하는 문장 또는 단어 항목과 비교하고, 양자의 일치 여부를 판정할 수 있다. 단계(218)에서 명세서로부터 획득된 문장 또는 단어 항목과 데이터베이스(108)로부터 판독된 원인/결과 테이블의 대응하는 문장 또는 단어 항목이 서로 일치하지 않는 것으로 판정된 경우라면, 해당 항목에 변경이 발생한 것이라고 볼 수 있다. 그러므로, 단계(220)에서는 그 불일치 사항, 즉 명세서에서 변경된 사항을 사용자에게 제시할 수 있다. 그런 다음, 단계(222)에서, 사용자로부터 해당 변경 사항을 새로 갱신되는 원인/결과 테이블에 반영할 것인지에 관한 사용자 제어 입력을 수신할 수 있다. 단계(224)에서는, 단계(222)에서 수신한 사용자 제어 입력에 기초하여 해당 변경 사항을 갱신되는 원인/결과 테이블에 반영하거나 반영하지 않도록 원인/결과 테이블을 갱신할 수 있다. 단계(226)에서는, 주어진 명세서 파일에서 더 처리할 남은 항목, 즉 검토되지 않는 태그 정보를 갖는 항목이 남아 있는지를 판정하고, 아직 남은 항목이 존재한다면 절차는 단계(214)로 진행하여 남아 있는 다른 항목들에 관한 처리를 계속한다. 단계(226)에서, 명세서 파일에 더 이상 남은 항목이 존재하지 않는 것으로 판정된 경우라면, 원인/결과 테이블의 갱신을 완료하고 단계(228)로 진행하여 갱신된 원인/결과 테이블을 데이터베이스(108)에 저장할 수 있다.On the other hand, if it is determined in
도 3은, 도 1의 동작 제어부(104)의 기능을 자세히 설명하기 위한 기능 블록도이다. 도시된 바에 의하면, 동작 제어부(104)는, 사용자 인터페이스 처리부(302), 명세서 갱신부(304), 원인/결과 테이블 생성부(306), 원인/결과 테이블 갱신부(308), 데이터베이스 처리부(310), 테스트 케이스 생성부(312)를 포함한다.FIG. 3 is a functional block diagram for explaining the functions of the
본 발명의 일 실시예에 의하면, 사용자 인터페이스 처리부(302)는 도 1의 사용자 데이터 입출력부(106)와 통신 가능하게 접속될 수 있다. 사용자 인터페이스 처리부(302)는, 판독된 명세서 파일을 사용자 데이터 입출력부(106)로 전송되도록 하여 사용자 데이터 입출력부(106)를 통해 사용자에게 제시되도록 할 수 있을 뿐만 아니라, 사용자 제어 입력(예컨대, 소정의 명세서 파일의 각 항목이 원인 항목인지 결과 항목인지를 지정하는 정보, 소정의 명세서 파일의 각 항목에 발생한 변경 내용을 원인/결과 테이블에 반영할 것인지 여부의 선택 정보 등)을 수신하기 위한 사용자 인터페이스 정보를 생성하여 이를 사용자 데이터 입출력부(106)를 통해 사용자에게 제시되도록 할 수 있다. 본 발명의 일 실시예에 의하면, 사용자 인터페이스 처리부(302)는 또한, 사용자 데이터 입출력부(106)를 통해 제시된 사용자 인터페이스를 통하여 수신되는 사용자 제어 입력을 수신할 수 있다. 본 발명의 일 실시예에 의하면, 사용자 인터페이스 처리부(302)는 또한, 동작 제어부(104)에 의해 생성되는 각종 정보들, 예컨대 원인/결과 테이블, 인과 그래프, 테스트 시나리오, 테스트 데이터, 테스트 케이스 등을 사용자 데이터 입출력부(106)를 통해 사용자에게 제시되도록 할 수 있다. According to an embodiment of the present invention, the user
본 발명의 일 실시예에 의하면, 동작 제어부(104)가 소프트웨어에 관한 명세서 파일을 수신한 경우, 동작 제어부(104)의 명세서 갱신부(304)는, 수신된 명세서 파일을 분석하고 그것이 신규 명세서 파일인지, 아니면 이전에 검증이 실시된 적이 있는 변경 명세서 파일인지를 판정할 수 있다. 본 발명의 일 실시예에 의하면, 명세서 갱신부(304)는, 예컨대 판독된 명세서 파일을 분석하여, 태그 정보(후술함)를 포함하는 항목이 존재하는지를 판단하고, 태그 정보를 포함하는 항목이 존재하지 않는 경우에 해당 명세서 파일을 신규 명세서 파일이라고 판단할 수 있다. 본 발명의 다른 실시예에 의하면, 명세서 갱신부(304)는, 예컨대 판독된 명세서 파일에 관한 기존의 정보가 데이터베이스(108)에 존재하는지에 따라, 그러한 기존의 정보가 존재하지 않는 경우에, 해당 명세서 파일을 신규 명세서 파일이라고 판단할 수 있다.According to one embodiment of the present invention, when the
본 발명의 일 실시예에 의하면, 명세서 갱신부(304)는, 수신된 명세서 파일이 신규 명세서 파일이라고 판단한 경우, 해당 명세서 파일에 포함된 복수의 문장 및/또는 단어 항목을 획득하고, 각각의 획득된 문장 및/또는 단어 항목에 관한 소정의 태그 정보를 생성할 수 있다. 본 발명의 일 실시예에 의하면, 명세서 갱신부(304)는 해당 명세서 파일의 각 문장 및/또는 단어 항목에 대해 이들 각 항목을 감싸도록 태그 정보를 삽입하여 해당 명세서 파일을 갱신할 수 있다. 본 발명의 일 실시예에 의하면, 소정의 태그 정보는 각 항목이, 후술하는 원인/결과 테이블의 각 항목이라는 점을 나타내는 정보일 수 있다. 본 발명의 일 실시예에 의하면, 소정의 태그 정보는, 해당 태그가 삽입되는 각각의 문장 및/또는 단어 항목을 식별하게 하는 식별 정보를 포함한 각각의 정보일 수 있다.According to one embodiment of the present invention, when the
본 발명의 일 실시예에 의하면, 동작 제어부(104)에서 수신된 명세서 파일이 신규 명세서 파일인 경우, 원인/결과 테이블 생성부(306)는 각각의 판독된 문장 및/또는 단어 항목에 대한 사용자 제어 입력, 예컨대 해당 문장 및/또는 항목이 원인 항목인지 결과 항목인지에 관한 사용자 선택 정보를 수신할 수 있다. 원인/결과 테이블 생성부(306)는, 판독된 각 문장 및/또는 단어 항목, 이들 각 항목에 관한 식별 태그 정보, 및 이들 각 항목에 사용자 제어 입력 정보를 조합하여 주어진 소프트웨어 명세서 파일에 관한 원인/결과 테이블을 생성할 수 있다. 본 발명의 일 실시예에 의하면, 데이터베이스 처리부(310)는 새로이 생성된 원인/결과 테이블을 데이터베이스(108)에 저장할 수 있다.According to an embodiment of the present invention, when the specification file received by the
본 발명의 일 실시예에 의하면, 동작 제어부(104)에서 수신된 명세서 파일이 변경 명세서 파일인 경우, 데이터베이스 처리부(310)는 데이터베이스(108)에 저장되어 있는 해당 변경 명세서 파일에 관련된 원인/결과 테이블을 검색할 수 있다. 본 발명의 일 실시예에 의하면, 원인/결과 테이블 갱신부(308)는 변경 명세서 파일의 변경 사항을 반영하도록 그 수신된 명세서 파일에 관하여 데이터베이스(108)로부터 검색된 원인/결과 테이블을 갱신할 수 있고, 데이터베이스 처리부(310)가 그 갱신된 원인/결과 테이블을 데이터베이스(108)에 저장할 수 있다. 구체적으로, 원인/결과 테이블 갱신부(308)는 수신된 명세서 파일을 분석하고 각 문장 및/또는 단어 항목을 이들 각각의 태그 정보에 의해 획득할 수 있다. 원인/결과 테이블 갱신부(308)는 또한 태그 정보를 활용하여 명세서 파일로부터 획득된 각 문장 및/또는 단어 항목과, 데이터베이스(108)로부터 검색된 원인/결과 테이블의 대응하는 문장 및/또는 단어 항목을 비교하고, 명세서 파일 중 어떤 항목이 변경되었는지를 판정할 수 있다. 본 발명의 일 실시예에 의하면, 원인/결과 테이블 갱신부(308)는 도 1의 사용자 데이터 입출력부(106)를 통해 어떤 항목이 변경되었는지를 사용자에게 표시할 수 있고, 그 변경된 정보의 반영 여부에 관한 사용자 제어 입력을 수신할 수 있다. 본 발명의 일 실시예에 의하면, 원인/결과 테이블 갱신부(308)는, 수신된 사용자 제어 입력에 기초하여, 원인/결과 테이블을 갱신할 수 있고, 데이터베이스 처리부(310)를 통해 그 갱신된 원인/결과 테이블을 데이터베이스(108)에 저장할 수 있다. According to an embodiment of the present invention, when the specification file received by the
본 발명의 일 실시예에 의하면, 테스트 케이스 생성부(312)는, 생성 또는 갱신된 원인/결과 테이블에 기초하여 그에 대응하는 인과 그래프를 생성할 수 있다. 테스트 케이스 생성부(312)는 또한 인과 그래프로부터 테스트 시나리오를 추출하고 테스트 시나리오에서 사용될 테스트 데이터를 도출할 수 있다. 테스트 케이스 생성부(312)는 테스트 시나리오와 테스트 데이터에 기초하여 테스트 케이스를 생성할 수 있다. 테스트 케이스 생성 동작에 관한 자세한 사항은 본 출원인의 선행 등록특허 제10-1554424호를 참조할 수 있다. 본 발명의 일 실시예에 의하면, 테스트 케이스 생성부(312)에 의해 생성되는 인과 그래프, 테스트 시나리오, 테스트 케이스 등이 사용자 인터페이스 처리부(302)를 통해 사용자 데이터 입출력부(106)로 전달될 수 있고, 사용자 데이터 출력 장치에 의해 사용자에게 제시될 수 있다.According to an embodiment of the present invention, the test
도 4는, 본 발명의 일 실시예에 따른, 명세서 파일 표시와 그로부터 생성된 원인/결과 테이블 표시의 예를 도시한 도면이다. 4 is a diagram illustrating an example of a specification file display and cause / effect table display generated therefrom, in accordance with an embodiment of the present invention.
도 4의 (a)에는, 본 발명의 일 실시예에 따라, 테스트 케이스 생성 장치(100)가 소프트웨어의 명세서 파일을 판독한 경우, 그 판독된 명세서 파일의 내용이 사용자 디스플레이 장치에 제시되는, 예시적인 명세서 파일 표시가 제시되고 있다. 본 발명의 일 실시예에 따르면, 도시된 바와 같이, 사용자 디스플레이 장치에 제시되는 명세서 파일 표시에서는, 해당 명세서 파일의 각 문장 및 단어 항목이 식별 가능한 형태로 표시되고 아울러 이들 각 항목에 대한 사용자 선택, 즉 각 항목이 원인 항목인지 결과 항목인지의 사용자 선택을 요구하는 그래픽 사용자 인터페이스가 함께 표시될 수 있다.4A shows an example of the contents of the read specification file being presented to the user display device when the test
도 4의 (b)에는, 본 발명의 일 실시예에 따라, 도 4의 (a)에 도시된 명세서 파일 표시에 대응하는 명세서 파일로부터 도출된 각 문장 또는 단어 항목과 이들 각 항목에 관하여 사용자 인터페이스를 통해 수신된 사용자 제어 입력에 기초하여 작성된 원인/결과 테이블 표시가 제시되어 있다. 도시된 바에 의하면, 원인/결과 테이블 표시에는, 원인 항목들(C1-C8)과 결과 항목들(E1-E9)을 포함한 총 17개의 항목이 표시되어 있고, 각 항목은 각 ID와 그에 관한 정의를 포함하는 것으로 표시되어 있다.4 (b) shows, in accordance with an embodiment of the present invention, each sentence or word item derived from a specification file corresponding to the specification file display shown in Fig. 4 (a) A cause / effect table display created based on the user control input received via < / RTI > In the cause / result table display, there are displayed 17 items including cause items (C1-C8) and result items (E1-E9), and each item has a definition of each ID and its related items And the like.
도 5는, 본 발명의 일 실시예에 따라, 명세서 파일에 변경이 발생한 경우, 그러한 변경에 대응하여 갱신되는 과정 중에 있는 원인/결과 테이블의 표시를 보여주는 도면이다.5 is a diagram showing an indication of a cause / effect table in the process of being updated in response to a change in a specification file in accordance with an embodiment of the present invention.
도 5에 도시된 바에 의하면, 도 4의 (b)의 원인/결과 테이블 표시와 비교할 때, 원인 항목(C3-C5)과 결과 항목(E3-E5 및 E7)에 변경이 발생하였음을 알 수 있다. 도 5에 도시된 원인/결과 테이블의 표시에는, 각 변경이 발생한 항목에 대하여 그 변경사항을 원인/결과 테이블에 반영할 것인지를 사용자에게 문의하는 사용자 인터페이스 항목이 포함되어 있다.5, it can be seen that a change has occurred in the cause items (C3-C5) and the result items (E3-E5 and E7) when compared with the cause / result table display of FIG. 4 . The display of the cause / result table shown in Fig. 5 includes a user interface item for inquiring of the user whether or not the change should be reflected in the cause / result table for the item in which each change occurs.
당업자라면 알 수 있듯이 본 발명은 본 명세서에서 기술된 예시에 한정되는 것이 아니라 본 발명의 범주를 벗어나지 않는 범위 내에서 다양하게 변형, 재구성 및 대체될 수 있다. 예를 들어, 본원에 기술된 다양한 기술들은 하드웨어 또는 소프트웨어, 또는 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있다. 따라서, 본원에 따른 소프트웨어 안전성 분석을 위한 분석 머신의 특정한 양태나 부분은 범용 또는 전용 마이크로프로세서, 마이크로-컨트롤러 등에 의해 실행 가능한 하나 이상의 컴퓨터 프로그램으로 구현될 수 있다. 본 발명의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨터 프로세서 등에 의해 판독 가능한 저장 매체, 예컨대 EPROM, EEPROM, 플래시 메모리장치와 같은 비휘발성 메모리, 내장형 하드 디스크와 착탈식 디스크 같은 자기 디스크, 광자기 디스크, 및 CDROM 디스크 등을 포함한 다양한 유형의 저장 매체에 저장된 형태로 구현될 수 있다. 또한, 프로그램 코드(들)는 어셈블리어나 기계어로 구현될 수 있고, 전기 배선이나 케이블링, 광섬유, 또는 기타 임의의 다른 형태의 전송 매체를 통해 전송되는 형태로 구현될 수도 있다. As will be appreciated by those skilled in the art, the present invention is not limited to the examples described herein, but may be variously modified, rearranged and replaced without departing from the scope of the present invention. For example, the various techniques described herein may be implemented in hardware or software, or a combination of hardware and software. Thus, certain aspects or portions of an analysis machine for software safety analysis in accordance with the present disclosure may be implemented with one or more computer programs executable by a general purpose or special purpose microprocessor, micro-controller, or the like. A computer program according to an embodiment of the present invention may be stored in a storage medium readable by a computer processor or the like such as a nonvolatile memory such as EPROM, EEPROM, flash memory device, a magnetic disk such as an internal hard disk and a removable disk, CDROM disks, and the like. Also, the program code (s) may be implemented in assembly language or machine language, and may be implemented in a form that is transmitted over electrical wiring or cabling, optical fiber, or any other form of transmission medium.
본 명세서에서는, 소프트웨어 위험성 분석의 예시적인 실시예에 대해 다양한 도면를 참조하여 주로 기술했지만, 다른 유사한 실시예들이 이용될 수 있다. 본 발명의 진정한 사상 및 범주에 속하는 모든 변형 및 변경을 이하의 특허청구범위에 의해 모두 포괄하고자 한다.Although exemplary embodiments of the software risk analysis are mainly described herein with reference to various drawings, other similar embodiments may be used. And all changes and modifications that fall within the true spirit and scope of the present invention are intended to be embraced by the following claims.
102: 명세서 판독/수정부
104: 동작 제어부
106: 사용자 데이터 입출력부
108: 데이터베이스102: Specification reading /
104:
106: User data input / output unit
108: Database
Claims (14)
상기 소프트웨어의 제1 명세서 파일을 판독하는 단계;
상기 제1 명세서 파일로부터 하나 이상의 항목을 획득하는 단계;
상기 제1 명세서 파일의 상기 하나 이상의 항목 각각이 소정의 태그 정보를 포함하도록 변경하는 단계;
사용자 제어 입력에 기초하여, 상기 하나 이상의 항목 각각에 대해, 상기 각각의 항목을 원인 항목 또는 결과 항목으로 설정하는 단계;
상기 설정에 기초하여, 상기 하나 이상의 항목에 대한 원인/결과 테이블을 생성 및 저장하는 단계;
상기 원인/결과 테이블에 기초하여 상기 테스트 케이스를 생성하는 단계;
상기 원인/결과 테이블을 저장한 이후에, 상기 소프트웨어의 제2 명세서 파일을 판독하는 단계 - 상기 제2 명세서 파일은, 상기 제1 명세서 파일의 상기 하나 이상의 항목 중 적어도 하나의 항목을 변경하여 생성된 것임 -;
상기 제2 명세서 파일로부터, 상기 태그 정보를 포함하는 적어도 하나의 항목을 획득하는 단계;
상기 원인/결과 테이블을 검색하는 단계; 및
상기 제2 명세서 파일로부터 획득된 상기 적어도 하나의 항목과 상기 원인/결과 테이블의 대응하는 항목을 비교하여, 상기 적어도 하나의 항목 중에서 상기 원인/결과 테이블의 생성 이후에 변경이 발생한 항목과 변경 내용을 식별하는 단계
를 포함하는, 테스트 케이스 생성 방법. A test case generation method for software verification,
Reading a first specification file of the software;
Obtaining one or more items from the first specification file;
Changing each of the one or more items of the first specification file to include predetermined tag information;
Setting, for each of the one or more items, a respective item as a cause item or a result item based on a user control input;
Generating and storing a cause / effect table for the one or more items based on the setting;
Generating the test case based on the cause / result table;
Reading the second specification file of the software after storing the cause / effect table, wherein the second specification file is created by modifying at least one item of the one or more items of the first specification file -;
Obtaining, from the second specification file, at least one item including the tag information;
Retrieving the cause / effect table; And
Comparing the at least one item obtained from the second specification file with a corresponding item in the cause / result table to determine an item in which the change occurred and a change from the at least one item after the generation of the cause / Steps to identify
And generating a test case.
상기 제2 명세서 파일을 사용자 디스플레이 장치에 표시하는 단계; 및
상기 원인/결과 테이블을 상기 사용자 디스플레이 장치에 표시하는 단계를 더 포함하고,
상기 원인/결과 테이블을 상기 사용자 디스플레이 장치에 표시하는 단계는, 상기 식별된 항목과 변경 내용을 상기 사용자 디스플레이 장치에 표시하는 단계를 포함하는, 테스트 케이스 생성 방법.The method according to claim 1,
Displaying the second specification file on a user display device; And
Further comprising displaying the cause / effect table on the user display device,
Wherein the step of displaying the cause / effect table on the user display device comprises displaying the identified item and the change on the user display device.
상기 식별된 항목과 변경 내용을 표시하는 단계는, 상기 변경 내용의 반영에 관한 사용자 제어 입력을 수신하기 위한 사용자 인터페이스를 제공하는 단계를 더 포함하는, 테스트 케이스 생성 방법.The method of claim 3,
Wherein displaying the identified item and the change further comprises providing a user interface for receiving a user control input regarding the reflection of the change.
상기 사용자 인터페이스를 통해 입력된 상기 사용자 제어 입력에 기초하여, 상기 원인/결과 테이블을 수정 및 저장하는 단계; 및
상기 수정된 원인/결과 테이블에 기초하여 새로운 테스트 케이스를 생성하는 단계를 더 포함하는, 테스트 케이스 생성 방법.5. The method of claim 4,
Modifying and storing the cause / effect table based on the user control input inputted through the user interface; And
And generating a new test case based on the modified cause / result table.
상기 소정의 태그 정보는, 상기 하나 이상의 항목 각각에 대해, 상기 각 항목에 대응하는 식별 정보를 포함하는, 테스트 케이스 생성 방법.The method according to claim 1,
Wherein the predetermined tag information includes, for each of the one or more items, identification information corresponding to each item.
상기 제1 명세서 파일을 사용자 디스플레이 장치에 표시하는 단계; 및
사용자 인터페이스를 상기 사용자 디스플레이 장치에 표시하는 단계를 더 포함하고,
상기 제1 명세서 파일로부터 하나 이상의 항목을 획득하는 단계는 상기 사용자 인터페이스를 통해 상기 하나 이상의 항목을 획득하는 단계를 포함하는, 테스트 케이스 생성 방법.The method according to claim 1,
Displaying the first specification file on a user display device; And
Further comprising displaying the user interface on the user display device,
Wherein acquiring one or more items from the first specification file comprises obtaining the one or more items via the user interface.
상기 사용자 인터페이스를 통해 상기 사용자 제어 입력을 수신하는 단계를 더 포함하는, 테스트 케이스 생성 방법.8. The method of claim 7,
Further comprising receiving the user control input via the user interface.
상기 하나 이상의 항목에 대한 원인/결과 테이블을 상기 사용자 디스플레이 장치에 표시하는 단계를 더 포함하는, 테스트 케이스 생성 방법.8. The method of claim 7,
Further comprising displaying the cause / effect table for the one or more items on the user display device.
상기 하나 이상의 항목 각각은, 각각의 대응하는 문장 또는 단어를 포함하는, 테스트 케이스 생성 방법.The method according to claim 1,
Each of the one or more items comprising a respective corresponding sentence or word.
상기 제1 명세서 파일의 상기 하나 이상의 항목 각각이 소정의 태그 정보를 포함하도록 변경하는 단계는, 상기 하나 이상의 항목 각각의 각 대응하는 문장 또는 단어에 대해 상기 태그 정보를 삽입하는 단계를 포함하는, 테스트 케이스 생성 방법.11. The method of claim 10,
Wherein modifying each of the one or more items of the first specification file to include predetermined tag information comprises inserting the tag information for each corresponding sentence or word of each of the one or more items. How to create a case.
상기 테스트 케이스를 생성하는 단계는,
상기 원인/결과 테이블에 기초하여 인과 그래프를 생성하는 단계; 및
상기 인과 그래프에 기초하여 상기 테스트 케이스를 생성하는 단계를 포함하는, 테스트 케이스 생성 방법.The method according to claim 1,
Wherein the step of generating the test case comprises:
Generating a causal graph based on the cause / effect table; And
And generating the test case based on the causal graph.
사용자 디스플레이 장치;
메모리; 및
프로세서를 포함하고,
상기 프로세서는, 제1항, 제3항 내지 제12항 중 어느 한 항에 따른 방법을 수행하는, 컴퓨터 장치.13. A computer device,
A user display device;
Memory; And
A processor,
Wherein the processor is adapted to perform the method according to any one of claims 1 to 12.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160098504A KR101826618B1 (en) | 2016-08-02 | 2016-08-02 | Method and apparatus for generating test case, computer readable recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160098504A KR101826618B1 (en) | 2016-08-02 | 2016-08-02 | Method and apparatus for generating test case, computer readable recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101826618B1 true KR101826618B1 (en) | 2018-02-07 |
Family
ID=61204142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160098504A KR101826618B1 (en) | 2016-08-02 | 2016-08-02 | Method and apparatus for generating test case, computer readable recording medium |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101826618B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200071567A (en) * | 2018-12-11 | 2020-06-19 | (주)씽크포비엘 | Method and apparatus for automatically creating test cases for software |
KR20210131215A (en) * | 2020-04-21 | 2021-11-02 | 유아이패스, 인크. | Test automation for robotic process automation |
US11797432B2 (en) | 2020-04-21 | 2023-10-24 | UiPath, Inc. | Test automation for robotic process automation |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101554424B1 (en) * | 2014-05-02 | 2015-09-30 | (주)씽크포비엘 | Method and apparatus for auto generation of test case |
JP5942009B1 (en) * | 2015-03-31 | 2016-06-29 | エヌ・ティ・ティ・コムウェア株式会社 | Software test apparatus, software test method, and software test program |
-
2016
- 2016-08-02 KR KR1020160098504A patent/KR101826618B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101554424B1 (en) * | 2014-05-02 | 2015-09-30 | (주)씽크포비엘 | Method and apparatus for auto generation of test case |
JP5942009B1 (en) * | 2015-03-31 | 2016-06-29 | エヌ・ティ・ティ・コムウェア株式会社 | Software test apparatus, software test method, and software test program |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200071567A (en) * | 2018-12-11 | 2020-06-19 | (주)씽크포비엘 | Method and apparatus for automatically creating test cases for software |
KR102176133B1 (en) * | 2018-12-11 | 2020-11-09 | (주)씽크포비엘 | Method and apparatus for automatically creating test cases for software |
KR20210131215A (en) * | 2020-04-21 | 2021-11-02 | 유아이패스, 인크. | Test automation for robotic process automation |
KR102444475B1 (en) * | 2020-04-21 | 2022-09-16 | 유아이패스, 인크. | Test automation for robotic process automation |
US11789853B2 (en) | 2020-04-21 | 2023-10-17 | UiPath, Inc. | Test automation for robotic process automation |
US11797432B2 (en) | 2020-04-21 | 2023-10-24 | UiPath, Inc. | Test automation for robotic process automation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9170921B2 (en) | Application testing automation | |
JP4876511B2 (en) | Logic extraction support device | |
JP5874891B2 (en) | Program test apparatus, program test method, and program | |
US7937622B2 (en) | Method and system for autonomic target testing | |
EP3785126B1 (en) | Unit testing for changes to version control | |
JP6440895B2 (en) | Software analysis apparatus and software analysis method | |
KR101826618B1 (en) | Method and apparatus for generating test case, computer readable recording medium | |
JP6409577B2 (en) | Test selection program, test selection method, and test selection device | |
CN114610286A (en) | Development document generation method and device, computer equipment and storage medium | |
KR20100124726A (en) | Building operating system images based on applications | |
JP6336919B2 (en) | Source code review method and system | |
CN111460235A (en) | Atlas data processing method, device, equipment and storage medium | |
JP6451417B2 (en) | Debug support device, debug support system, debug support method, and debug support program | |
JP2014164385A (en) | Requirement detection device and requirement detection program | |
JP6790921B2 (en) | Program analyzer, program analysis method and program analysis program | |
KR102176133B1 (en) | Method and apparatus for automatically creating test cases for software | |
JP6185148B2 (en) | Dependency verification device between software specifications and dependency verification method between software specifications | |
JP6281239B2 (en) | Program development support apparatus and method | |
JP5900212B2 (en) | Test data generation apparatus, program, and method | |
JP2018026056A (en) | Software quality determination method | |
JP5957986B2 (en) | Drawing support apparatus, drawing support method, and drawing support program | |
CN111597119A (en) | Test script updating method and device, storage medium and processor | |
KR101999321B1 (en) | Program test system and test method using the same | |
KR20150027426A (en) | Apparatus and Method for Verifying Scripts Automatically | |
CN115658551B (en) | Code testing method, storage medium, electronic device and apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |