KR100949875B1 - Autotest system based framework of 3 dimensional application software and method thereof - Google Patents
Autotest system based framework of 3 dimensional application software and method thereof Download PDFInfo
- Publication number
- KR100949875B1 KR100949875B1 KR1020080045885A KR20080045885A KR100949875B1 KR 100949875 B1 KR100949875 B1 KR 100949875B1 KR 1020080045885 A KR1020080045885 A KR 1020080045885A KR 20080045885 A KR20080045885 A KR 20080045885A KR 100949875 B1 KR100949875 B1 KR 100949875B1
- Authority
- KR
- South Korea
- Prior art keywords
- test
- function
- user
- application software
- framework
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Debugging And Monitoring (AREA)
Abstract
본 발명은 3차원 응용소프트웨어 프레임워크 기반의 자동 테스트 시스템 및 그 방법에 관한 것으로, 특히, 프레임워크 기반으로 사용자에 의한 기능(function) 실행 이력을 기록하여 테스트 케이스를 자동 생성함으로 GUI 및 소스코드 변경에 상관없이 상기 테스트 케이스를 이용하여 해당 응용소프트웨어의 기능을 자동 테스트할 수 있도록 하는데 그 목적이 있다. 상기 목적을 달성하기 위하여 본 발명은 적어도 하나 이상의 테스트 케이스를 저장하는 데이터베이스(이하 'DB'라 약칭함)(240)와, 프레임워크의 기능관리 모듈(120)을 기반으로 구현하여 프로세스 테스트가 실행되면 상기 DB(240)에 기록된 해당 테스트 케이스를 기반으로 3차원 응용소프트웨어에 대해 자동 테스트를 실행하고 그 실행결과를 사용자에게 제공하는 자동 테스트 처리기(220)와, 프레임워크의 모델링 커널(140)을 기반으로 프로세스 테스트의 각 테스트 단계별로 상기 DB(240)에 저장된 모델 데이터와 비교/검증하고 그 검증결과를 상기 자동 테스트 처리기(220)에 통보하는 모델 테스트 컴포넌트(250)와, 프레임워크의 기능관리 컴포넌트(120)에 추가되어 사용자에 요청에 따라 상기 자동 테스트 처리기(220)의 동작 방식을 설정하고 자동 테스트를 실행시키는 자동테스트 제어기(210)를 포함하여 구성함을 특징으로 한다. The present invention relates to an automatic test system and method based on a 3D application software framework, in particular, GUI and source code change by automatically generating test cases by recording function execution history by a user based on the framework. Regardless of the purpose, the test case can be used to automatically test the function of the application software. In order to achieve the above object, the present invention implements a process test based on a database storing at least one or more test cases (hereinafter, abbreviated as 'DB') 240 and a function management module 120 of the framework. And an automatic test processor 220 that executes an automatic test on the 3D application software based on the test case recorded in the DB 240 and provides the execution result to the user, and the modeling kernel 140 of the framework. A model test component 250 for comparing / verifying with the model data stored in the DB 240 based on each test step of the process test and notifying the automatic test processor 220 of the verification result thereof, and a function of a framework Added to the management component 120 to set the operation of the automatic test processor 220 upon request of a user and to execute automatic testing Key is characterized in that it comprises an automatic test controller 210.
자동 테스트, 단위 기능 자동 테스트, 프로세스 테스트, 프레임워크, 3차원 Automated Testing, Unit Functional Testing, Process Testing, Frameworks, 3D
Description
본 발명은 3차원 응용소프트웨어 프레임워크 기반의 테스트 기술에 관한 것으로, 특히, 자동 테스트 시스템 및 그 방법에 관한 것이다. The present invention relates to a three-dimensional application software framework based test technology, and more particularly, to an automated test system and method thereof.
현재 3차원 응용소프트웨어는 CAD, 게임(Game) 분야는 물론 기업 R&D 중요성의 확대로 CAE 시스템 분야에 도입이 활발히 증가하고 있다. Currently, 3D application software has been actively introduced into the CAE system field due to the expansion of the importance of enterprise R & D as well as the CAD and game fields.
3차원 응용소프트웨어는 고유의 모델 및 이와 관련한 모델링 기능을 필요로 하고, 공통적으로 모델의 렌더링(Rendering), 디스플레이(Display) 및 Selection, Undo/Redo Function 관리 기능 등을 필요로 한다. Three-dimensional application software requires its own model and related modeling functions, and commonly requires rendering, display and selection of models, and management of Undo / Redo functions.
특히, 3차원 응용소프트웨어에 있어서 대부분의 모델링 기능은 뷰윈도우 상에서 마우스에 의한 모델 선택 작업으로 시작되며, 하나의 기능을 수행하기 위해 여러 단계의 복잡한 모델 선택 작업이 수반되는 등, 모델 선택 작업은 3차원 응용소프트웨어의 편의성과 생산성을 결정하는 중요한 요소라 할 수 있다.In particular, in 3D application software, most modeling functions begin with the model selection operation by the mouse on the view window, and the model selection operation involves 3 steps of complex model selection to perform one function. It is an important factor that determines the convenience and productivity of dimensional application software.
예로 들어, 3차원 모델링 기능의 모델 선택 작업은 모델을 투영하는 미 러(Mirror) 기능의 경우, 첫번째 투영할 모델 요소를 마우스 클릭이나 드래그로 선택하고, 두번째 세 개의 정점이나 폴리곤(Polygon)을 선택하는 등의 작업을 거쳐 투영의 기준이 되는 3차원 평면을 생성/선택하며, 세번째 평면의 위치를 선택하는 작업으로 이루어진다.For example, the 3D modeling function selects the model to mirror the model. For the mirror function, the model element to be projected is selected by mouse clicking or dragging, and the second three vertices or polygons are selected. The 3D plane that is the reference of the projection is generated and the third plane is selected, and the position of the third plane is selected.
이에 따라, 현재 3차원 영상 및 3D 영상의 모델링을 지원하기 위한 다양한 기술 및 이를 기반으로 하는 가전 및 전자기기의 상용화를 위한 기술 개발이 활발히 이루어지고 있다. Accordingly, various technologies for supporting modeling of 3D images and 3D images and technologies for commercialization of home appliances and electronic devices based thereon have been actively developed.
또한, 가전 및 전자기기에서의 3차원 영상 및 3D 영상의 디스플레이를 위해서는 해당 콘텐츠의 개발이 수반되어야 하는데, 이를 위해 다양한 종류의 3차원 응용소프트웨어가 제시되어 있다. In addition, in order to display 3D images and 3D images in home appliances and electronic devices, the development of corresponding contents should be accompanied. Various types of 3D application software have been proposed for this purpose.
현재 상용화된 3차원 응용소프트웨어 프레임워크 제품으로는 미국 Tech Soft 3D사(www.techsoft3d.com)의 HOOPS가 있으며, 유사한 분야의 관련 상용화 제품으로 노르웨이 Ceetron ASA사(www.ceetron.com)의 GLView, 미국 Codejock Software사(www.codejock.com)의 ExtremeToolkit 등이 있다. Current commercially available 3D application software framework products include HOOPS of Tech Soft 3D (www.techsoft3d.com) in the US, and GLView, Norway's Ceetron ASA (www.ceetron.com) ExtremeToolkit from Codejock Software Inc. (www.codejock.com) in the United States.
한편, 3차원 응용소프트웨어 분야에 있어서, 3차원 모델링을 위한 전용 해석시스템의 개발 수요가 증가하고 있는 것은 물론 공학분야 이외에도 의학, 교육, 가상현실 등과 같은 3차원 모델링 응용소프트웨어 개발분야로 확대되고 있다. Meanwhile, in the three-dimensional application software field, the demand for developing a dedicated analysis system for three-dimensional modeling is increasing, and in addition to the engineering field, it is expanding to the three-dimensional modeling application software development field such as medicine, education, and virtual reality.
따라서, 향후 3차원 모델링을 위한 개발도구 및 컴포넌트의 역할이 매우 중요시되고 관련 시장은 지속적으로 확대될 것으로 예상된다. Therefore, the role of development tools and components for 3D modeling is very important in the future and the related market is expected to continue to expand.
그런데, 3차원 모델링 응용소프트웨어에 대한 고객요구수준이 높아짐에 따라 소프트웨어 개발기간과 비용 증가는 물론 프로그램의 크기가 커짐에 따라 품질 확보 방안이 갈수록 중요해지고 있으며, 3차원 모델링 응용소프트웨어를 개발하는 경우 그 해당 3차원 모델링 응용소프트웨어의 성능과 신뢰성을 테스트할 필요가 있을 것이다. However, as the level of customer demand for 3D modeling application software increases, the quality development plan becomes more important as the software development period and cost increase as well as the size of the program, and when developing 3D modeling application software, You will need to test the performance and reliability of the 3D modeling application software.
이를 위한 기술로는 화이트박스 자동 테스트 기술과 블랙박스 자동 테스트 기술이 제시되어 있다. For this purpose, the white box automatic test technique and the black box automatic test technique are presented.
상기 화이트박스 자동 테스트 기술은 소스 코드를 기반으로 테스트 케이스를 자동 생성하고 이를 이용하여 응용소프트웨어의 성능과 잠재적인 오류를 자동으로 테스트하는 기술이다. The white box automatic test technology is a technology for automatically generating test cases based on source code and automatically testing the performance and potential errors of application software.
하지만, 종래의 화이트박스 자동 테스트 기술은 소스코드를 기반으로 테스트 케이스를 생성함으로 무한한 경우의 수가 존재하는 사용자의 모델 선택 동작에 대해 신뢰성있는 테스트 케이스 생성이 불가능하다는 문제점이 있다. However, the conventional white box automatic test technique has a problem in that it is impossible to generate a test case reliably for a user's model selection operation in which an infinite number of cases exist by generating a test case based on source code.
또한, 종래의 화이트박스 자동 테스트 기술은 재생 시에 함수호출 및 변수값 조정을 필요로 함은 물론 소스코드 변경 시에 테스트 케이스를 재생성하여야 하는 문제점이 있다. In addition, the conventional white box automatic test technique requires a function call and variable value adjustment at the time of reproduction, as well as a problem of regenerating the test case when the source code is changed.
또한, 종래의 화이트박스 자동 테스트 기술은 소스코드 분석에 의해 테스트 케이스를 생성함으로 view 조작 테스트 케이스 및 selection 테스트 케이스의 생성이 불가능하고, 함수별 입/출력 데이터를 저장하여야 함으로 용량이 큰 모델 데이터의 경우 메모리 용량이 과도하게 증가하게 되어 적용이 불가능하다는 문제점이 있다. In addition, the conventional white box automatic test technique generates a test case by source code analysis, which makes it impossible to generate a view manipulation test case and a selection test case, and to store input / output data for each function. In this case, there is a problem in that the memory capacity is excessively increased and thus cannot be applied.
그리고, 상기 블랙박스 자동 테스트 기술은 사용자가 조작한 GUI의 이벤트를 기록하여 테스트 케이스를 생성하고, 재생함으로써 해당 응용소프트웨어의 테스트를 자동화하는 기술이다.In addition, the black box automatic test technology is a technology for automating the test of the corresponding application software by generating and reproducing a test case by recording an event of a GUI manipulated by a user.
상기 블랙박스 자동 테스트 기술의 일례로는 미국 등록특허 05335342호(명칭 : Automated software testing system)이 있는데, 이 기술은 마우스와 키보드 등의 사용자 입력동작을 기록하고, 그 사용자 입력에 의한 결과 화면을 이미지로 저장하여, 상기 저장된 데이터를 기반으로 사용자 입력 동작을 재생하여, 응용소프트웨어의 테스트를 자동화하고, 결과 화면을 저장된 이미지와 비교함으로써 테스트 결과를 검증하는 기술이다. An example of the black box automatic test technique is US Patent No. 05335342 (name: Automated software testing system), which records user input operations such as a mouse and keyboard, and displays the result screen by the user input. It is a technique for verifying the test results by storing as, by reproducing the user input operation based on the stored data, automating the test of the application software and comparing the result screen with the stored image.
그러나, 종래의 블랙 박스 자동 테스트 기술은 마우스와 키보드 등의 사용자 입력 동작을 기록함으로써 모델 선택 동작을 재연하고 테스트할 수는 있으나, 모델 선택 결과에 직접적인 영향을 미치는 화면 조작(예로, 회전, 확대/축소, 이동) 속도와 모델 선택의 감도(범위) 및 방법 등의 사용자 환경변수가 테스트 케이스 생성 후에 변경되면 동일한 작업 결과를 얻을 수 없어 해당 응용소프트웨어의 기능 테스트가 불가능하다는 문제점이 있다. 즉, 사용자에 의한 GUI 이벤트를 기록하여 테스트 케이스를 생성하는 종래의 블랙 박스 자동 테스트 기술은 해당 GUI 요소 식별자가 변경되거나 하나의 GUI 요소를 여러 개로 분리함에 의해 GUI가 변경되는 경우에는 테스트 케이스를 재생성하여야 하는 문제점이 있다. However, the conventional black box automatic test technique can reproduce and test a model selection operation by recording user input operations such as a mouse and a keyboard, but screen operations (eg, rotation, enlargement / If the user environment variables such as the speed of reduction and movement and the sensitivity (range) and method of model selection are changed after the test case is generated, the same work result cannot be obtained, which makes it impossible to test the function of the application software. That is, the conventional black box automatic test technique of recording a GUI event by a user to generate a test case regenerates a test case when the GUI is changed by changing the corresponding GUI element identifier or separating one GUI element into several. There is a problem to be done.
또한, 종래의 블랙박스 자동 테스트 기술은 사용자 조작을 기록하여 테스트 케이스로 생성하고 재생하는 프로세스 테스트와 성능 테스트만이 가능하며, 테스트 결과 비교를 화면 이미지 비교를 통해서만 수행하므로 화면에 표시되지 않는 데이터의 비교가 불가능하며, 복잡하고 다양한 구성 요소를 갖는 모델 데이터는 단순 이미지 비교만으로는 모델링의 유효하지 않은 결과 오류의 분석과 대처가 힘들다는 문제점도 있다. 즉, 종래의 블랙박스 자동 테스트 기술은 view 조작 처리 속도에 따라 결과가 달라짐으로 이벤트만으로는 view 조작 재연이 불가능하고, view 조작의 정확한 재연이 불가능함으로 selection 테스트가 불가능하며, 이미지만을 비교하는 것임으로 그래픽 카드, 배경색, 모델컬러 등의 많은 요인에 의해 모델 데이터의 비교가 불가능하고, GUI 이벤트 단위의 테스트임으로 정확한 오류 지점 파악이 어려움은 물론 기능 단위의 검증 및 분석이 어렵다는 문제점이 있다. In addition, the conventional black box automatic test technique can only perform process test and performance test that record and manipulate user's operation as a test case, and perform performance test only. It is impossible to compare, and there is a problem that model data having complex and diverse components is difficult to analyze and cope with invalid result errors of modeling by simply comparing images. That is, in the conventional black box automatic test technique, the results are different according to the view manipulation processing speed, so it is impossible to replay the view manipulation only by the event, and the selection test is impossible because the view manipulation cannot be accurately reproduced. Model data cannot be compared due to many factors such as card, background color, and model color, and there is a problem that it is difficult to accurately identify an error point as well as to verify and analyze a functional unit because it is a GUI event unit test.
따라서, 본 발명은 종래의 문제점을 개선하기 위하여, 사용자에 의한 기능(function) 실행 이력을 기록하여 테스트 케이스를 자동 생성함으로 GUI 및 소스코드 변경에 상관없이 상기 테스트 케이스를 이용하여 해당 응용소프트웨어의 기능을 테스트할 수 있도록 창안한 3차원 응용소프트웨어 프레임워크 기반의 자동 테스트 시스템 및 그 방법을 제공하는데 목적이 있다. Therefore, in order to improve the conventional problem, the present invention records a function execution history by a user and automatically generates a test case so that the function of the corresponding application software can be used by using the test case regardless of GUI and source code change. The purpose of the present invention is to provide an automated test system and method based on the 3D application software framework, which can be used to test.
즉, 본 발명은 사용자 작업 이력을 기록하여 테스트 케이스를 자동 생성함으로 환경변수(preference) 변경 시에도 view 조작 및 selection의 정확한 재연 및 검증이 가능함은 물론 기능 단위로 결과 모델 데이터의 비교 검증, 기능 단위의 성능 및 정확한 오류 지점 파악 등과 같은 기능단위의 테스트를 가능하도록 하는데 목적이 있다. That is, the present invention records the user's work history and automatically generates a test case to enable accurate reproduction and verification of view manipulation and selection even when changing a preference, as well as comparison and verification of the result model data in functional units, and functional units. Its purpose is to enable the testing of functional units such as performance and pinpoint error points.
본 발명은 상기의 목적을 달성하기 위하여, 사용자가 구현하고자 하는 3차원 응용소프트웨어의 틀에 해당하는 사용자 메인 모듈(예를 들어, 실행 파일을 생성하는 모듈)과, 사용자가 구현한 모델링 기능 등의 사용자 기능을 등록하는 사용자 기능 모듈과, 등록된 사용자 기능의 동작을 제어하는 기능 관리자와 운영체제와 같이 프레임워크를 운영하는 프레임워크 처리기를 포함하는 기능관리 컴포넌트와, 상기 3차원 모델 라이브러리를 기반으로 디스플레이된 다양한 종류의 모델에 대한 선택 처리를 수행하는 모델선택처리 컴포넌트와, 상기 컴포넌트는 물론 3차원 모델링 커널, 모델링 기능, 디스플레이 기능 및 GUI 기능 등의 사용자 확장이 가능한 컴포넌트들을 상기 사용자 메인모듈에 연결하며, 상기 컴포넌트들의 동작을 제어하는 프레임워크(framework) 시스템을 포함하는 3차원 응용소프트웨어를 테스트하는 시스템에 있어서, 적어도 하나 이상의 테스트 케이스를 저장하는 데이터베이스(DataBase, 이하 'DB'라 약칭함)와, 단위 기능의 테스트 케이스를 생성하고 그 생성된 테스트 케이스를 상기 DB에 저장하며 GUI(Graphic User Interface)에 대한 테스트를 수행하는 GUI 자동테스트 컴포넌트와, 단위기능 자동 테스트 또는 프로세스 테스트가 실행되면 상기 DB에 기록된 해당 테스트 케이스를 기반으로 3차원 응용소프트웨어에 대해 자동 테스트를 실행하고 그 실행결과를 사용자에게 제공하는 자동 테스트 처리기와, 단위 기능 자동 테스트와 프로세스 테스트에서 각 테스트 단계별로 상기 DB에 저장된 모델 데이터와 비교/검증하고 그 검증결과를 상기 자동 테스트 처리기에 통보하는 모델 테스트 컴포넌트와, 사용자에 의한 자동 테스트를 감지하면 상기 자동 테스트 처리기의 동작을 실행시키는 자동테스트 제어기를 포함하여 구성함을 특징으로 한다. In order to achieve the above object, the present invention provides a user main module (for example, a module for generating an executable file) corresponding to a framework of 3D application software that a user intends to implement, and a modeling function implemented by the user. A function management component including a user function module for registering user functions, a function manager for controlling the operation of registered user functions, a framework processor for operating a framework such as an operating system, and a display based on the 3D model library A model selection processing component which performs selection processing on various types of models, and user-extensible components such as a 3D modeling kernel, a modeling function, a display function, and a GUI function, as well as the component, are connected to the user main module. Framework for controlling the operation of the components (framewor k) A system for testing three-dimensional application software including a system, comprising: a database storing at least one or more test cases (abbreviated as 'DB'), a test case of a unit function, and generated A GUI automatic test component that stores test cases in the DB and performs a test on a GUI (Graphic User Interface), and when a unit function automatic test or process test is executed, a 3D application based on the corresponding test case recorded in the DB. An automatic test processor which executes an automatic test on the software and provides the result of the execution to the user, and compares / verifies the model data stored in the DB for each test step in the unit function automatic test and the process test and automatically verifies the verification result. Use with a model test component that notifies the test processor And an automatic test controller for executing the operation of the automatic test processor when the automatic test is detected by the ruler.
상기 자동 테스트 처리기는 단위 기능의 자동 테스트가 실행되면 상기 GUI 자동테스트 컴포넌트를 실행시켜 해당 테스트 케이스를 생성/저장시키고, 상기 DB에 기록된 해당 테스트 케이스를 기반으로 3차원 응용소프트웨어에 대해 단위 기능의 자동 테스트를 실행하며, 프로세스 테스트가 실행되면, 사용자의 응용소프트웨어 조작을 기록하여 상기 DB에 테스트 케이스를 생성/저장시키고, 상기 DB에 기록된 해당 테스트 케이스를 기반으로 3차원 응용소프트웨어에 대해 프로세스 테스트를 실행하며, 상기 실행결과를 사용자에게 제공하도록 구성함을 특징으로 한다. When the automatic test of the unit function is executed, the automatic test processor executes the GUI auto test component to generate / store the corresponding test case, and based on the test case recorded in the DB, the unit test function of the unit function for the 3D application software is executed. Automatic test is executed, and when the process test is executed, the user's application software operation is recorded to generate / store the test case in the DB, and process test is performed on the 3D application software based on the test case recorded in the DB. And to provide the execution result to the user.
상기 자동 테스트 제어기는 상기 사용자 기능 모듈에 삽입(추가)되어 3차원 응용소프트웨어에 단위 기능 자동 테스트 및 프로세스 테스트의 제어 기능을 추가시키도록 구성함을 특징으로 한다. The automatic test controller may be inserted (added) into the user function module to add a control function of unit function automatic test and process test to 3D application software.
상기 자동 테스트 처리기는 기능관리 컴포넌트의 프레임워크 처리기를 기반으로 구현되고 상기 기능관리 컴포넌트의 프레임워크 처리기를 대체함으로써 3차원 응용소프트웨어에 단위 기능 자동 테스트 및 프로세스 테스트의 처리 기능을 추가시키도록 구성함을 특징으로 한다. The automatic test processor is implemented based on the framework processor of the function management component and is configured to add the processing function of the unit function automatic test and process test to the 3D application software by replacing the framework processor of the function management component. It features.
상기 GUI 자동테스트 컴포넌트는 GUI 컴포넌트를 기반으로 구현되고 상기 GUI 컴포넌트를 대체함으로써 3차원 응용소프트웨어에 단위 기능 자동 테스트를 위한 샘플링 값에 따른 테스트 케이스 생성 기능과 GUI 테스트 기능을 추가시키도록 구성함을 특징으로 한다. The GUI automatic test component is implemented based on a GUI component and is configured to add a test case generation function and a GUI test function according to a sampling value for unit function automatic test by replacing the GUI component. It is done.
상기 모델 테스트 컴포넌트는 3차원 모델링 커널을 기반으로 구현되고 상기 3차원 모델링 커널을 대체함으로써 3차원 응용소프트웨어에 단위 기능 자동 테스트와 프로세스 테스트의 각 테스트 단계별로 DB에 저장된 모델 데이터와의 보다 정밀한 비교/검증 기능을 추가시키도록 구성함을 특징으로 한다. The model test component is implemented based on the three-dimensional modeling kernel and replaces the three-dimensional modeling kernel so that a more precise comparison with the model data stored in the DB for each test step of automatic unit function test and process test in the three-dimensional application software / It is configured to add a verification function.
또한, 본 발명은 상기의 목적을 달성하기 위하여, 사용자가 구현하고자 하는 3차원 응용소프트웨어의 틀에 해당하는 사용자 메인 모듈과, 사용자가 구현한 모델링 기능 및 작동기능을 등록하는 사용자 기능 모듈과, 모델링 구현 동작을 지원하는 기능관리 컴포넌트와, 상기 3차원 모델 라이브러리를 기반으로 디스플레이된 다양한 종류의 모델에 대한 선택 처리를 수행하는 모델선택처리 컴포넌트와, 상기 컴포넌트는 물론 3차원 모델링 커널, 모델링 기능, 디스플레이 기능 및 GUI 기능 등의 사용자 확장이 가능한 컴포넌트들을 상기 사용자 메인모듈에 연결하며, 상기 컴포넌트들의 동작을 제어하는 프레임워크(framework) 시스템을 포함하는 3차원 응용소프트웨어를 테스트하는 방법에 있어서, 자동 테스트의 실행을 판단하는 단계와, 자동 테스트의 실행으로 판단되면 해당 테스트 케이스를 생성하여 저장하는 단계와, 상기 생성/저장된 해당 테스트 케이스를 기반으로 3차원 응용소프트웨어를 테스트하는 단계와, 상기 테스트 결과를 사용자에게 제공하는 단계를 포함하여 구성함을 특징으로 한다. In addition, the present invention, in order to achieve the above object, the user main module corresponding to the framework of the three-dimensional application software to be implemented by the user, the user function module for registering the user-implemented modeling and operating functions, modeling A function management component supporting an implementation operation, a model selection processing component performing selection processing on various types of models displayed based on the 3D model library, and the 3D modeling kernel, modeling function, and display as well as the component A method of testing three-dimensional application software including a framework system for connecting a user extensible component such as a function and a GUI function to the user main module and controlling the operation of the components, Judging the execution and running the automatic test And determining that the test case is generated, storing the test case, testing the 3D application software based on the generated test case, and providing the test result to the user. It is done.
상기 3차원 응용소프트웨어를 테스트하는 단계는 프로세스 테스트가 실행되면 사용자의 응용소프트웨어 조작을 기록하여 해당 테스트 케이스를 생성/저장시키 는 과정과, 상기 테스트 케이스를 기반으로 3차원 응용 프로그램에 대해 프로세스 테스트를 실행하는 과정으로 이루어짐을 특징으로 한다. In the testing of the 3D application software, when the process test is executed, the process of recording the user's application software operation to generate / store the corresponding test case, and perform the process test on the 3D application based on the test case. It is characterized by consisting of a process of execution.
상기 3차원 응용소프트웨어를 테스트하는 단계는 프로세스 테스트의 각 테스트 단계별로 상기 DB에 저장된 모델 데이터와 비교/검증하는 과정과, 상기 검증결과를 해당 테스트 단계에 피드백시켜 사용자에게 통지하는 과정을 더 포함하여 이루어짐을 특징으로 한다. The testing of the 3D application software further includes a process of comparing / verifying the model data stored in the DB in each test step of the process test, and feeding back the verification result to the corresponding test step to notify the user. Characterized in that made.
따라서, 상기와 같이 구현하는 본 발명은 3차원 모델링 응용소프트웨어에 대해 GUI 기반으로 테스트 케이스를 자동 생성하는 단위 기능 자동 테스트를 실행하며, 처리 속도, 메모리 및 오류 테스트를 가능하게 함으로써 3차원 응용 프로그램의 신뢰성을 향상시킬 수 있는 효과를 발휘하게 된다. Accordingly, the present invention, implemented as described above, executes the unit function automatic test for automatically generating test cases based on the GUI for the 3D modeling application software, and enables processing speed, memory, and error testing to execute the 3D application program. The effect is to improve the reliability.
또한, 본 발명은 3차원 모델 데이터, 화면 조작, 모델 선택 등의 실질적인 결과 데이터의 비교 및 검증이 가능함은 물론 사용자 환경 변수 및 테스트 환경을 기록하여 항시 동일한 테스트를 반복 수행할 수 있도록 하는 효과가 있다. In addition, the present invention is capable of comparing and verifying actual result data such as 3D model data, screen manipulation, model selection, etc., as well as recording a user environment variable and a test environment so that the same test can be repeated at all times. .
특히, 본 발명은 단위 기능 테스트와 프로세스 테스트에 의해 3차원 응용소프트웨어의 모든 기능에 대해 성능, 메모리, 오류 등을 테스트하는 것은 물론 테스트 기능에 영향을 미치는 사용자 환경변수 등을 포함하는 모든 실행 환경을 기록함으로써 3차원 화면 조작이나 모델 선택 작업 등의 신뢰성있는 테스트가 어려운 종래의 자동 테스트 기술에서의 문제점을 보완할 수 있고, 3차원 모델과 같은 복잡한 결과 데이터도 정확하게 비교/분석하여, 사용자가 신속하게 오류를 수정할 수 있도 록 실질적으로 도움을 주는 3차원 응용소프트웨어 프레임워크 기반의 자동테스트 컴포넌트를 제공함으로써, 프레임워크 사용자가 개발하는 3차원 응용소프트웨어에 대해 최소의 노력으로 자동 테스트 기능을 수행할 수 있다. In particular, the present invention tests all the execution environment including the user environment variables affecting the test function as well as testing the performance, memory, error, etc. for all the functions of the 3D application software by unit function test and process test. By recording, the problem can be solved in the conventional automatic test technique, which is difficult to reliably test such as 3D screen manipulation or model selection, and the user can quickly compare and analyze complex result data such as 3D model. By providing automated test components based on the 3D application software framework that can help to correct errors, the automatic test function can be performed with minimal effort on the 3D application software developed by the user of the framework. .
이하, 본 발명의 실시 예에 대한 동작을 도면에 의거하여 상세히 설명하면 다음과 같다. Hereinafter, an operation of an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도1은 본 발명의 실시 예를 위한 프레임워크 구조를 보인 도면으로, 이에 도시한 바와 같이, History/Batch Operation, Redo/Undo, 프레임워크 처리기 등의 기능을 포함하여 모델 구현 및 등록 기능을 지원하는 기능관리 컴포넌트(120)와, 사용자가 구현한 3차원 응용소프트웨어의 작동기능(모델링, 디스플레이 조작 기능 등)을 등록하는 사용자 기능 모듈(130)과, 3차원 모델링 유틸리티(Utility)를 포함하며, 사용자가 확장 가능한 모델링기능 컴포넌트(141)와, 적어도 하나 이상의 3차원 모델 데이터를 관리하며, 사용자가 확장 가능한 모델링 커널(142)와, 상기 모델링 커널(142)을 기반으로 다양한 종류의 모델 디스플레이 및 뷰잉(viewing)(예를 들어, 이동, 회전, 확대/축소 등)을 지원하며, 사용자가 확장 가능한 디스플레이 컴포넌트(151)와, OpenGL, DirectX 등과 같은 렌더링 툴(Rendering Tool)을 지원하도록 사용자가 확장 가능한 렌더링 컴포넌트(152)와, 상기 모델링 커널(142)를 기반으로 디스플레이된 모델에 대한 선택 처리를 수행하는 모델선택처리 컴포넌트(153)와, 모델 디스플레이, 선택 및 뷰잉 등의 동작에 관련하여 사용자와의 인터페이스를 제공하며, 사용자가 확장 가능한 GUI(Graphic User Interface) 컴포넌 트(160)와, 사용자가 구현하고자 하는 3차원 응용소프트웨어의 틀에 해당하는 사용자 메인 모듈(170)과, 상기 사용자 메인모듈(170)과 상기 각 컴포넌트를 연결하고, 상기 각 컴포넌트들의 동작을 제어하는 프레임워크 시스템(framework system)(110)를 포함하여 구성한다. 1 is a diagram illustrating a framework structure for an embodiment of the present invention. As shown in FIG. 1, a model implementation and registration function is supported to include a history / batch operation, a redo / undo, and a framework processor. It includes a
상기 GUI 컴포넌트(160)는 플랫폼에 독립적으로 구현되며, GUI 플랫폼의 대표적인 예로는 MFC(Microsoft Foundatio Class), QT 등이 있다. The
상기 MFC(Microsoft foundation class)는 윈도즈용 응용 프로그램의 통합 개발 환경인 마이크로소프트 비주얼 C++에 부속되는 클래스 라이브러리로서, 윈도즈 응용 프로그램 작성에 유용한 많은 클래스를 제공한다. The MFC (Microsoft foundation class) is a class library included with Microsoft Visual C ++, which is an integrated development environment for Windows applications, and provides many classes useful for writing Windows applications.
또한, 상기 QT는 GUI 프로그램 개발을 위한 크로스 플랫폼 위젯 툴킷으로, 주로 C++를 사용하지만, 파이썬, 루비, C, 펄, 파스칼(pascal)로의 바인딩을 제공하고 있는데, SQL 데이터베이스 접근, XML 처리, 스레드 관리, 단일 크로스 플랫폼 파일 관리 API를 제공한다.In addition, QT is a cross-platform widget toolkit for GUI program development. It mainly uses C ++, but provides bindings to Python, Ruby, C, Perl, and Pascal. It provides SQL database access, XML processing, and thread management. It provides a single cross-platform file management API.
상기 위젯(widget)은 (1).컴퓨터에서 운영 체계(OS) 위의 응용 프로그램을 동작시키고 결과를 화면에 표시하는 작은 그래픽 사용자 인터페이스(GUI) 도구 또는 (2).응용 프로그램 작성 시에 자주 이용하는 사용자 중심의 그래픽과 데이터 처리 프로그램들을 모은 라이브러리를 의미한다. 예를 들어, X 윈도우가 윈도 관리자에 따라서 서로 다른 모습을 가지는 것은 위젯 라이브러리가 다르기 때문이다. 현재 가장 많이 사용되는 위젯 라이브러리는 리눅스 데스크톱 환경(KDE)의 QT 라이브러리와 GNOME의 GTK+ 라이브러리가 있다. The widget may be (1) a small graphical user interface (GUI) tool that runs an application on an operating system (OS) on a computer and displays the results, or (2) frequently used when writing an application. A library of user-oriented graphics and data processing programs. For example, X windows look different depending on the window manager because the widget libraries are different. The most popular widget libraries are the QT library of the Linux Desktop Environment (KDE) and the GTK + library of GNOME.
상기와 같이 구성한 도1의 프레임워크는 3차원 응용소프트웨어 개발자에게 제공되어진다. The framework of FIG. 1 configured as described above is provided to a 3D application software developer.
이에 따라, 사용자는 본 발명의 프레임워크의 컴포넌트를 필요에 따라 확장하거나 새로 구현함으로써 3차원 응용소프트웨어를 손쉽게 구현할 수 있게 된다. Accordingly, the user can easily implement 3D application software by extending or newly implementing the components of the framework of the present invention as needed.
한편, 3차원 응용소프트웨어 프레임워크를 기반으로 상기 도1의 사용자 응용소프트웨어를 개발하는 과정은 개발자 정의의 작업 프로젝트(project)를 생성하고, 사용자 메인모듈(170)을 구현하는 단계와, 프레임워크 시스템(110)와 상기 사용자 메인모듈(170)을 연결하는 단계와, 프레임워크의 3차원 모델링 기능(141)과 3차원 모델링 커널(142)과 디스플레이 컴포넌트(151)와 렌더링 컴포넌트(152)와 GUI 컴포넌트(160)를 선택적으로 확장하여 프레임워크 시스템(110)에 등록하는 단계와, 사용자 기능을 구현하여 기능관리 컴포넌트(120)에 등록하는 단계를 포함하여 이루어지는데, 이러한 사용자가 프레임워크를 기반으로 응용소프트웨어를 개발하는 과정을 상세히 설명하면 다음과 같다. Meanwhile, the process of developing the user application software of FIG. 1 based on the 3D application software framework may include creating a developer-defined work project, implementing the user
먼저, 도1 구조의 기반 프레임워크를 구입한 개발자는 개발시스템(예로, 컴퓨터)에 상기 프레임워크를 설치한 후 개발 도구(예로, 마이크로소프트 사의 Visual Studio)를 사용하여 사용자 정의 프로젝트(project)를 생성하고, 자신이 원하는 3차원 응용소프트웨어에 맞게, 상기 개발 도구를 이용하여 사용자 메인모듈(170)을 구현하게 된다. 상기 사용자 메인모듈(170)에는 메뉴, 툴바, 메인 윈도우, 뷰 윈도우 등이 포함된다.First, a developer who purchases a framework based on the structure of FIG. 1 installs the framework on a development system (eg, a computer), and then uses a development tool (eg, Microsoft's Visual Studio) to create a custom project. It generates and implements the user
이후, 프레임워크를 이용하기 위해서 상기 생성된 작업 프로젝트(project)에 상기 프레임워크를 포함시키며, 상기에서 구현된 사용자 메인모듈(170)에 프레임워크 시스템(110)를 연결하게 된다.Subsequently, the framework is included in the generated work project in order to use the framework, and the
또한 개발자는 프레임워크 컴포넌트에서 제공하지 않는 기능이 필요한 경우 프레임워크의 3차원 모델링 기능(141)과 3차원 모델링 커널(142)과 디스플레이 컴포넌트(151)와 렌더링 컴포넌트(152)와 GUI 컴포넌트(160)를 선택적으로 확장하여 프레임워크 시스템(110)에 재등록함으로써 프레임워크에 결합하고 기존 컴포넌트를 대체할 수 있다.In addition, if the developer needs a function not provided by the framework component, the framework's three-
이후, 개발자는 프레임워크에서 포함되지 않는 사용자 기능(예로, 모델 편집 기능, 모델 불러오기/저장 기능, 환경변수 설정 기능 등)을 구현하여 사용자 기능모듈(130)에 등록함으로써 상기 도1의 프레임워크에 결합시키게 된다. Thereafter, the developer implements a user function not included in the framework (for example, a model editing function, a model import / store function, an environment variable setting function, etc.) and registers the
따라서, 개발자는 상기와 같은 과정으로 3차원 응용소프트웨어를 구현하게 되며, 상기와 같이 구현된 3차원 응용소프트웨어는 상용화되어 최종 사용자(예를 들어, CAD 작업자, CAE 설계자 등)에게 판매된다. Therefore, the developer implements the 3D application software through the above process, and the 3D application software implemented as described above is commercialized and sold to the end user (eg, CAD worker, CAE designer, etc.).
또한, 본 발명의 실시 예를 위한 자동 테스트 시스템은 도2의 블록도에 도시한 바와 같이, 적어도 하나 이상의 테스트 케이스를 저장하는 DB(DataBase)(240)와, 단위 기능의 테스트 케이스를 자동 생성하고 그 생성된 테스트 케이스를 상기 DB(240)에 저장하며 GUI에 대한 테스트를 수행하는 GUI 자동테스트 컴포넌트(230)와, 단위 기능의 자동 테스트가 실행되면 상기 GUI 자동테스트 컴포넌트(230)를 실행시켜 해당 테스트 케이스를 자동 생성/저장시키고, 상기 DB(240)에 기록된 해당 테스트 케이스를 기반으로 자동 테스트 대상인 도1 구조의 3차원 응용 프로그램에 대해 단위 기능의 자동 테스트를 실행하며, 만일, 프로세스 테스트의 실행이면, 사용자의 모든 응용소프트웨어 조작을 기록하여 상기 DB(240)에 테스트 케이스를 생성/저장시키고, 상기 DB(240)에 기록된 해당 테스트 케이스를 기반으로 자동 테스트 대상인 도1 구조의 3차원 응용 프로그램에 대해 프로세스 테스트를 실행하며, 상기 실행결과를 사용자에게 제공하는 자동 테스트 처리기(220)와, 단위 기능 자동 테스트와 프로세스 테스트에서 각 테스트 단계별로 상기 DB(240)에 저장된 모델 데이터와 비교/검증하고 그 검증결과를 상기 자동 테스트 처리기(220)에 통보하는 모델 테스트 컴포넌트(250)와, 사용자에 의한 자동 테스트를 감지하면 상기 자동 테스트 처리기(220)의 동작을 실행시키고 사용자의 설정에 따른 테스트 방법으로 상기 자동 테스트 처리기(220)를 제어하는 자동테스트 제어기(210)를 포함하여 구성한다. In addition, the automatic test system for an embodiment of the present invention, as shown in the block diagram of Figure 2, automatically generates a test case of the unit function and DB (DataBase) 240, which stores at least one or more test cases and The
상기 구성의 자동 테스터 시스템은 도1 구조의 프레임워크 기반의 3차원 응용소프트웨어를 테스트하기 위한 시스템이다. The automatic tester system having the above configuration is a system for testing the 3D application software based on the framework of FIG.
이와같이 구성한 본 발명의 실시 예에 대한 동작 및 작용효과를 도3 내지 도6을 참조하여 상세히 설명하면 다음과 같다. When described in detail with reference to Figures 3 to 6 the operation and effect of the embodiment of the present invention configured as described above.
도3은 본 발명의 실시 예에서 프레임워크 기반의 자동 테스트 시스템을 구현방법과 연결 관계를 보인 도면이고, 도4는 본 발명의 실시 예에서 단위 기능 테스트 과정을 보인 신호 흐름도이며, 도5는 본 발명의 실시 예에서 프로세스 테스트 케이스 생성 과정을 보인 신호 흐름도이고, 도6은 본 발명의 실시 예에서 프로세스 테스트 과정을 보인 신호 흐름도이다. FIG. 3 is a diagram illustrating a connection relationship between a framework-based automated test system and an implementation method according to an embodiment of the present invention, FIG. 4 is a signal flowchart illustrating a unit function test process, and FIG. 5 is an embodiment of the present invention. In the embodiment of the present invention, a signal flow diagram illustrating a process test case generation process is illustrated. FIG. 6 is a signal flow diagram illustrating a process test process according to an embodiment of the present invention.
먼저, 자동 테스트 시스템의 구현 방법과 역할을 도3을 참조하여 설명하면, 본 발명에서 3차원 응용소프트웨어 프레임워크를 테스트할 수 있도록 프레임워크 기반의 자동 테스트 시스템을 구현하는데, 자동 테스트 제어기(210)는 3차원 응용소프트웨어에 단위 기능 자동 테스트 및 프로세스 테스트의 제어 기능을 제공하고, 자동 테스트 처리기(220)는 프레임워크의 운영체제와 같은 역할을 하는 기능관리 컴포넌트(120)의 프레임워크 처리기를 기반으로 구현되어 3차원 응용소프트웨어에 단위 기능 자동 테스트 및 프로세스 테스트의 처리 기능을 제공하며, GUI 자동테스트 컴포넌트(230)는 GUI 컴포넌트(160)를 기반으로 구현되어 3차원 응용소프트웨어의 단위 기능 테스트 케이스를 GUI의 입력값을 기준으로 자동 생성하고 이렇게 생성된 테스트케이스에 따라 GUI를 동작시킴으로써 단위 기능 자동테스트를 지원하게 되며, 모델 테스트 컴포넌트(250)는 3차원 모델링 커널(142)을 기반으로 구현되어 3차원 응용소프트웨어에 단위 기능 자동 테스트와 프로세스 테스트의 각 테스트 단계별로 DB(240)에 저장된 결과 모델 데이터와의 보다 정밀한 비교/검증을 수행하게 된다. First, the implementation method and role of the automatic test system will be described with reference to FIG. 3. In the present invention, an automatic test system based on the framework for testing the 3D application software framework is implemented. Provides the 3D application software with the control function of the unit function automatic test and process test, the
이렇게 구현된 자동 테스트 시스템을 프레임워크에 결합하고 대체함으로써, 3차원 응용소프트웨어를 자동 테스트할 수 있게 되는데, 이 과정을 상세히 설명하면 다음과 같다.By combining and replacing the automated test system implemented in this way, the 3D application software can be automatically tested. The process will be described in detail as follows.
상기 프레임워크 기반의 3차원 응용소프트웨어 개발자는 개발시스템(예로, 컴퓨터)에 상기 자동 테스트 시스템을 구입하여 설치한 후, 작업 프로젝트(project)에 상기 자동 테스트 시스템을 포함시킨다.The framework-based 3D application software developer purchases and installs the automatic test system in a development system (for example, a computer), and then includes the automatic test system in a work project.
아울러, 상기 자동 테스트 제어기(210)를 프레임워크의 사용자 기능모듈(13)에 추가하고, 상기 자동 테스트 처리기(220)를 프레임워크에 등록함으로써 기존 기능관리 컴포넌트(120)의 프레임워크 처리기를 대체하며, 상기 GUI 자동테스트 컴포넌트(230)을 프레임워크에 등록함으로써 기존 프레임워크의 GUI 컴포넌트(160)를 대체하고, 상기 모델 테스트 컴포넌트(250)을 프레임워크에 등록함으로써 기존 모델링 커널(142)을 대체함으로써 프레임워크를 기반으로 3차원 응용소프트웨어를 자동 테스트할 수 있게 된다.In addition, the
따라서, 상기 도3과 같은 구성을 기반으로 단위 기능 자동 테스트 과정을 도4를 참조하여 설명하면 다음과 같다. Therefore, the unit function automatic test process will be described with reference to FIG. 4 based on the configuration as shown in FIG.
사용자가 사용자 기능모듈(130)에 포함된 테스트 대상 기능을 실행하고(S11) 역시 사용자 기능모듈(130)에 포함된 자동테스트 제어기(210)를 실행하며(S12) 이를 통해 단위 기능 테스트를 실행하게 되면(S13), 자동테스트 제어기(210)는 자동 테스트 처리기(220)를 실행시키고, 상기 자동 테스트 처리기(220)는 GUI 자동 테스트 컴포넌트(230)가 테스트 케이스를 자동 생성하도록 한다.(S14)The user executes the test target function included in the user function module 130 (S11) and also executes the
상기 GUI 자동 테스트 컴포넌트(230)는 해당 단위 기능의 GUI 입력값의 경우에 따라 하나 이상의 테스트 케이스를 생성하고 그 생성된 테스트 케이스들을 DB(240)에 저장하게 된다.The GUI
이후, 자동 테스트 처리기(220)는 DB(240)에 저장된 테스트 케이스에 따라 GUI 자동 테스트 컴포넌트(230)를 이용하여 GUI를 동작시키고 3차원 응용 프로그램에 대해 단위 기능의 자동 테스트를 수행하며, 모델 테스트 컴포넌트(250)는 단위 기능 자동 테스트의 각 테스트 단계별로 상기 DB(240)에 저장된 모델 데이터와 비교/검증하고 그 결과를 상기 자동 테스트 처리기(220)에 통보하게 된다. Thereafter, the
이후, 자동 테스트의 실행이 완료되면 자동 테스트 처리기(220)는 상기 테스트 결과를 출력하여 사용자에게 제공하게 된다.Thereafter, when execution of the automatic test is completed, the
또한, 상기 도3과 같은 구성을 기반으로 프로세스 테스트 과정을 도5 및 도6을 참조하여 설명하면 다음과 같다. In addition, the process test process based on the configuration as shown in FIG. 3 will be described with reference to FIGS. 5 and 6 as follows.
도5와 같이 사용자가 자동 테스트 제어기(210)의 실행을 요청하면(S21) 프레임워크의 상기 기능관리 컴포넌트(120)는 사용자 기능모듈(130)에 포함된 자동 테스트 제어기(210)를 실행하며, 사용자가 자동 테스트 제어기(210)를 통해 사용자 작업 기록을 시작하면(S22), 자동 테스트 처리기(220)는 이후 모든 사용자의 모든 작업(S23)을 기록하여 프로세스 테스트 케이스를 생성하는데, 세부 과정은 다음과 같다.When the user requests the execution of the
자동 테스트 처리기(220)는 사용자의 모든 응용 프로그램 조작에 따라(S23) 프레임워크에서 이루어지는 사용자 기능모듈(130)의 사용자 기능 실행 과정을 모니터링하여 그 실행 과정과 환경 변수 등을 저장하고(S24), 각 실행 단계별로 3차원 모델과 같은 모델 데이터를 포함하여 성능, 메모리 사용량 등의 실행 결과를 저장함으로써 프로세스 테스트 케이스를 생성하게 된다.The
이후, 사용자가 테스트 제어기(210)를 통해 사용자 작업의 기록을 중지하면 테스트 제어기(210)는 생성된 프로세스 테스트 케이스를 상기 DB(240)에 등록하게 된다.Thereafter, when the user stops recording the user's work through the
이후, 도6과 같이 사용자가 자동 테스트 제어기(210)를 실행하고 상기 자동 테스트 제어기(210)을 통해서 도5의 과정으로 생성한 프로세스 테스트 케이스를 DB(240)로부터 선택하고(S32) 프로세스 테스트를 실행시키면(S33), 상기 자동 테스트 제어기(210)는 자동 테스트 처리기(220)를 실행시키게 되며(S34), 상기 자동 테스트 처리기(220)는 사용자가 선택한 테스트 케이스를 기반으로 3차원 응용 프로그램에 대해 프로세스 테스트를 실행하게 되는데, 상세한 과정은 다음과 같다.Thereafter, as shown in FIG. 6, the user executes the
상기 자동 테스트 제어기(210)는 선택된 테스트 케이스를 상기 DB(240)에서 불러오고(S35), 테스트 케이스의 기능 실행 과정에 따라 상기 사용자 기능모듈(130)에 포함된 사용자 기능을 실행하고 조작할 것을 프레임워크의 기능관리 컴포넌트(120)에게 통지한다.(S36)The
이때 기능의 각 실행 과정이 끝날 때마다(S37) 자동 테스트 처리기(220)는 실행 성능과 메모리 사용량 등을 비교하고, 모델 테스트 컴포넌트(250)는 테스트 결과 데이터를 상기 DB(240)에 저장된 결과 데이터와 정밀하게 비교/검증하여 그 결과를 상기 자동 테스트 처리기(220)에 통보하게 된다.At this time, each time the execution of the function is finished (S37) the
이후, 모든 테스트 과정을 수행하여 프로세스 테스트가 완료되면(S39) 자동 테스트 처리기(220)는 상기 테스트 실행 결과를 디스플레이에 출력하여 사용자에게 제공하게 된다. Thereafter, when the process test is completed by performing all the test processes (S39), the
상기에서 상세히 설명한 바와 같이, 본 발명에 따른 자동 테스트 시스템은 3차원 응용소프트웨어 프레임워크를 기반으로 하여 3차원 응용소프트웨어의 개발과 배포버전에서의 자동테스트를 지원하는 시스템 솔루션으로서, 이를 통해 개발자는 신뢰성있는 3차원 응용소프트웨어를 쉽고 빠르게 개발할 수 있다.As described in detail above, the automatic test system according to the present invention is a system solution that supports automatic testing in the development and distribution of three-dimensional application software based on the three-dimensional application software framework. 3D application software can be developed easily and quickly.
또한, 상기 자동 테스트 시스템은 기존의 유지보수 과정에서 수작업에 의해 반복적으로 수행되던 복잡한 과정의 프로세스 테스트를 자동화하고, 어떠한 환경에서도 동일하게 반복 테스트를 수행함으로써, 3차원 응용소프트웨어의 개발 기간과 비용을 절감하고 품질을 높일 수 있다.In addition, the automated test system automates the process test of a complicated process that has been repeatedly performed manually by the existing maintenance process, and performs the same test repeatedly in any environment, thereby reducing the development period and cost of 3D application software. Savings and quality.
한편, 상기에서 설명한 본 발명의 실시 예는 당업자의 이해를 돕기 위한 바람직한 실시 예를 제시한 것일 뿐이며, 본 발명은 상기 설명한 실시 예에 의해서 한정되거나 제한되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변경 및 수정이 가능함은 물론 이를 기반으로 하는 다른 실시 예의 구현도 가능하다. On the other hand, the embodiment of the present invention described above is only to present a preferred embodiment to help those skilled in the art to understand, the present invention is not limited or limited by the embodiments described above, and do not depart from the spirit of the present invention Various changes and modifications can be made within the scope as well as implementation of other embodiments based thereon.
도1은 본 발명의 실시 예를 위한 프레임워크 구조를 보인 도면. 1 is a view showing a framework structure for an embodiment of the present invention.
도2는 본 발명의 실시 예를 위한 자동 테스트 시스템의 블록 구성도. Figure 2 is a block diagram of an automatic test system for an embodiment of the present invention.
도3은 본 발명의 실시 예에서 3차원 모델링 응용소프트웨어 자동 테스트를 위한 연결 관계를 보인 도면. 3 is a view showing a connection relationship for the three-dimensional modeling application software automatic test in an embodiment of the present invention.
도4는 본 발명의 실시 예에서 단위 기능 테스트 과정을 보인 신호 흐름도. 4 is a signal flow diagram illustrating a unit function test process according to an embodiment of the present invention.
도5는 본 발명의 실시 예에서 프로세스 테스트 케이스 생성 과정을 보인 신호 흐름도. 5 is a signal flow diagram illustrating a process test case generation process according to an embodiment of the present invention.
도6은 본 발명의 실시 예에서 프로세스 테스트 과정을 보인 신호 흐름도. Figure 6 is a signal flow diagram illustrating a process test process in an embodiment of the present invention.
** 도면의 주요부분에 대한 부호의 설명 ** ** Explanation of symbols for main parts of drawings **
110 : 프레임워크 시스템 120 : 기능관리 컴포넌트 110: framework system 120: functional management component
130 : 사용자 기능 모듈 141 : 3차원 모델링 기능 컴포넌트 130: user function module 141: 3D modeling function component
142 : 3차원 모델링 커널 151 : 디스플레이 컴포넌트 142: three-dimensional modeling kernel 151: display component
152 : 렌더링 컴포넌트 153 : 모델선택 처리 컴포넌트 152: rendering component 153: model selection processing component
160 : GUI 컴포넌트 170 : 사용자 메인 모듈 160: GUI component 170: user main module
210 : 자동 테스트 제어기 220 : 자동 테스트 처리기 210: automatic test controller 220: automatic test processor
230 : GUI 자동테스트 컴포넌트 240 : DB(DataBase) 230: GUI automatic test component 240: DB (DataBase)
250 : 모델테스트 컴포넌트250: model test component
Claims (9)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080045885A KR100949875B1 (en) | 2008-05-19 | 2008-05-19 | Autotest system based framework of 3 dimensional application software and method thereof |
JP2010549565A JP5192055B2 (en) | 2008-03-04 | 2009-03-03 | Three-dimensional application program framework structure and application implementation method based thereon, and three-dimensional application software framework-based automatic test system and method |
PCT/KR2009/001031 WO2009110725A2 (en) | 2008-03-04 | 2009-03-03 | Three-dimensional application program framework structure and a method for implementing an application program based on the same, and an automatic testing system based on a three-dimensional application software framework and a method therefor |
US12/672,878 US8676723B2 (en) | 2008-03-04 | 2009-03-03 | Automated test system based on three-dimensional application software framework and a method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080045885A KR100949875B1 (en) | 2008-05-19 | 2008-05-19 | Autotest system based framework of 3 dimensional application software and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090120038A KR20090120038A (en) | 2009-11-24 |
KR100949875B1 true KR100949875B1 (en) | 2010-03-25 |
Family
ID=41603421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080045885A KR100949875B1 (en) | 2008-03-04 | 2008-05-19 | Autotest system based framework of 3 dimensional application software and method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100949875B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101132560B1 (en) * | 2010-06-09 | 2012-04-03 | 강원대학교산학협력단 | System and method for automatic interface testing based on simulation for robot software components |
KR101414720B1 (en) * | 2013-05-31 | 2014-07-04 | 한국철도기술연구원 | Functional safety testing device for train control system software and the method thereof |
KR20240108236A (en) | 2022-12-30 | 2024-07-09 | 경북대학교 산학협력단 | An Apparatus And Method For Execution Log-based Automated Mock Generation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990065780A (en) * | 1998-01-16 | 1999-08-05 | 구본준 | Software testing system |
KR20060050378A (en) * | 2004-09-29 | 2006-05-19 | 마이크로소프트 코포레이션 | Test automation stack layering |
JP2007316875A (en) | 2006-05-25 | 2007-12-06 | Hitachi Ltd | Apparatus and method for automatic regression test |
-
2008
- 2008-05-19 KR KR1020080045885A patent/KR100949875B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990065780A (en) * | 1998-01-16 | 1999-08-05 | 구본준 | Software testing system |
KR20060050378A (en) * | 2004-09-29 | 2006-05-19 | 마이크로소프트 코포레이션 | Test automation stack layering |
JP2007316875A (en) | 2006-05-25 | 2007-12-06 | Hitachi Ltd | Apparatus and method for automatic regression test |
Also Published As
Publication number | Publication date |
---|---|
KR20090120038A (en) | 2009-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5192055B2 (en) | Three-dimensional application program framework structure and application implementation method based thereon, and three-dimensional application software framework-based automatic test system and method | |
US8627296B1 (en) | Unified unit and integration test with automatic mock creation | |
US5961610A (en) | Systems, methods and apparatus for generating and controlling display of medical images | |
CA2211373C (en) | Learn mode script generation in a medical imaging system | |
Guttenbrunner et al. | A measurement framework for evaluating emulators for digital preservation | |
Walli | The POSIX family of standards | |
CA2211369C (en) | Cell overlap detection and correction in a medical imaging system | |
US10380526B2 (en) | System and method for providing a process player for use with a business process design environment | |
US20060242606A1 (en) | Graphical roadmap view and framework for activity tracking and execution | |
US10572247B2 (en) | Prototype management system | |
Cavallo et al. | Cave-AR: a VR authoring system to interactively design, simulate, and debug multi-user AR experiences | |
KR100949875B1 (en) | Autotest system based framework of 3 dimensional application software and method thereof | |
CN111240678B (en) | Pop-up window setting method and device, electronic equipment and storage medium | |
Capper et al. | The impact of object-oriented technology on software quality: Three case histories | |
JP2012168900A (en) | Programming device and program | |
KR20100096352A (en) | Method for testing of 3-dimension application program and computer readable recording medium thereof | |
Tirodkar et al. | EarlGrey: iOS UI automation testing framework | |
Bayley et al. | Mobitest: a cross-platform tool for testing mobile applications | |
Bakir et al. | Program the Internet of Things with Swift for iOS | |
JP2019113952A (en) | Information processing device and program | |
US11797579B2 (en) | Data content governance for presentation layer synchronization for a version controlled underlying data model | |
Tirodkar et al. | EarlGrey: iOS UI automation testing tool | |
KR100890861B1 (en) | Construction method for framework of 3 dimensional application program and implementation method for application program thereof | |
Velozo et al. | Evaluation of a Mobile Software Development Company | |
Tejado López | Creation of an interactive environment through the development of a Videogame Engine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130619 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140319 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20160318 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20170318 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20180319 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20190319 Year of fee payment: 10 |