KR102617906B1 - 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법 - Google Patents

의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법 Download PDF

Info

Publication number
KR102617906B1
KR102617906B1 KR1020190053085A KR20190053085A KR102617906B1 KR 102617906 B1 KR102617906 B1 KR 102617906B1 KR 1020190053085 A KR1020190053085 A KR 1020190053085A KR 20190053085 A KR20190053085 A KR 20190053085A KR 102617906 B1 KR102617906 B1 KR 102617906B1
Authority
KR
South Korea
Prior art keywords
test
automation
automated
build
testing
Prior art date
Application number
KR1020190053085A
Other languages
English (en)
Other versions
KR20200129232A (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 KR1020190053085A priority Critical patent/KR102617906B1/ko
Publication of KR20200129232A publication Critical patent/KR20200129232A/ko
Application granted granted Critical
Publication of KR102617906B1 publication Critical patent/KR102617906B1/ko

Links

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/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable

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

의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법{TEST AUTOMATION FRAMEWORK SYSTEM FOR MEDICAL SOFTWARE AND METHOD OF TEST AUTOMATION}
본 출원은 의료용 소프트웨어를 위한 테스트 자동화 프레임워크에 관한 것이며, 보다 상세하게는 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법에 관한 것이다.
데브옵스(Devops)는 소프트웨어의 개발(Development)과 운영(Operation)의 합성어이다. 데브옵스는 소프트웨어 개발에 있어 기존 개발팀과 품질팀 등의 각 부서에서 별도로 수행하였던 업무 프로세스를 통합하여 서로 간의 빠른 피드백을 가능하게 함으로써 소프트웨어 제품/서비스의 빠른 개발 및 배포를 가능하게 하기 위한 개념이다.
데브옵스의 중요한 요소 중 하나는 자동화 이슈이다. 소프트웨어 테스트 자동화가 구현되면, 반복적인 작업들을 연속적으로 수행하여 테스트 결과와 개선사항 등에 대한 피드백을 사용자에게 빠르게 제공할 수 있어 테스트 시간이 절감된다. 또한, 테스트 자동화를 통한 방대한 테스트와 검증된 도구 사용을 통해 테스트의 정확도 또한 개선될 수 있다.
그러나, 현재의 테스트 자동화 적용 정도는 소프트웨어 개발 과정의 전체가 아닌 일부 파트에 대한 테스트 자동화만이 구현되어 있어, 전체적인 소프트웨어 테스트를 충분히 수행하지 못하는 문제점을 가지고 있다. 특히, 의료용 소프트웨어의 경우, 높은 수준의 소프트웨어 정확도 및 신뢰도가 요구되기 때문에, 소프트웨어 개발시에 보다 높은 수준의 테스트 자동화 구현이 요구되고 있다.
특허문헌 1: 공개특허공보 제10-2007-0037808호(2007.04.09)
이러한 문제점을 해결하기 위해 본 발명은, 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법을 제공하는 것을 목적으로 한다.
본 발명의 일 실시예에 따르면, 의료용 소프트웨어를 위한 테스트 자동화 시스템에 제시된다. 상기 시스템은, 통합 개발 환경으로부터의 테스트 요청에 따라 자동화 테스트를 수행하거나 또는 빌드 머신이 상기 자동화 테스트를 수행하도록 지시하는 개발자동화 머신; 상기 통합 개발 환경으로부터의 빌드(build) 요청에 따라 빌드를 수행하고, 상기 개발자동화 머신의 테스트 요청에 따라 상기 자동화 테스트를 수행하는 빌드 머신; 및 상기 자동화 테스트의 수행 결과를 저장하는 형상관리 머신을 포함할 수 있다.
본 발명의 일 실시예에 따르면, 의료용 소프트웨어를 위한 자동화 스모크테스트(smoke test) 방법이 제공된다. 상기 방법은, 상기 의료용 소프트웨어의 레퍼런스 모델과 연관되는 테스트케이스들의 서브세트를 결정하는 단계; 상기 테스트케이스들의 서브세트에 기초하여 입력 영상 데이터를 생성하는 단계; 상기 입력 영상 데이터를 이용하여 UI 자동화 도구를 통해 자동화 테스트를 수행하는 단계; 및 상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 의료용 소프트웨어를 위한 UI 자동화 테스트 방법이 제공된다. 상기 방법은, 상기 의료용 소프트웨어의 전체 인터페이스 기능요소들에 대한 테스트케이스들을 결정하는 단계; 상기 테스트케이스들에 대하여 UI 자동화 도구를 통해 자동화 테스트를 수행하는 단계; 및 상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 의료용 소프트웨어를 위한 상호운용성 자동화 테스트 방법이 제공된다. 상기 방법은, 상기 의료용 소프트웨어와 연관된 데이터 표준에 기초하여 테스트케이스들을 결정하는 단계; 상기 테스트케이스들의 테스트 데이터에 대하여 테스트 오라클을 통해 자동화 테스트를 수행하는 단계; 및 상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램이 제공되며, 상기 컴퓨터 프로그램은 본 개시 내용의 자동화 테스트 방법들을 실행하기 위한 컴퓨터-실행가능 명령들을 포함할 수 있다.
본 개시 내용에 따르면, 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템을 제공함으로써 의료용 소프트웨어의 주요한 자동화 요소들이 반영된 테스트 자동화 기능들을 제공할 수 있는 효과가 있다.
또한, 본 개시 내용에 따르면, 대표성을 가지는 레퍼런스 모델에 따라 주요 데이터 및 주요 기능들의 테스트 자동화를 가능하게 하는 스모크테스트 자동화 기능을 제공할 수 있는 효과가 있다.
또한, 본 개시 내용에 따르면, 전체 인터페이스 기능요소에 대한 테스트 자동화를 가능하게 하는 UI 자동화 테스트 기능을 제공할 수 있는 효과가 있다.
또한, 본 개시 내용에 따르면, 이기종 장비와의 호환성을 검증할 수 있는 상호운용성 테스트 자동화 기능을 제공할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 자동화 스모크테스트 방법을 나타내는 도면이다.
도 3은 도 2의 단계 220 및 230을 시각적으로 나타낸 예시 도면이다.
도 4는 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 UI 자동화 테스트 방법을 나타내는 도면이다.
도 5는 도 4의 UI 자동화 테스트에서 테스트케이스들이 테스트되는 순서를 나타내는 예시적인 도면이다.
도 6은 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 상호운용성 자동화 테스트 방법을 나타내는 도면이다.
도 7은 도 6에 따른 상호운용성 자동화 테스트를 위한 테스트 오라클을 도시하는 예시적인 도면이다.
이하, 본 발명의 바람직한 실시예들을 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
본 발명의 다양한 양상들이 아래에서 설명된다. 여기에서 제시되는 발명들은 폭넓은 다양한 형태들로 구현될 수 있으며 여기에서 제시되는 임의의 특정한 구조, 기능 또는 이들 모두는 단지 예시적이라는 것을 이해하도록 한다. 여기에서 제시되는 발명들에 기반하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 여기에서 제시되는 하나의 양상이 임의의 다른 양상들과 독립적으로 구현될 수 있으며 둘 이상의 이러한 양상들이 다양한 방식들로 결합될 수 있다는 것을 이해할 것이다. 예를 들어, 여기에서 설명되는 임의의 수의 양상들을 이용하여 장치가 구현될 수 있거나 또는 방법이 실시될 수 있다. 또한, 여기에서 설명되는 하나 이상의 양상들에 더하여 또는 이들 양상들이 아닌 다른 구조, 기능 또는 구조 및 기능을 이용하여 이러한 장치가 구현될 수 있거나 또는 이러한 방법이 실시될 수 있다.
본 개시 내용의 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법이 적용되는 의료용 소프트웨어는 설명의 편의를 위해, 예시적으로 치과용 CAD(Computer Aided Design) 소프트웨어로서 기술될 것이다. 이러한 치과용 CAD 소프트웨어는 구강 스캐너로 스캔한 이미지를 기반으로 치과보철물을 디자인하고 보철물 가공기를 통해 보철물 제작이 가능하도록 돕은 소프트웨어일 수 있다. 그러나, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 개시 내용이 적용될 수 있는 의료용 소프트웨어가 치과용 CAD 소프트웨어로 한정되지 않으며, 다른 의료 용도의 소프트웨어에도 본 개시 내용의 기술적 사상이 적용될 수 있음을 이해할 것이다.
도 1은 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템을 나타내는 도면이다.
본 개시 내용에 따른 테스트 자동화 프레임워크 시스템(100)은 형상관리 머신(120), 개발자동화 머신(130) 및 빌드 머신(140)을 포함할 수 있다. 또한, 소프트웨어 개발 및 테스트를 위해 개발자 컴퓨터(110)는 형상관리 머신(120), 개발자동화 머신(130) 및 빌드 머신(140)과 상호 연결될 수 있다. 이를 위해, 본 개시 내용의 테스트 자동화 프레임워크 시스템(100)은 온프라미스(On-Premise) 환경과 같은 내부망 환경에서 구현될 수 있거나 또는 클라우드 환경과 같은 외부망 환경에서 구현될 수 있다.
개발자 컴퓨터(110)는 통합 개발 환경(111)을 포함할 수 있다. 통합 개발 환경(111)은 소프트웨어 개발 과정에 필요한 모든 작업을 하나의 소프트웨어에서 처리할 수 있는 IDE(Integrated Development Environment)와 같은 통합 개발 환경 소프트웨어로서 구현될 수 있다.
형상관리 머신(120)은 본 개시 내용에 따른 자동화 테스트의 수행 결과를 저장할 수 있다. 또한, 형상관리 머신(120)은 통합 개발 환경에서 커밋(commit)한 소스코드뿐만 아니라 각 툴 체인 도구들의 백업파일을 저장할 수 있다. 이를 위해, 형상관리 머신(120)은 저장소(repository)(121)를 포함할 수 있다. 저장소(121)는 예컨대 Gitlab으로서 구현될 수 있다.
개발자동화 머신(130)은 통합 개발 환경(111)으로부터의 테스트 요청에 따라 자동화 테스트를 수행하거나 또는 빌드 머신(140)이 자동화 테스트를 수행하도록 지시할 수 있다. 개발자동화 머신(130)은 CI 툴(continuous integration tool) 모듈(131), 분석/리뷰 모듈(132), 시각화 모듈(133), 이슈 관리 모듈(134), 메신저 모듈(135), 상호운용성 테스트 자동화 모듈(136), 코드 테스트 자동화 모듈(137)을 포함할 수 있다.
빌드 머신(140)은 통합 개발 환경(111)으로부터의 빌드(build) 요청에 따라 빌드를 수행할 수 있다. 또한, 빌드 머신(140)은 개발자동화 머신(130)의 테스트 요청에 따라 자동화 테스트를 수행할 수 있다. 빌드 머신(140)은 빌드 모듈(141), UI 테스트 자동화 모듈(142), 패키징/배포 모듈(143)을 포함할 수 있다.
본 개시 내용에 따르면, 통합 개발 환경(111)은 코딩된 의료용 소프트웨어의 테스트를 위해 테스트 자동화 프레임워크 시스템(100)으로 테스트/빌드를 요청할 수 있다. 통합 개발 환경(111)의 요청에 응답하여, 분석/리뷰 모듈(132)은 해당 프로그램의 소스코드에 대한 분석 및 리뷰를 수행하며, 리뷰 성공시 해당 프로그램은 형상관리 머신(120)의 저장소(121)로 커밋(commit)될 수 있다. 분석/리뷰 모듈(132)에 의해 수행되는 분석은 소스코드의 코드복잡도, 결함 등을 검출하는 정적분석을 포함할 수 있다. 분석/리뷰 모듈(132)에 의해 수행되는 리뷰는 예컨대 Gerrit과 같은 코드 협업 도구를 통해 구현될 수 있다. 또한, CI 툴 모듈(131)은 통합 개발 환경(111)의 요청에 응답하여 자동화 테스트의 수행을 제어할 수 있다. CI 툴 모듈(131)은 예컨대 자바로 구현된 오픈 소스 자동화 서버인 Jenkins로 구현될 수 있다. 구체적으로, CI 툴 모듈(131)은 빌드 머신(140)으로 빌드를 요청할 수 있으며, 빌드 모듈(141)은 소프트웨어 빌드를 수행할 수 있다. 빌드 모듈(141)은 예컨대 MSBuild와 같은 빌드 엔진으로 구현될 수 있다. 그 다음에 UI 테스트 자동화 모듈(142)은 빌드된 결과물에 대하여 UI 테스트를 수행할 수 있다. UI 테스트는 예컨대 Testcomplete와 같은 자동 기능 테스트 플랫폼의 UI 자동화 도구를 이용하여 수행될 수 있다. 그 다음에 패키징/배포 모듈(143)은 배포용 소프트웨어 패키지를 생성할 수 있다. 패키징/배포 모듈(143)은 예컨대 Installshield와 같은 인스톨러/소프트웨어 패키징 생성용 툴로서 구현될 수 있다.
여기서, 시각화 모듈(133)은 소프트웨어 빌드 및 자동화 테스트 결과를 시각적으로 제공할 수 있다. 시각화 모듈(133)은 예컨대 Grafana 대시보드와 같은 프로그램으로 구현되어 시각화된 데이터를 제공할 수 있다. 전술한 빌드 및 자동화 테스트 과정 중에 실패 또는 특정 이벤트가 발생한 경우, 메신저 모듈(134)은 이러한 사실을 개발자에게 통지할 수 있다. 또한, 빌드 및 자동화 테스트 과정 중 발생하는 이슈들은 이슈 관리 모듈(134)에 의해 관리될 수 있다. 이슈 관리 모듈(134)은 예컨대 이슈 트래킹 소프트웨어인 jira로 구현될 수 있다.
본 개시 내용에 따른 테스트 자동화 프레임워크 시스템(100)은 후술할 바와 같이 의료용 소프트웨어의 테스트 자동화를 위해 골든모델을 이용한 스모크테스트, UI 자동화 테스트, 상호운용성 자동화 테스트, 및 소스코드 자동화 테스트를 제공할 수 있다.
전술한 자동화 테스트 방법들은 빌드 형태와 연관되어 수행될 수 있다. 이와 관련하여, 빌드 형태는 커밋(Commit) 빌드, 데일리(Daily) 빌드, 디플로이(Deploy) 빌드를 포함할 수 있다. 커밋 빌드는 개발자의 커밋 시도시에 수행될 수 있으며, 자동화 스모크테스트, 상호운용성 자동화 테스트 및 소스코드 자동화 테스트는 커밋 빌드 요청에 따라 수행될 수 있다. 데일리 빌드는 수행시간이 많이 소요되는 작업에 대하여 정해진 스케줄(예컨대, 일 1회)에 따라 수행될 수 있다. 후술할 UI 자동화 테스트는 의료용 소프트웨어의 전체 기능요소에 대하여 수행되기 때문에 데일리 빌드 요청에 따라 수행될 수 있다. 디플로이 빌드는 배포만을 위한 빌드로서, 배포 필요시 통합 개발 환경(111)의 빌드 요청에 따라 수행될 수 있다. 한편, 다른 실시예에 따르면, 전술한 자동화 테스트 방법들 중 적어도 하나는 디플로이 빌드시에 함께 수행되도록 구현될 수 있다.
도 2는 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 자동화 스모크테스트 방법을 나타내는 도면이다.
치과용 CAD 소프트웨어와 같은 의료용 소프트웨어의 CAD 테스트 복잡도 해결을 위해, 본 개시 내용은 대표성을 가지는 레퍼런스 모델에 대한 1차적인 빠른 자동화 테스트 방식으로서 골든모델 모델링에 기초하는 자동화 스모크테스트 방법을 제안한다.
본 개시 내용의 자동화 스모크테스트 방법은 의료용 소프트웨어의 레퍼런스 모델과 연관되는 테스트케이스들의 서브세트를 결정하는 단계(210), 상기 테스트케이스들의 서브세트에 기초하여 입력 영상 데이터를 생성하는 단계(220), 상기 입력 영상 데이터를 이용하여 UI 자동화 도구를 통해 자동화 테스트를 수행하는 단계(230) 및 상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계(240)를 포함할 수 있다. 이러한 자동화 스모크테스트 방법은 커밋 빌드시에 빌드 머신(140)의 UI 테스트 자동화 모듈(142)에서 수행될 수 있다.
본 개시 내용의 자동화 스모크테스트는 단시간 테스트를 통해 자동화 테스트의 충분성을 확보할 수 있어야 하기 때문에, 단계(210)에서 골든모델 모델링에 기초하여 예컨대 치과용 CAD 소프트웨어에 대하여 대표성을 가지는 레퍼런스 모델이 결정될 수 있다. 구체적으로, 치과용 CAD 소프트웨어의 경우, 치아구성, 치료유형, 치아위치, 치아개수 등의 치아 치료의 기본요소들을 기초로, 많은 경우의 수를 커버하고 오류를 용이하게 검증할 수 있으며 사용빈도가 높은 동작을 검증할 수 있는 골든모델을 모델링할 수 있다.
예시적으로, 골든 모델 구현을 위한 모델링 요소를 CAD 입력영상과 작업루틴으로 구분하여 각각에 대한 분류 기준을 아래의 표 1과 같이 설정할 수 있다.
- 골든모델 모델링
대상 분류 기준
입력영상 치아 구성 유형(일반, 임상, 난해)
치료 유형(라미네이트, 크라운, 인레이 등)
치아 위치(상악, 하악)
치아 위치(전치, 구치)
치아 개수(싱글, 6전치)
작업루틴 입력영상과 연관된 일반루틴
대상제품에서 강조하고 싶은 루틴
또한, 예시적으로 표 1에서 제시된 요소들을 기반으로 임상 실효성을 고려한 기준에 따라 12가지의 상세 케이스(즉, 테스트케이스들의 서브세트)를 결정할 수 있다.
- 골든모델 상세 케이스 설계
구분 치아구성 치료유형 위치(상하) 위치(앞뒤) 치아개수
1 일반 라미네이트 상악 전치 6전치
2 일반 크라운 상악 구치 싱글
3 일반 인레이 상악 구치 싱글
4 일반 인레이 하악 구치 싱글
5 일반 크라운 하악 구치 싱글
6 임상 브릿지 상악 전치 3본
7 임상 브릿지 상/하악 구치 4/3본
8 임상 브릿지 상악 전치 7본
9 난해 브릿지 상악 전치 싱글
10 난해 크라운 상악 구치 싱글
11 난해 인레이 상악 구치 싱글
12 난해 라미네이트 상악 전치 6전치
단계 220에서, 표 2에 예시된 바와 같은 테스트케이스들의 서브세트에 기초하여 입력 영상 데이터가 생성될 수 있다. 구체적으로, 각 테스트케이스를 기반으로 제작된 치아모형을 스캐너로 스캔함으로써 입력 영상 데이터가 생성될 수 있다. 입력 영상 데이터는 예시적으로 3D 데이터일 수 있으며, 또한 예시적으로 STL 포맷의 3D 모델 데이터일 수 있다. 단계 230에서, 예컨대 Testcomplete와 같은 UI 자동화 도구를 통해 입력 영상 데이터를 이용하여 자동화 스모크테스트가 수행될 수 있다. 단계 240에서, 자동화 테스트의 수행 결과는 형상관리 머신(120)의 저장소(121)에 저장 및 관리될 수 있으며, 저장소(121)에 저장된 테스트 수행 결과는 테스터에 의해 조회가능하도록 저장될 수 있다. 도 3은 단계 220 및 230을 시각적으로 나타낸 예시 도면이다.
도 4는 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 UI 자동화 테스트 방법을 나타내는 도면이다.
도 2와 관련하여 설명된 자동화 스모크테스트는 골든모델에 기초하여 대상 소프트웨어의 중요 기능들에 대한 빠른 자동화 테스트를 제공하지만 소프트웨어의 전체 인터페이스 기능요소들을 커버하지는 않는다. 이에 본 개시 내용은 치과용 CAD 소프트웨어와 같은 의료용 소프트웨어의 전체 인터페이스 기능요소들을 자동화 테스트하기 위한 UI 자동화 테스트 방법을 제안한다.
본 개시 내용의 UI 자동화 테스트 방법은, 의료용 소프트웨어의 전체 인터페이스 기능요소들에 대한 테스트케이스들을 결정하는 단계(310), 결정된 테스트케이스들에 대하여 UI 자동화 도구를 통해 자동화 테스트를 수행하는 단계(320) 및 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계(330)를 포함할 수 있다. 이러한 UI 자동화 테스트 방법은 데일리 빌드시에 빌드 머신(140)의 UI 테스트 자동화 모듈(142)에서 수행될 수 있다. 또한, 결함 분석에 의한 추가 테스트케이스들 또는 개발 과정에서 생성되는 추가 기능요소에 대한 테스트케이스들이 추가적으로 UI 자동화 테스트에서 테스트될 수 있도록, 단계(310)는 의료용 소프트웨어의 결함 분석 또는 추가 기능요소에 기초하여 테스트케이스를 업데이트하는 동작을 포함할 수 있다.
본 개시 내용의 UI 자동화 테스트에서 테스트되는 테스트케이스들은 Unattended 케이스, Attended 케이스 및 명세기반 케이스를 포함할 수 있다. Unattended 케이스는 테스트 수행에서 결과 판단까지 UI 자동화 도구에 의해 수행될 수 있는 테스트케이스이다. 예컨대, Unattended 케이스에 대하여는 UI 자동화 도구에 의해 P/F(Pass/Fail)이 자동판정되어 테스트 결과가 출력될 수 있다. Attended 케이스는 UI 자동화 도구에 의해 테스트가 자동 수행되지만 결과 판단은 테스터에 의해 이루어지는 테스트케이스이다. Attended 케이스에 대하여 UI 자동화 도구는 예컨대 테스터가 결과 판단을 할 수 있도록 기대 이미지(Expected Image), 결과 이미지(Result Image), 두 이미지의 유사도 분석결과를 포함하는 테스트 결과를 제공할 수 있다. 명세기반 케이스는 UI 자동화 도구에 의한 자동 테스트가 불가능한 테스트케이스이다. 명세기반 케이스는 테스터에 의한 직접 분석 및 결과 판단이 요구된다.
도 5는 도 4의 UI 자동화 테스트에서 테스트케이스들이 테스트되는 순서를 나타내는 예시적인 도면이다. 도 5에 도시된 바와 같이, 본 개시 내용의 UI 자동화 테스트는 자동 케이스인 Unattended 케이스에 대하여 먼저 수행될 수 있고, 그 다음에 반자동 케이스인 Attended 케이스에 대하여 수행될 수 있으며, 그 다음에 명세기반 케이스에 대하여 수행될 수 있다. 그러나, 본 개시 내용의 UI 자동화 테스트는 위 테스트 순서에 한정되지 않으며, 실시예에 따라 전술한 순서와는 다른 순서로 수행될 수도 있다.
본 개시 내용에서 테스트케이스들은 오류사례, 명세기반 기능리스트, 결함 리포트 등과 같은 테스트 피드백 자료에 기초하여 소프트웨어 단위 기능에 대하여 생성될 수 있다. 또한, 각 테스트케이스는 UI 위치 변경에 독립적이도록 UI 이벤트 기반 스크립트 형태로 생성될 수 있다. 또한, 불필요한 테스트케이스의 생성을 방지하기 위해, 본 개시 내용은 pairwise 기법과 같은 중복 제거 방식을 이용하여 리던던트한 테스트케이스들의 개수를 줄일 수 있다. 또한, 본 개시 내용의 UI 자동화 테스트가 전체 테스트케이스들에 대하여 수행된 후에, 예컨대 Bullseye와 같은 검증 도구를 통해 테스트 커버리지가 측정되어 UI 자동화 테스트의 효율성이 검증될 수 있다.
도 6은 본 발명의 일 실시예에 따른 의료용 소프트웨어를 위한 상호운용성 자동화 테스트 방법을 나타내는 도면이다.
예시적인 치과용 CAD 소프트웨어를 이용할 수 있는 스마트치과 시스템은 스캐너, CAD 및 CAM(Computer Aided Manufacture)으로 구성될 수 있다. 스캐너는 작업결과물(파일)을 CAD로 전달하고, CAD는 전달받은 파일을 가공하여 결과물을 CAM으로 전달할 수 있다. 그러나, 이러한 치과용 CAD 소프트웨어와 스캐너 및 CAM은 서로 다른 제조사에서 제조될 수 있기 때문에, 이러한 의료용 소프트웨어와 이기종 장비와의 상호운용성(interoperability)이 검증되어야 한다. 이에 본 개시 내용은 치과용 CAD 소프트웨어와 같은 의료용 소프트웨어의 상호운용성을 테스트하기 위한 상호운용성 자동화 테스트 방법을 제안한다.
본 개시 내용의 상호운용성 자동화 테스트 방법은, 의료용 소프트웨어와 연관된 데이터 표준에 기초하여 테스트케이스들을 결정하는 단계(410), 상기 테스트케이스들의 테스트 데이터에 대하여 테스트 오라클을 통해 자동화 테스트를 수행하는 단계(420) 및 상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계(430)를 포함할 수 있다. 단계(420)는 테스트 오라클을 통해 테스트 데이터의 입력 및 출력을 테스트함으로써 각각의 테스트케이스에 대한 출력과 상기 데이터 표준에 기초한 기대 출력을 비교하여 해당 테스트케이스의 상호운용성을 판단하는 동작을 포함할 수 있다. 이러한 상호운용성 자동화 테스트 방법은 커밋 빌드시에 개발자동화 머신(130)의 상호운용성 테스트 자동화 모듈(136)에서 수행될 수 있다.
전술한 데이터 표준은 소프트웨어 시스템들 사이에서 치과 케이스 데이터와 CAD/CAM 데이터의 전달을 용이하게 하기 위해 2018년 7월에 제정된 ISO 18618 표준일 수 있다. 또한, 치과용 CAD 소프트웨어에 대하여 제정된 데이터 표준에 따라 테스트케이스들의 테스트 데이터는 마크업 랭귀지(Mark-up Language) 형태로 구성될 수 있다. 예컨대, 마크업 랭귀지는 확장가능 마크업 랭귀지(XML: Extensible Mark-up Language)일 수 있다.
도 7은 도 6에 따른 상호운용성 자동화 테스트를 위한 테스트 오라클을 도시하는 예시적인 도면이다.
도 7에 도시된 바와 같이, XML 파일 형태의 테스트데이터는 저장소(121)로부터 상호운용성 테스트 자동화 모듈(136)의 상호운용성 테스트 오라클 모듈(450)로 입력될 수 있다. 테스트 오라클 모듈(450)은 CAD 소프트웨어(460)로 XML 파일 임포트(import)를 시도할 수 있다. CAD 소프트웨어(460)는 데이터 표준에 명시된 모든 노드 및 데이터가 있는 파일을 임포트할 수 있다. 또한, CAD 소프트웨어(460)는 데이터 표준에 어긋나는 XML 파일이 입력된 경우에 해당 노드를 제외하고 데이터 표준을 준수한 데이터만 로드하여 테스트 오라클 모듈(450)로 XML 파일을 출력하여 전달할 수 있다.
본 개시 내용의 상호운용성 자동화 테스트의 시나리오는 입/출력 형태에 따라 정상입력, 비정상입력1, 비정상입력2, 정상출력을 포함할 수 있다. 예시적인 테스트 시나리오는 표 3과 같다.
- 상호운용성 자동화 테스트 시나리오
ID 테스트 시나리오
TS01 정상적인 XML 로딩 가능여부 확인
TS02 비정상적인 XML 로딩시 오류처리 가능여부 확인(표준에 명시되지 않은 노드 포함)
TS03 비정상적인 XML 로딩시 오류처리 가능여부 확인(표준에 명시된 attribute이나 데이터 형식이 다름)
TS04 정상적인 XML 로딩 및 EXPORT 가능여부 확인
예시적으로 표 3에 제시된 시나리오들에 기초하여 사전조건(precondition), 입력(input), 기대출력(expected output)을 명시한 테스트케이스들을 표 4와 같이 규정할 수 있다.
- 상호운용성 자동화 테스트케이스
ID 테스트케이스
TC01 - Precondition: 표준에 명시된 모든 element, attribute를 포함하는 xml 파일, 표준을 준수하는 XSD 파일
- Input: xml 로드
- Expected Output: xml 파일에 포함된 모든 attribute 데이터 로드
TC02 - Precondition: 표준에 명시된 모든 element, attribute를 포함하는 xml 파일, 표준에 명시되지 않은 노드 포함, 표준을 준수하는 XSD 파일
- Input: xml 로드
- Expected Output: xml 로드 실패
TC03 - Precondition: 표준에 명시된 모든 element, attribute를 포함하는 xml 파일이나 특정 attribute 데이터 형식이 다름, 표준을 준수하는 XSD 파일
- Input: xml 로드
- Expected Output: xml 로드 실패
TC04 - Precondition: 표준에 명시된 모든 element, attribute를 포함하는 xml 파일, 표준을 준수하는 XSD 파일
- Input: xml 로드
- Expected Output: 새로 생성된 파일은 입력한 xml 파일과 변경된 부분을 제외하고 모두 동일
본 개시 내용의 상호운용성 자동화 테스트는 커밋 빌드시 XML 입출력에 대한 API(Application Program Interface) 단위테스트를 위해 이용될 수 있다.
한편, 본 개시 내용에 따르면, 소스코드 수준의 테스트가 필요한 경우 개발자동화 머신(130)의 코드 테스트 자동화 모듈(137)은 통합 개발 환경(111)으로부터의 커밋 빌드 요청에 응답하여 소스코드 자동화 테스트를 수행할 수 있다.
임의의 제시된 프로세스들에 있는 단계들의 임의의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 예시적인 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.
본 명세서 사용되는 용어 "컴포넌트", "머신", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭할 수 있다. 예를 들어, 모듈은 프로세서상에서 실행되는 처리과정, 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 모듈일 수 있다. 하나 이상의 모듈은 프로세서 및/또는 실행 스레드 내에 상주할 수 있고, 일 모듈은 하나의 컴퓨터 내에 로컬화될 수 있고, 또는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 모듈들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다.
컴퓨터 판독가능한 매체는, 직접 및/또는 간접적이든, 원시 상태, 포맷화된 상태, 조직화된 상태 또는 임의의 다른 액세스 가능한 상태이든 관계없이, 관계형 레파지토리, 비관계형 레파지토리, 인-메모리(in-memory) 레파지토리, 또는 데이터를 저장할 수 있고 저장 제어기를 통해 이러한 데이터에 대한 액세스를 허용할 수 있는 다른 적절한 레파지토리와 같이 분산형을 포함하는 레파지토리를 포함할 수 있다. 또한, 저장 매체는, 1차 저장 장치(storage), 2차 저장 장치, 3차 저장 장치, 오프라인 저장 장치, 휘발성 저장 장치, 비휘발성 저장 장치, 반도체 저장 장치, 자기 저장 장치, 광학 저장 장치, 플래시 저장 장치, 하드 디스크 드라이브 저장 장치, 플로피 디스크 드라이브, 자기 테이프, 또는 다른 적절한 데이터 저장 매체와 같은 임의의 타입의 저장 장치를 포함할 수 있다.
본 명세서에서, 명령어는 어셈블러 명령어, 명령어 세트 아키텍처(instruction-set-architecture, ISA) 명령어, 머신 명령어, 머신 의존 명령어, 마이크로 코드, 펌웨어 명령어, 상태 설정 데이터, 또는 Smalltalk, C ++ 등과 같은 객체 지향 프로그래밍 언어 및 "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어와 같은 종래의 절차적 프로그래밍 언어를 포함하는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성된 소스 코드 또는 객체 코드 중 어느 하나일 수 있다.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.
110: 개발자 컴퓨터
111: 통합 개발 환경
120: 형상관리 머신
121: 저장소
130: 개발자동화 머신
131: CI 툴 모듈
132: 분석/리뷰 모듈
133: 시각화 모듈
134: 이슈 관리 모듈
135: 메신저 모듈
136: 상호운용성 테스트 자동화 모듈
137: 코드 테스트 자동화 모듈
140: 빌드 머신
141: 빌드 모듈
142: UI 테스트 자동화 모듈
143: 패키징/배포 모듈

Claims (20)

  1. 의료용 소프트웨어를 위한 테스트 자동화 시스템에 있어서,
    통합 개발 환경으로부터의 테스트 요청에 따라 자동화 테스트를 수행하거나 또는 빌드 머신이 상기 자동화 테스트를 수행하도록 지시하는 개발자동화 머신;
    상기 통합 개발 환경으로부터의 빌드(build) 요청에 따라 빌드를 수행하고, 상기 개발자동화 머신의 테스트 요청에 따라 상기 자동화 테스트를 수행하는 빌드 머신; 및
    상기 자동화 테스트의 수행 결과를 저장하는 형상관리 머신을 포함하고,
    상기 빌드 머신은 상기 통합 개발 환경으로부터의 커밋 빌드 요청에 따라 상기 자동화 테스트로서 스모크테스트(smoke test)를 수행하는 UI(user interface) 테스트 자동화 모듈을 포함하며,
    상기 UI 테스트 자동화 모듈은 상기 의료용 소프트웨어의 레퍼런스 모델과 연관된 테스트케이스들의 서브세트를 대상으로 상기 스모크테스트를 수행하도록 구성되는,
    테스트 자동화 시스템.
  2. 제 1 항에 있어서,
    상기 개발자동화 머신은 자동화 서버로서 동작하며, 상기 자동화 테스트의 수행을 제어하는 CI 툴(continuous integration tool) 모듈을 포함하는,
    테스트 자동화 시스템.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 UI 테스트 자동화 모듈은 상기 테스트케이스들의 서브세트에 기초하여 구성된 입력 영상 데이터를 이용하여 UI 자동화 도구를 통해 자동화 테스트를 수행하는,
    테스트 자동화 시스템.
  5. 제 1 항에 있어서,
    상기 UI 테스트 자동화 모듈은 상기 통합 개발 환경으로부터의 데일리(Daily) 빌드 요청에 따라 상기 자동화 테스트로서 UI 자동화 테스트를 수행하며,
    상기 UI 테스트 자동화 모듈은 상기 의료용 소프트웨어의 전체 인터페이스 기능요소에 대한 테스트케이스들을 대상으로 상기 UI 자동화 테스트를 수행하도록 구성되는,
    테스트 자동화 시스템.
  6. 제 5 항에 있어서,
    상기 UI 테스트 자동화 모듈은 상기 테스트케이스들을 Unattended 케이스, Attended 케이스 및 명세기반 케이스로 분류하고, UI 자동화 도구를 통해 자동화 테스트를 수행하는,
    테스트 자동화 시스템.
  7. 제 1 항에 있어서,
    상기 개발자동화 머신은 상기 통합 개발 환경으로부터의 커밋 빌드 요청에 따라 상기 자동화 테스트로서 상호운용성 자동화 테스트를 수행하는 상호운용성 테스트 자동화 모듈을 포함하는,
    테스트 자동화 시스템.
  8. 제 7 항에 있어서,
    상기 상호운용성 테스트 자동화 모듈은 테스트 데이터를 마크업 랭귀지(markup language) 형태로 입력받아 테스트 오라클을 통해 자동화 테스트를 수행함으로써 상기 의료용 소프트웨어의 입출력 호환성을 검증하는,
    테스트 자동화 시스템.
  9. 제 1 항에 있어서,
    상기 개발자동화 머신은 상기 통합 개발 환경으로부터의 커밋 빌드 요청에 따라 상기 자동화 테스트로서 소스코드 자동화 테스트를 수행하는 코드 테스트 자동화 모듈을 포함하는,
    테스트 자동화 시스템.
  10. 테스트 자동화 시스템의 빌드 머신에 의해 수행되는, 의료용 소프트웨어를 위한 자동화 스모크테스트 방법으로서,
    상기 의료용 소프트웨어의 레퍼런스 모델과 연관되는 테스트케이스들의 서브세트를 결정하는 단계;
    상기 테스트케이스들의 서브세트에 기초하여 입력 영상 데이터를 생성하는 단계;
    상기 입력 영상 데이터를 이용하여 UI 자동화 도구를 통해 자동화 테스트를 수행하는 단계; 및
    상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계를 포함하고,
    상기 자동화 테스트는 통합 개발 환경으로부터의 커밋 빌드 요청에 응답하여 수행되는,
    자동화 스모크테스트 방법.
  11. 삭제
  12. 제 10 항에 있어서,
    상기 의료용 소프트웨어의 레퍼런스 모델은 골든모델 모델링에 기초하여 결정되는,
    자동화 스모크테스트 방법.
  13. 테스트 자동화 시스템의 빌드 머신에 의해 수행되는, 의료용 소프트웨어를 위한 UI 자동화 테스트 방법으로서,
    상기 의료용 소프트웨어의 전체 인터페이스 기능요소들에 대한 테스트케이스들을 결정하는 단계;
    상기 테스트케이스들에 대하여 UI 자동화 도구를 통해 자동화 테스트를 수행하는 단계; 및
    상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계를 포함하고,
    상기 테스트케이스들을 결정하는 단계는 상기 의료용 소프트웨어의 결함 분석 또는 추가 기능요소에 기초하여 상기 UI 자동화 테스트의 테스트케이스들을 업데이트하는 단계를 포함하며,
    상기 UI 자동화 테스트는 통합 개발 환경으로부터의 데일리 빌드 요청에 응답하여 수행되며,
    상기 테스트케이스는 UI 이벤트 기반 스크립트 형태로 생성되는,
    UI 자동화 테스트 방법.
  14. 삭제
  15. 제 13 항에 있어서,
    상기 테스트케이스들을 결정하는 단계는 Unattended 케이스, Attended 케이스 및 명세기반 케이스를 포함하는 테스트케이스들을 결정하는 단계를 포함하는,
    UI 자동화 테스트 방법.
  16. 삭제
  17. 테스트 자동화 시스템의 개발자동화 머신에 의해 수행되는, 의료용 소프트웨어를 위한 상호운용성 자동화 테스트 방법으로서,
    상기 의료용 소프트웨어와 연관된 데이터 표준에 기초하여 테스트케이스들을 결정하는 단계;
    상기 테스트케이스들의 테스트 데이터에 대하여 테스트 오라클을 통해 자동화 테스트를 수행하는 단계; 및
    상기 자동화 테스트의 수행 결과를 자동화 테스트 저장소에 저장 및 관리하는 단계를 포함하는,
    상호운용성 자동화 테스트 방법.
  18. 제 17 항에 있어서,
    상기 테스트케이스들의 테스트 데이터는 확장가능 마크업 랭귀지(XML: Extensible Mark-up Language) 형태로 구성되는,
    상호운용성 자동화 테스트 방법.
  19. 제 17 항에 있어서,
    상기 자동화 테스트를 수행하는 단계는 상기 테스트 오라클을 통해 상기 테스트 데이터의 입력 및 출력을 테스트함으로써 각각의 테스트케이스에 대한 출력과 상기 데이터 표준에 기초한 기대 출력을 비교하여 해당 테스트케이스의 상호운용성을 판단하는 단계를 포함하는,
    상호운용성 자동화 테스트 방법.
  20. 제10항, 제12항, 제13항, 제15항, 제17항, 제18항 및 제19항 중 어느 한 항에 따른 방법을 실행하기 위한 컴퓨터-실행가능 명령들을 포함하는, 컴퓨터 판독가능 매체에 저장된 컴퓨터 프로그램.
KR1020190053085A 2019-05-07 2019-05-07 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법 KR102617906B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190053085A KR102617906B1 (ko) 2019-05-07 2019-05-07 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190053085A KR102617906B1 (ko) 2019-05-07 2019-05-07 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법

Publications (2)

Publication Number Publication Date
KR20200129232A KR20200129232A (ko) 2020-11-18
KR102617906B1 true KR102617906B1 (ko) 2023-12-27

Family

ID=73697599

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190053085A KR102617906B1 (ko) 2019-05-07 2019-05-07 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법

Country Status (1)

Country Link
KR (1) KR102617906B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102559801B1 (ko) * 2021-07-19 2023-07-27 주식회사 카비랩 의료빅데이터를 위한 MLOps기반 연동시스템 구축 및 운영 방법
CN114546858B (zh) * 2022-02-23 2024-04-30 霖久智慧(广东)科技有限公司 基于物业行业的接口自动化测试平台

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009519544A (ja) * 2005-12-12 2009-05-14 アーカイブス,インク. 自動ソフトウェアテストフレームワーク

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100794323B1 (ko) 2005-10-04 2008-01-11 중앙대학교 산학협력단 자동화된 통합 프레임워크를 위한 확장된 시멘틱 웹 서비스검색방법
KR20160031339A (ko) * 2014-09-12 2016-03-22 주식회사 케이티 소스 코드의 테스트 케이스를 안내하는 소스 코드의 테스트 안내 장치 및 소스 코드의 테스트 안내 방법
KR20180083531A (ko) * 2017-01-13 2018-07-23 한국전자통신연구원 위성관제 소프트웨어를 위한 테스트 자동화 시스템 및 테스트 자동화 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009519544A (ja) * 2005-12-12 2009-05-14 アーカイブス,インク. 自動ソフトウェアテストフレームワーク

Also Published As

Publication number Publication date
KR20200129232A (ko) 2020-11-18

Similar Documents

Publication Publication Date Title
US10318412B1 (en) Systems, methods, and apparatus for dynamic software generation and testing
CN111158674B (zh) 组件管理方法、系统、设备及存储介质
US20080072217A1 (en) Method, apparatus, and system for customizing and performing policy in version control
CN107609188B (zh) 基于GoldenGate的数据同步校验方法
US9971595B1 (en) Techniques for automated database deployment
KR102617906B1 (ko) 의료용 소프트웨어를 위한 테스트 자동화 프레임워크 시스템 및 테스트 자동화 방법
CN110659018B (zh) 一种流程引擎实现方法及装置
CN111176613B (zh) 基于体系结构模型的协同任务自动分解系统
CN107844343A (zh) 一种复杂服务端应用系统的升级系统及方法
WO2022217889A1 (zh) 一种基于c#语言的抓具配置系统、方法、装置和存储介质
Stevens Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodels
BR112019018281A2 (pt) método de gestão do ciclo de vida de um objeto de engenharia complexo e do sistema para a sua implementação
CN103069382A (zh) 在面向服务的架构储存库之间的迁移工件
CN113535141A (zh) 数据库操作代码的生成方法及装置
Osaiweran et al. Evaluating the effect of a lightweight formal technique in industry
CN117312270A (zh) 一种数据库自动化构建和部署的变更管理方法
US20110023010A1 (en) Reserved component container-based software development method and apparatus
CN105468445B (zh) 一种基于WEB的Spark应用程序调度方法及系统
CN103995699A (zh) 基于mda的电力企业信息系统开发方法
CN110471681A (zh) 应用程序的自动变更方法、系统、装置及存储介质
CN105653445A (zh) 一种满足do-178c测试结果的实现方法
CN111966665B (zh) 数据迁移测试方法及装置
CN105204383B (zh) 应用伺服系统的生成方法和装置
US9946534B1 (en) Techniques for automated database deployment
Demuth et al. Co-evolution of Metamodels and Models through Consistent Change Propagation.

Legal Events

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