KR20180060573A - Regression test automation system for improving software development quality - Google Patents

Regression test automation system for improving software development quality Download PDF

Info

Publication number
KR20180060573A
KR20180060573A KR1020160160214A KR20160160214A KR20180060573A KR 20180060573 A KR20180060573 A KR 20180060573A KR 1020160160214 A KR1020160160214 A KR 1020160160214A KR 20160160214 A KR20160160214 A KR 20160160214A KR 20180060573 A KR20180060573 A KR 20180060573A
Authority
KR
South Korea
Prior art keywords
test
source code
database
software
regression
Prior art date
Application number
KR1020160160214A
Other languages
Korean (ko)
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 KR1020160160214A priority Critical patent/KR20180060573A/en
Publication of KR20180060573A publication Critical patent/KR20180060573A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

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)
  • Stored Programmes (AREA)

Abstract

The present invention relates to a software regression verifying device and a method thereof, and to a technology which designates a specific region of a source code of software as a test case, performs a regression test for the test case to use the same as a quality proof material for verifying the quality of software or to conduct a feedback to a developer. To this end, the present invention for a regression test method of software comprises the following steps: designating at least a part of test source code of the entire data source code as a test case; storing the test case in a database; transmitting a test source code of the test case and the entire data source code to a testing module; using a test driver to perform a test for the test source code in the testing module; and storing the test result in the database.

Description

소프트웨어 개발 품질 향상을 위한 회귀테스트 자동화 시스템{Regression test automation system for improving software development quality}Regression test automation system for improving quality of software development

본 발명은 소프트웨어 회귀 테스트 장치 및 그 방법에 관한 것으로, 더욱 상세하게는 소프트웨어의 소스코드의 특정 부분을 테스트 케이스로 지정하고, 테스트 케이스를 회귀 테스트를 수행하여 소프트웨어의 품질을 증명하는 품질 증명 자료로 활용하거나 개발자에게 피드백을 실시하는 기술에 관한 것이다.More particularly, the present invention relates to a software regression test apparatus and a method thereof, and more particularly, to a software regression test apparatus and a method thereof, And to provide feedback to the developer.

IT 과학 기술이 발전함에 따라 주변의 모든 일상생활 기기에서 컴퓨터 기술을 활용하여 생활하게 된다. 이에 따라 사용자가 원하는 소프트웨어의 수준은 점차 고성능을 발휘하기 위하여 복잡해지고 크기가 커지는 관계로 이를 해결하기 위하여 여러 사람이 협업을 통해 소프트웨어의 제작을 하게 되었고, 그로 인하여 다양한 문제가 발생하고 있다.As IT science and technology develops, all the devices of everyday life around them will use computer technology. As a result, the level of software desired by the user gradually becomes complicated and increases in size in order to exhibit high performance. In order to solve this problem, a plurality of people have made software through collaboration, thereby causing various problems.

일반적으로 소프트웨어는 사용자 측의 요구사항, 설계, 구현 및 테스트 과정을 통해 개발된다. 여기서, 요구사항, 설계는 개발 시작 전 단계로써 문제가 발생하는 경우에 회의를 통해 얼마든지 수정이 가능하지만, 구현 이후 개발의 최종 단계인 테스트 과정에서 오류가 발생하는 경우에는 많은 시스템적 변경사항이 발생하므로 소프트웨어를 개발하는데 필요한 시간 및 비용이 증가하게 된다.Software is typically developed through user requirements, design, implementation, and testing. Here, the requirements and design are the steps before the start of the development. If the problem occurs, it can be modified at any time through the meeting. However, if the error occurs during the final stage of development after implementation, many systematic changes The time and cost required to develop the software are increased.

소프트웨어의 개발을 진행하는데 시간 및 비용을 감소시키기 위하여 발생된 방법으로 최초 '기반모델'을 개발하고, 기반모델의 일부를 수정하여 '파생모델'을 개발하는 방식으로 개발을 진행한다. 이러한 방식으로 개발된 파생모델은 최초 기반모델에 대하여 테스트를 수행할 테스트 케이스를 이용하여 파생모델을 테스트 하게 된다.In order to reduce time and cost in developing software, we develop first 'base model' and develop 'derivative model' by modifying part of base model. Derived models developed in this way will test the derived models using the test cases that will be tested against the original base model.

테스트를 수행하는 방법으로는 최초의 기반모델을 검증할 때, 입력 데이터로 사용했던 테스트 케이스를 모두 사용하여 검증을 수행하는 방법(SW 재검증)이고, 다른 하나는 검증의 효율성을 위해 최초 기반모델에서 변경된 소프트웨어 부분을 고려하여 기반모델 검증에 사용했던 테스트 케이스 중 일부를 선택해서 검증을 수행하는 방법(SW 회귀 검증)이다.One way to perform the test is to perform verification using all of the test cases used as input data (SW re-verification) when verifying the first base model, and the other is to use the first base model (SW regression verification) by selecting some of the test cases that were used to verify the base model, considering the changed software part.

최근에는 복잡해지고 소프트웨어의 크기가 커짐에 따라 이를 해결하기 위한 효율성 측면에서 SW 회귀 검증 방법을 주로 사용하고 있다.Recently, as the size of the software becomes larger and the complexity increases, the SW regression verification method is mainly used in terms of efficiency.

종래의 SW회귀 검증 방법은 지금까지 수행한 테스팅을 다시 수행하여 소스코드의 수정에서 유발되는 문제점을 예방할 수 있다는 장점이 있지만 개발이 진행 될수록 비용도 증가한다는 문제점이 있다. The conventional SW regression verification method has an advantage that it can prevent the problems caused by the modification of the source code by re-performing the tests performed so far, but the cost increases as the development progresses.

상기와 같은 종래 기술의 문제점을 해결하기 위하여, 본 발명은 개발자가 회귀 테스트를 용도에 맞게 조정하여 자동화 테스트를 할 수 있는 시스템을 제공하는데 그 목적이 있다.In order to solve the problems of the prior art as described above, it is an object of the present invention to provide a system in which a developer can perform an automated test by adjusting a regression test according to purposes.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시 예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned can be understood by the following description, and will be more clearly understood by the embodiments of the present invention. It will also be readily apparent that the objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.

상기의 목적을 달성하기 위한 본 발명의 장치는, 소프트웨어 회귀 테스트 장치에 있어서, 소스코드 및 사용자 관리 사항을 저장하는 서브버전(Subversion, SVN); 상기 소스코드의 일부 또는 전체가 지정된 테스트 케이스 및 테스트 결과를 저장하는 데이터베이스(database); 상기 데이터베이스에서 테스트 케이스를 가져와 상기 서브비전의 소스코드와 함께 테스트를 진행하고 테스트 결과를 상기 데이터 베이스에 전송하는 테스팅 모듈; 상기 데이터베이스에 저장된 테스트 결과를 가져와 결과 리포트를 생성하는 리포트 모듈(report module)을 포함하여 구성함을 특징으로 한다.According to an aspect of the present invention, there is provided a software regression testing apparatus comprising: a Subversion (SVN) for storing source code and user management information; A database storing a test case and a test result in which part or all of the source code is designated; A testing module that takes a test case from the database and performs a test with the source code of the subvision and transmits the test result to the database; And a report module for taking a test result stored in the database and generating a result report.

본 발명은 상기 테스팅 모듈은 상기 소스코드와 상기 테스트 케이스를 받아 회귀 테스트를 진행하는 테스트 드라이버와 상기 테스트 드라이버의 진행을 관리하는 테스트 관리부로 구성함을 특징으로 한다.The testing module may include a test driver for receiving the source code and the test case to perform a regression test, and a test management unit for managing the progress of the test driver.

또한, 상기 목적을 달성하기 위한 본 발명의 방법은, 소프트웨어 회귀 테스트 방법에 있어서, 전체 데이터 소스코드 중 적어도 일부의 테스트 소스코드를 테스트 케이스로 지정하는 단계; 상기 테스트 케이스를 데이터베이스에 저장하는 단계; 상기 테스트 케이스의 테스트 소스코드와 상기 전체 데이터 소스코드를 테스팅 모듈로 전송하는 단계; 테스팅 모듈에서 테스트 드라이버를 이용하여 상기 테스트 소스코드에 대한 테스트를 수행하는 단계; 상기 테스트 결과를 데이터베이스에 저장하는 단계;를 포함한다.According to another aspect of the present invention, there is provided a software regression testing method comprising the steps of: designating at least a part of the entire data source code as a test case; Storing the test case in a database; Transmitting the test source code of the test case and the entire data source code to a testing module; Performing a test on the test source code using a test driver in a testing module; And storing the test results in a database.

본 발명은 멀티미디어 시스템 소프트웨어에 적용될 수 있으며, 멀티미디어 시스템 소프트웨어는 개인용 모바일 기기나 자동차의 내비게이터 등에 탑재되는 시스템 소프트웨어를 포함한다. 물론, 멀티미디어 시스템 소프트웨어뿐만 아니라, 공통함수(예: 라이브러리)를 다수 사용하여 개발된 모든 소프트웨어에 활용 가능하다.The present invention can be applied to multimedia system software, and the multimedia system software includes system software installed in a personal mobile device or a navigator of an automobile. Of course, it can be used not only for multimedia system software, but also for all software developed using a number of common functions (such as libraries).

상기와 같은 본 발명은, 테스트 코드를 이용해 개발 중인 소스코드를 테스트하고, 테스트의 결과를 데이터베이스에 저장하여 리포트를 생성하기 때문에 쉽게 테스트 결과를 공유할 수 있고, 이를 통해 개발에 필요한 정보를 개발자 및 매니저가 공유하여 토론을 진행함으로써 원활한 소프트웨어의 개발이 가능하다.The present invention as described above can easily share the test result because the source code under development is tested using the test code and the result of the test is stored in the database to generate the report, It is possible to develop software smoothly by sharing discussions by managers.

또한, 본 발명은 소프트웨어의 전체 소스코드 중 일부만의 테스트를 진행하기 때문에 종래의 소프트웨어 테스트 기술에 대비하여 테스트에 소모되는 시간을 절약할 수 있고, 이로 인하여 소프트웨어의 개발에 걸리는 전체적인 시간을 단축할 수 있다.In addition, since the present invention tests only a part of the entire source code of the software, it saves time consumed in the test in preparation for the conventional software test technique, thereby shortening the overall time required for the development of the software have.

전체 소프트웨어의 테스트가 아닌 일부분만을 테스트하기 때문에 소프트웨어의 오류 부분을 명확하게 비교 및 확인을 수행함은 물론 소프트웨어의 개발 도중 개발 방향이 변경되더라도 변경된 부분만을 테스트 및 개발 진행이 가능하다.Since only part of the software is tested, it is possible to clearly compare and check the error part of the software, and to test and develop the changed part even if the development direction changes during the development of the software.

도 1은 본 발명에 따른 소프트웨어 회귀 검증 방법의 일 실시 예에 따른 구성도,
도 2는 본 발명에 따른 소프트웨어 회귀 검증 방법의 일 실시 예에 따른 흐름도이다.
1 is a configuration diagram according to an embodiment of a software regression verification method according to the present invention;
2 is a flowchart according to an embodiment of the software regression verification method according to the present invention.

본 발명에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 발명에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It is noted that the technical terms used in the present invention are used only to describe specific embodiments and are not intended to limit the present invention. In addition, the technical terms used in the present invention should be construed in a sense generally understood by a person having ordinary skill in the art to which the present invention belongs, unless otherwise defined in the present invention, Should not be construed to mean, or be interpreted in an excessively reduced sense. In addition, when a technical term used in the present invention is an erroneous technical term that does not accurately express the concept of the present invention, it should be understood that technical terms can be understood by those skilled in the art. In addition, the general terms used in the present invention should be interpreted according to a predefined or prior context, and should not be construed as being excessively reduced.

또한, 본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 발명에서, "구성된다" 또는 "포함한다" 등의 용어는 발명에 기재된 여러 구성 요소들, 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.Furthermore, the singular expressions used in the present invention include plural expressions unless the context clearly dictates otherwise. In the present invention, terms such as "comprising" or "comprising" and the like should not be construed as encompassing various elements or various steps of the invention, Or may further include additional components or steps.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like reference numerals refer to like or similar elements throughout the several views, and redundant description thereof will be omitted.

또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. It is to be noted that the accompanying drawings are only for the purpose of facilitating understanding of the present invention, and should not be construed as limiting the scope of the present invention with reference to the accompanying drawings.

도 1은 본 발명에 따른 소프트웨어 회귀 검증 방법의 일 실시 예에 따른 구성도이다.1 is a block diagram of a software regression verification method according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명에 따른 소프트웨어 회귀 검증 장치는 커뮤니케이션 레이어(110), SVN(120), 테스팅 모듈(130), 리포트 모듈(140), 데이터베이스(150)를 포함한다.1, the software regression verification apparatus according to the present invention includes a communication layer 110, an SVN 120, a testing module 130, a report module 140, and a database 150.

상기 각 구성요소들에 대해 살펴보면, 커뮤니케이션 레이어(110)는 개발자 및 매니저가 테스트 결과를 확인하거나 테스트 케이스를 지정할 수 있도록 디스플레이 및 입출력 장치를 통하여 테스트 서버에 접속하여 테스트를 진행하기 위한 서버와의 커뮤니케이션을 실시한다.The communication layer 110 includes a communication layer 110 for communicating with a server for accessing a test server through a display and an input / output device so that a developer and a manager can confirm a test result or designate a test case, .

SVN(120)은 개발자가 테스트를 진행하기 위하여 상기 커뮤니케이션 레이어(110)를 통해 입력한 전체 소스코드를 코드 저장소(Code Repository)(121)에 저장하고, 상기 커뮤니케이션 레이어(110)를 통해 테스트를 진행하기 위한 소스코드중 적어도 일부의 소스코드를 개발자의 지시를 받아 사용자 관리부(User Manager)(121)에서 테스트 케이스로 지정하여 테스트 케이스를 생성한다.The SVN 120 stores the entire source code inputted through the communication layer 110 in the code repository 121 for testing by the developer and performs a test through the communication layer 110 And generates a test case by designating the source code of at least a part of the source code for designating as a test case in the user management unit 121 according to the instruction of the developer.

데이터베이스(150)는 상기 SVN(120)을 통해 지정된 상기 테스트 케이스를 받아 테스트 케이스 저장부(151)에 저장하고, 상기 테스팅 모듈(140)을 통해 테스트를 수행하여 테스트 결과를 받아 테스트 결과 저장부(152)에 저장한다. 상기 데이터베이스(150)에 저장된 테스트 케이스 및 테스트 결과는 이전 테스트 결과 및 테스트 케이스 모두를 저장하며, 이를 테스트 리포트 모듈(140)에 전송한다.The database 150 receives the test case designated through the SVN 120 and stores the test case in the test case storage unit 151. The test execution unit 150 performs the test through the testing module 140, 152). The test case and the test result stored in the database 150 store both the previous test result and the test case and transmit it to the test report module 140.

상기 테스트 결과 저장부(152)에 저장되는 테스트 결과 데이터에는 테스트 수행 날짜, 테스트 수행 파일명, 소프트웨어 개발을 진행한 개발자명, 소프트웨어 테스트를 수행한 결과 및 오류 발생시 오류 발생 영역 등의 테스트에 관련된 구체적 내용을 각각의 테이블에 맞게 분할 저장된다.The test result data stored in the test result storage unit 152 includes detailed information related to the test such as the test execution date, the name of the test execution file, the name of the developer who developed the software development, the result of performing the software test, Are divided and stored according to the respective tables.

테스팅 모듈(130)은 회귀테스트를 수행하는 곳이며, 테스트 관리부(131)는 테스트를 진행하기 위하여 상기 SVN(120)의 상기 코드 저장소(121)에서 소스코드 전체를 받고, 상기 데이터베이스(150)의 상기 테스트 케이스(151)에서 테스트 케이스를 받아 테스트 진행을 준비한다.The test management module 131 receives the entire source code from the code repository 121 of the SVN 120 to proceed with the test, The test case 151 receives the test case and prepares to proceed with the test.

테스트 드라이버(132)는 상기 테스트 관리부(131)를 통해 가져온 전체 소스코드와 테스트케이스를 수행하고, 테스트 결과를 상기 데이터베이스(150)의 상기 테스트 결과 저장부(152)로 전송한다.The test driver 132 performs the entire source code and the test case imported through the test management unit 131 and transmits the test result to the test result storage unit 152 of the database 150.

리포트 모듈(140)은 상기 데이터베이스(150)의 상기 테스트 결과 저장부(152)로부터 테스트 결과를 받아 데이터 관리부(141)에서 상기 테스트 결과에 대해 정리 및 분석을 수행한다. 수행 결과에 대해 리포트 생성부(142)에서 리포트를 생성하여 상기 커뮤니케이션 레이어(110)에 리포트를 전송한다.The report module 140 receives the test result from the test result storage unit 152 of the database 150 and performs the analysis and analysis on the test result in the data management unit 141. The report generating unit 142 generates a report about the execution result and transmits the report to the communication layer 110.

상기 리포트 생성부(142)는 상기 데이터베이스(150)의 상기 테스트 결과 저장부(152)에 저장되어있는 데이터(테스트 수행 날짜, 테스트 수행 파일명, 소프트웨어 개발을 진행한 개발자명, 소프트웨어 테스트를 수행한 결과 및 오류 발생시 오류 발생 영역 등)를 받아 리포트를 작성하며, 진행한 테스트의 과거 및 현재에 대한 모든 내용을 첨부할 수 있다. 예를 들어, 개발자가 진행했던 프로젝트별 테스트 수행 횟수, 테스트를 수행한 파일 목록, 과거 테스트를 진행한 테스트 별 테스트 결과 등으로 영역을 분할할 수 있으며, 이에 대해 각각의 리포트를 생성하여 출력할 수 있다.The report generation unit 142 generates a test report based on the data stored in the test result storage unit 152 of the database 150 (test execution date, test execution file name, name of the developer who developed the software, And an error occurrence area in the event of an error), and attaches all the past and present contents of the progressed test. For example, you can divide the area into the number of tests performed by the developer, the list of files that have been tested, and the test results for each test that has been tested in the past. have.

도 2는 본 발명에 따른 소프트웨어 회귀 검증 방법의 일 실시 예에 따른 흐름도이다. 2 is a flowchart according to an embodiment of the software regression verification method according to the present invention.

상기 커뮤니케이션 레이어(110)을 통해 테스트를 진행할 소스코드와 테스트 진행 명령이 인가되면, 전체 데이터 소스코드 중 적어도 일부의 테스트 소스코드를 개발자의 지시에 따라 데이터 케이스로 지정한다.(S210)When the source code to be tested and the test progress command are applied through the communication layer 110, at least some test source codes of all the data source codes are designated as data cases according to the instruction of the developer (S210)

상기 테스트 케이스를 데이터 베이스에 저장(S220)하고, 저장된 상기 테스트 케이스와 상기 전체 데이터 소스코드를 상기 테스팅 모듈(130)로 전송한다.(S230)The test case is stored in a database (S220), and the stored test case and the entire data source code are transmitted to the testing module 130 (S230)

전송된 상기 전체 데이터 소스코드 및 상기 테스트 케이스는 서버의 같은 폴더 안에 저장하고, 상기 테스트 소스코드를 상기 테스트 드라이버(132)를 통해 테스트를 진행한다.(S240)The entire data source code and the test case transmitted are stored in the same folder of the server, and the test source code is tested through the test driver 132 (S240)

상기 테스트 드라이버(132)는 상기 테스트 소스코드의 테스트를 진행함에 있어 상기 테스트 소스코드가 전체 소스코드가 아닌 전체 소스코드의 일부일 경우에는 객체지향언어(object-oriented language)로 구성되는 경우에만 테스트를 진행하며, 테스트 소스코드가 구성되면 상기 테스트 드라이버(132)는 상기 전체 소스코드에 있는 라이브러리 또는 클래스를 호출하여 라이브러리 또는 클래스 내에 있는 메소드(Method)들을 테스트하여 테스트 결과를 저장한다.When testing the test source code, the test driver 132 tests the test source code only when it is configured as an object-oriented language when the test source code is part of the entire source code, When the test source code is configured, the test driver 132 calls the library or class in the entire source code to test the methods in the library or class and store the test result.

상기 테스트 드라이버(132)에서 진행한 테스트의 결과는 상기 데이터베이스(150) 내부의 상기 테스트 결과 저장부(152)에 테스트 수행 날짜, 파일명, 개발자명, 테스트 결과 및 수행 횟수 등의 테스트 내용에 대하여 저장하며, 상기 테스트 내용은 각각의 테이블을 가지고 누적 저장한다.The result of the test conducted by the test driver 132 is stored in the test result storage unit 152 in the database 150 for test contents such as a test date, a file name, a developer name, a test result, And the contents of the test are cumulatively stored with respective tables.

상기 테스트 결과 저장부(152)에 저장된 테스트 내용을 상기 커뮤니케이션 레이어(110)의 요청에 따라 리포트를 구성하여 개발자 및 매니저에게 전송한다.The contents of the test stored in the test result storage unit 152 are configured according to a request of the communication layer 110 and transmitted to the developer and the manager.

따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다. 또한, 이상에서 실시 예들을 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시 예의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 실시 예들에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부한 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.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 construed as limiting the scope of the present invention. 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 the present invention may be embodied in many other specific forms without departing from the spirit or essential characteristics thereof.

110: 커뮤니케이션 레이어
120: 서브버전
121: 코드 저장소
122: 사용자 관리부
130: 테스팅 모듈
131: 테스트 관리부
132: 테스트 드라이버
140: 리포트 모듈
141: 데이터 관리부
142: 리포트 생성부
150: 데이터베이스
151: 테스트 케이스 저장부
152: 테스트 결과 저장부
110: Communication layer
120: Subversion
121: code store
122:
130: Testing module
131:
132: Test driver
140: Report module
141:
142: Report generation unit
150: Database
151: Test case storage unit
152: Test result storage section

Claims (6)

전체 데이터 소스코드 중 적어도 일부의 테스트 소스코드를 테스트 케이스로 지정하는 단계;
상기 테스트 케이스를 데이터베이스에 저장하는 단계;
상기 테스트 케이스의 테스트 소스코드와 상기 전체 데이터 소스코드를 테스팅 모듈로 전송하는 단계;
테스팅 모듈에서 테스트 드라이버를 이용하여 상기 테스트 소스코드에 대한 테스트를 수행하는 단계;
상기 테스트 결과를 데이터베이스에 저장하는 단계;
를 포함하는 소프트웨어 테스트 방법.
Designating at least a part of the test source code of the entire data source code as a test case;
Storing the test case in a database;
Transmitting the test source code of the test case and the entire data source code to a testing module;
Performing a test on the test source code using a test driver in a testing module;
Storing the test results in a database;
Lt; / RTI >
제1항에 있어서,
상기 테스트 모듈은 회귀 테스트 모듈을 사용하여 테스트를 진행하는 방법을 특징으로 하는 소프트웨어 테스트 방법
The method according to claim 1,
Wherein the test module is a software test method characterized by a method of conducting a test using a regression test module
제1항에 있어서,
상기 테스트 소스코드는 객체 지향 언어로 구성되어 테스트가 진행되는 것을 특징으로 하는 소프트웨어 테스트 방법
The method according to claim 1,
Wherein the test source code is composed of an object-oriented language and a test is performed.
제1항에 있어서,
상기 데이터베이스에는 테스트 수행 날짜, 파일명, 개발자명, 테스트 결과 및 수행 횟수를 각각의 테이블에 맞게 저장하는 것을 특징으로 하는 소프트웨어 테스트 방법
The method according to claim 1,
Wherein a test execution date, a file name, a developer name, a test result, and a run count are stored in the database in accordance with respective tables.
소스코드 및 사용자 관리 사항을 저장하는 서브버전(Subversion);
상기 소스코드의 일부 또는 전체가 지정된 테스트 케이스 및 테스트 결과를 저장하는 데이터베이스(database);
상기 데이터베이스에서 테스트 케이스를 가져와 상기 서브비전의 소스코드와 함께 테스트를 진행하고 테스트 결과를 상기 데이터 베이스에 전송하는 테스팅 모듈;
상기 데이터베이스에 저장된 테스트 결과를 가져와 결과 리포트를 생성하는 리포트 모듈(report module);로 구성되는 소프트웨어 회귀 테스트 시스템
Subversion for storing source code and user management;
A database storing a test case and a test result in which part or all of the source code is designated;
A testing module that takes a test case from the database and performs a test with the source code of the subvision and transmits the test result to the database;
And a report module for obtaining a test result stored in the database and generating a result report,
제5항에 있어서,
상기 테스팅 모듈은 상기 소스코드와 상기 테스트 케이스를 받아 회귀 테스트를 진행하는 테스트 드라이버와 상기 테스트 드라이버의 진행을 관리하는 테스트 관리부로 구성되는 소프트웨어 회귀 테스트 시스템
6. The method of claim 5,
Wherein the testing module comprises a source code and a software regression test system configured to receive the test case and configured to include a test driver for regression testing and a test manager for managing the progress of the test driver,
KR1020160160214A 2016-11-29 2016-11-29 Regression test automation system for improving software development quality KR20180060573A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160160214A KR20180060573A (en) 2016-11-29 2016-11-29 Regression test automation system for improving software development quality

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160160214A KR20180060573A (en) 2016-11-29 2016-11-29 Regression test automation system for improving software development quality

Publications (1)

Publication Number Publication Date
KR20180060573A true KR20180060573A (en) 2018-06-07

Family

ID=62621169

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160160214A KR20180060573A (en) 2016-11-29 2016-11-29 Regression test automation system for improving software development quality

Country Status (1)

Country Link
KR (1) KR20180060573A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650668A (en) * 2019-10-12 2021-04-13 中国石油化工股份有限公司 Geophysical prospecting interpretation software testing method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650668A (en) * 2019-10-12 2021-04-13 中国石油化工股份有限公司 Geophysical prospecting interpretation software testing method

Similar Documents

Publication Publication Date Title
US11467952B2 (en) API driven continuous testing systems for testing disparate software
CN110569035B (en) Code compiling method, device, equipment and storage medium of software development project
CN102681835A (en) Code clone notification and architectural change visualization
CN110941630A (en) Database operation and maintenance method, device and system
CN112711403B (en) Method, device, computer equipment and storage medium for synchronizing game development
US9582270B2 (en) Effective feature location in large legacy systems
CN109977012B (en) Joint debugging test method, device, equipment and computer readable storage medium of system
Lepmets et al. Development and benefits of MDevSPICE®, the medical device software process assessment framework
KR20180061589A (en) Software build system and software build method using the system
US20150082287A1 (en) Scenario based test design
CN114610598A (en) Test method, test device, electronic equipment and computer readable storage medium
CN116450107B (en) Method and device for secondary development of software by low-code platform and electronic equipment
US11144314B2 (en) Systems and methods for software documentation and code generation management
KR20180060573A (en) Regression test automation system for improving software development quality
CN117112060A (en) Component library construction method and device, electronic equipment and storage medium
KR101381231B1 (en) System and method for developing web-based enterprise applications under agile process
CN114116664B (en) Database table-building sentence processing method, device, computer equipment and storage medium
Isagah et al. Framework for designing m-government services in developing countries
US11928627B2 (en) Workflow manager
CN113032004B (en) Method, apparatus and program product for managing development jobs in a development environment
CN110737426B (en) Program block creating method, program block creating device, computer equipment and storage medium
CN112328503A (en) Task acceptance method for software development working platform
US20190251015A1 (en) Mainframe testing framework
CN112699023B (en) Project interface testing method and device, computer equipment and storage medium
CN113052463B (en) Workflow verification method, workflow verification device, computer equipment and storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application