KR101118602B1 - 장면 기반 테스트 자동화 방법 및 그 시스템 - Google Patents

장면 기반 테스트 자동화 방법 및 그 시스템 Download PDF

Info

Publication number
KR101118602B1
KR101118602B1 KR1020110103052A KR20110103052A KR101118602B1 KR 101118602 B1 KR101118602 B1 KR 101118602B1 KR 1020110103052 A KR1020110103052 A KR 1020110103052A KR 20110103052 A KR20110103052 A KR 20110103052A KR 101118602 B1 KR101118602 B1 KR 101118602B1
Authority
KR
South Korea
Prior art keywords
scene
program
event
test
scenario
Prior art date
Application number
KR1020110103052A
Other languages
English (en)
Inventor
문일룡
Original Assignee
어니컴 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 어니컴 주식회사 filed Critical 어니컴 주식회사
Priority to KR1020110103052A priority Critical patent/KR101118602B1/ko
Priority to US14/350,796 priority patent/US20140258989A1/en
Priority to PCT/KR2011/008004 priority patent/WO2013054975A1/ko
Application granted granted Critical
Publication of KR101118602B1 publication Critical patent/KR101118602B1/ko

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • 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

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

장면 기반 테스트 자동화 방법 및 그 시스템 { Method and system for GUI testing with scene-driven scenario }
본 발명은 테스트 자동화 방법 및 그 시스템에 관한 것으로, 보다 상세하게는 소프트웨어를 시나리오에 의해 자동으로 테스트하여 사용자인터페이스의 흐름을 기획하거나 개발된 소프트웨어를 검증하는 방법과 그 시스템에 관한 것이다.
소프트웨어의 개발생명주기(Software Develope Life Cycle)에서 개발된 소프트웨어를 검증하고 테스트하는 과정은 매우 중요하다. 이는 외부로 노출되지 않은 숨어있는 버그를 찾아내는 과정 뿐 아니라 사용자인터페이스의 흐름이 실제로 의도하고 기획한 시나리오 그대로 동작하는지 확인하는 과정을 포함한다. 특히 사용자인터페이스(User Interface) 환경이 사용자친화적인 GUI(Graphic User Interface)로 구현되는 경우가 대부분이고, 사용자의 소프트웨어 사용경험 또한 GUI 편리성에 집중되어 있음에 따라 사용자인터페이스 테스팅이 더욱 중요해진 실정이다.
이러한 소프트웨어 테스트 시스템으로서 다양한 도구들이 제시되어 있는데 대부분은 테스트 스크립트를 작성하고 실행하여 그 결과를 도출하는 형식을 취하고 있다. (충남대학교 논문 "시나리오의 자동생성을 통한 GUI 테스트 케이스 생성 방법" 및 등록특허 10-1014679) 그러나 이러한 방식은 사용자가 직접 문법에 맞는 테스트 스크립트를 작성하여야 하는 번거로움이 있고, 테스트 스크립트를 해석하고 분석하여야 하므로 유지보수에 어려움이 있을 뿐 아니라, 테스트 스크립트가 직관적이지 않아 누구나 용이하게 전체 테스트 시나리오를 파악하고 활용하지 못하는 단점이 있다.
따라서 본 발명은 위와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 실제 프로그램 실행화면인 장면 및 이벤트를 기반으로 하여 직관적이고 용이하게 테스트를 자동화할 수 있는 방법 및 그 시스템을 제공하는 것이다.
또한 본 발명의 다른 목적은 프로그램의 사용자 인터페이스 흐름을 인터랙티브하게 설계하고 파악하고 검증할 수 있는 방법 및 그 시스템을 제공하는 것이다.
또한 본 발명의 다른 목적은 프로그램을 실행하고 사용하는 행위로부터 장면 기반 테스트 자동화 시나리오를 추출할 수 있도록 하여 편리하고 직관적인 테스트 자동화 방법 및 그 시스템을 제공하는 것이다.
상기한 바와 같은 목적을 달성하기 위한 본 발명의 특징에 따르면, 본 발명은, 테스트 자동화 시스템에 의해 수행되고, 적어도 둘 이상의 프로그램장면 및 이벤트객체로 구성되는 장면시나리오가 준비되는 준비단계, 상기 장면시나리오를 시계열적으로 해석하여 실행하되, 현재 실행되고 있는 프로그램장면 또는 이벤트객체는 표시부를 통해 외부로 표시되는 장면시나리오 내에서 강조하여 표시하고, 각 이벤트객체가 실행될 때에는 해당 이벤트객체에 대응하는 이벤트신호를 통신연결된 테스트 대상 장치에 송신하는 실행단계, 및 상기 테스트 대상 장치로부터 프로그램실행로그를 수신하여 테스트결과를 생성하는 결과생성단계를 포함하고, 상기 프로그램장면은 테스트 대상 프로그램이 실행되는 테스트 대상 장치의 화면을 구성하는 이미지 또는 그 이미지의 조합으로 구성되고, 상기 이벤트객체는 적어도 둘 이상의 프로그램 장면을 연결하여 시나리오를 진행하는 이벤트를 도식화하여 표현한 표현객체로 구성된다.
본 발명에서, 상기 준비단계는, 테스트 대상 프로그램이 실행되는 테스트 대상 장치로부터 적어도 둘 이상의 프로그램장면 및 상기 각 프로그램장면 사이에 발생한 이벤트데이터를 수신하는 단계, 및 상기 수신한 프로그램장면 및, 이벤트데이터에 대응하는 이벤트객체를 시계열적으로 연결하여 장면시나리오를 생성하는 단계를 포함한다.
본 발명에서, 상기 준비단계는, 사용자의 입력을 받아 상기 각 장면시나리오를 구성하는 프로그램장면 및 이벤트객체를 편집하는 단계를 더 포함한다.
본 발명에서, 상기 이벤트객체는 프로그램실행로그를 분석한 결과에 따라 임의의 프로그램장면으로 연결하는 프로그래밍객체를 더 포함하고, 상기 실행단계는, 실행되는 이벤트객체가 프로그래밍객체일 경우에는 상기 테스트 대상 장치로부터 수신한 프로그램실행로그를 분석하여 그 결과에 따라 연결된 프로그램장면을 실행한다.
본 발명에서, 상기 장면시나리오는, 시간동기화값을 더 포함하고, 상기 실행단계는, 상기 장면시나리오를 시간동기화값을 참조하여 시계열적으로 해석하여 실행한다.
본 발명에서, 상기 이벤트객체는 이벤트를 발생시킬 컴포넌트식별값 및 이벤트종류를 포함하고, 상기 이벤트신호는 이벤트를 발생시킬 컴포넌트식별값 및 이벤트종류를 포함한다.
본 발명에서, 상기 프로그램실행로그는 상기 테스트 대상 장치에서 테스트 대상 프로그램이 실행되는 실행장면데이터를 포함하고, 상기 결과생성단계는, 상기 테스트 대상 장치로부터 수신한 실행장면데이터와 현재 실행되고 있는 프로그램장면을 비교분석하여 테스트 결과를 생성한다.
삭제
본 발명은, 테스트 대상 장치와 통신연결된 통신부, 적어도 둘 이상의 프로그램장면 및 이벤트객체로 구성되는 장면시나리오를 저장하는 장면시나리오관리부, 상기 장면시나리오를 시계열적으로 해석하여 실행하되, 현재 실행되고 있는 프로그램장면 또는 이벤트객체를 표시부를 통해 외부로 표시되는 장면시나리오 내에서 강조하여 표시하고, 각 이벤트객체가 실행될 때에는 해당 이벤트객체에 대응하는 이벤트신호를 상기 통신부를 통해 테스트 대상 장치에 송신하는 테스트실행부, 및 상기 테스트 대상 장치로부터 프로그램실행로그를 수신하여 테스트결과를 생성하는 테스트분석부를 포함하고, 상기 프로그램장면은 테스트 대상 프로그램이 실행되는 테스트 대상 장치의 화면을 구성하는 이미지 또는 그 이미지의 조합으로 구성되고, 상기 이벤트객체는 적어도 둘 이상의 프로그램 장면을 연결하여 시나리오를 진행하는 이벤트를 도식화하여 표현한 표현객체로 구성된다.
본 발명은 실제 프로그램 실행화면인 장면 및 이벤트를 기반으로 하여 직관적이고 용이하게 테스트를 자동화할 수 있는 방법 및 그 시스템을 제공할 수 있다.
또한 본 발명은 프로그램의 사용자 인터페이스 흐름을 인터랙티브하게 설계하고 파악하고 검증할 수 있는 방법 및 그 시스템을 제공할 수 있다.
또한 본 발명은 프로그램을 실행하고 사용하는 행위로부터 장면 기반 테스트 자동화 시나리오를 추출할 수 있도록 하여 편리하고 직관적인 테스트 자동화 방법 및 그 시스템을 제공할 수 있다.
도 1은 본 발명에 의한 테스트 자동화 시스템을 도시한 블록도이다.
도 2는 테스트 대상 장치와 본 발명에 의한 테스트 자동화 시스템이 연결된 화면을 나타낸 도면이다.
도 3은 본 발명에 의한 장면 기반 테스트 자동화 방법을 나타낸 흐름도이다.
도 4는 본 발명에 의한 장면시나리오를 나타낸 도면이다.
도 5는 본 발명에 의한 장면시나리오에 포함되는 다양한 이벤트객체를 나타낸 도면이다.
도 6은 테스트 대상 장치 화면에서 각 컴포넌트 구성의 예시를 나타낸 도면이다.
이하에서는 본 발명의 실시예에 의한 장면 기반 테스트 자동화 방법 및 그 시스템을 도면을 참조하여 상세하게 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.
다만 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다.
도 1은 본 발명에 의한 테스트 자동화 시스템을 도시한 블록도이고, 도 2는 테스트 대상 장치와 본 발명에 의한 테스트 자동화 시스템이 연결된 화면을 나타낸 도면이다. 본 발명에 의한 장면 기반 테스트 자동화 시스템(100)은 외부의 테스트 대상 장치(200)와 통신연결되어 테스트를 진행한다. 외부의 테스트 대상 장치(200)라 함은 테스트의 대상이 되는 프로그램을 설치하고 실행하는 장치로서 PC(Personal Computer), 노트북, 스마트폰, 태블릿PC 등 정보처리가 가능한 모든 전자기기를 포함한다. 장면 기반 테스트 자동화 시스템(100)과 테스트 대상 장치(200)는 케이블통신, 무선통신 등 전자적 데이터 교환이 가능한 모든 통신 수단을 통해 연결되어 있을 수 있다. 장면 기반 테스트 자동화 시스템(100)은 장면시나리오를 관리하는 장면시나리오관리부(111), 테스트실행부(121), 테스트분석부(131) 및 통신부(141)를 포함하는데, 상기 각 구성요소는 하드웨어 또는 하드웨어를 구동하는 소프트웨어 모듈로서 각각 구현될 수 있으며 각 기능과 역할에 대하여는 아래에서 설명된다.
도 3은 본 발명에 의한 장면 기반 테스트 자동화 방법을 나타낸 흐름도이다. 우선, 테스트를 진행하기 전에 상기 장면 기반 테스트 자동화 시스템(100)의 통신부(141)와 테스트 대상 장치(200)는 통신연결되어 있어야 한다. 장면시나리오관리부(111)는 장면시나리오를 저장하고 있는데, 장면시나리오는 적어도 둘 이상의 프로그램장면과 상기 각 프로그램장면을 연결하는 이벤트객체의 집합으로 이루어진다. 프로그램장면은 테스트 대상 프로그램이 실행되는 화면을 기록한 데이터를 말하는데 일종의 스크린샷과 같은 이미지 또는 상기 이미지의 집합으로 구현될 수 있다. 도 4는 본 발명에 의한 장면시나리오의 한 예시를 설명하고 있다. 테스트의 대상이 되는 프로그램에 대한 예시로서 표시되는 임의의 도형을 터치패널 상에서 사용자가 드래그 입력하여 궤적을 만들면 그 궤적에 의해 균등분할하는 미션을 가진 게임을 생각할 수 있다. 도시된 바와 같이, 게임 프로그램의 시작과 동시에 "START"라는 버튼이 표시된 화면이 나타난다. 해당 버튼을 터치입력하면 "profile", "help", 및 "play"라는 버튼을 가진 화면이 보이게 되고, "profile"이라는 버튼을 클릭하면 게이머의 프로필 정보를 입력하고, "help"라는 버튼을 클릭하면 게임설명을 확인할 수 있고, "play"라는 버튼을 클릭하면 게임을 시작할 수 있으며, 게임의 미션을 완성하면 초기 화면으로 돌아오는 기능을 가진다고 하자. 도면에서 각 6개의 프로그램장면은 시나리오를 구성하는 각각 프로그램 실행화면을 스크린샷한 이미지이다. 이들을 서로 연결하는 것은 다양한 이벤트객체이다. 이벤트객체라 함은 테스트 시나리오(장면시나리오)에서 사용자의 입력 등 시나리오 진행을 트리거링하는 각 이벤트를 도식화하여 표현한 표현객체를 의미한다. 다양한 이벤트객체의 예시는 도 5에 잘 나타나 있는데, 사용자가 화살표의 시작점을 터치하였음을 의미하는 터치이벤트(501), 사용자가 화살표의 시작점에 위치한 부분에 키패트입력을 하였음을 의미하는 키패드이벤트(502), 사용자가 속이 빈 화살표의 시작점부터 뾰족한 끝점까지 드래그입력하였음을 의미하는 드래그이벤트(503) 및 임의의 프로그래밍된 트리거 조건을 만족하는지 여부를 파악하여 분기하는 프로그래밍객체(504)를 포함하여 다양한 형태의 이벤트객체가 정의되고 활용될 수 있다. (상기 각 이벤트객체에서의 화살표의 끝은 다음 실행될 프로그램장면을 가리킨다.)
이로써 도 4의 장면시나리오를 다시 해석하면 게임시작과 동시에 "START"라는 글씨가 표시된 버튼이 화면 가운데 표시되고, 해당 버튼을 터치입력하면, "profile", "help", "play"라는 각 3개의 버튼이 표시되는 프로그램장면으로 넘어간다. 다음으로 "profile"라는 버튼이 터치입력되고, 게이머의 설정된 사진 및 이름을 설정할 수 있는 프로그램장면이 표시된다. 이 때, 게이머의 이름을 설정할 수 있는 텍스트박스에 "SIMPSON"이라는 키패드입력을 하고, "OK"라는 버튼을 터치입력하면 다시 "profile", "help", "play"라는 각 3개의 버튼이 표시되는 프로그램장면으로 넘어간다. 이번에는 "play"라는 버튼을 터치입력하게 되고, 화면의 가운데에 원이 표시된 게임화면으로 전이된다. 이 때, 드래그입력으로서 원을 균등하게 분할하며 지나는 이벤트가 발생하고, 그 궤적에 의해 원이 균등분할된 객체와, "Good job! SIMPSON"이라는 텍스트객체와, "OK"라는 버튼객체가 함께 표시되는 프로그램장면으로 넘어가고, 상기 "OK"버튼이 터치입력되며 초기화면으로 다시 돌아가게 된다.
이러한 장면시나리오는 장면시나리오관리부(111)에 저장되고 사용자에게 위지윅(what you see is what you get)방식의 편집 기능을 제공하여 각 프로그램장면 또는 이벤트객체를 수정, 부가, 삭제할 수 있다. 또한, 장면시나리오는 장면시나리오관리부(111)가 실제 테스트 대상 프로그램이 실행되는 테스트 대상 장치로부터 시계열적인 순서로 각 프로그램장면 및 이벤트데이터를 통신부(141)를 통해 수신하고, 이를 해석 및 분석하여 프로그램장면과 각 이벤트데이터에 대응하는 이벤트객체의 집합으로서 장면시나리오를 자동생성할 수 있다. 이 때, 이벤트데이터라 함은 어떤 이벤트가 어느 위치(좌표 등)에서 발생하였는지 등에 대한 전기적 신호를 의미한다.
또한 상기 장면시나리오는 시간동기화값을 더 포함할 수 있다. 예를 들어, 시간동기화값은 어느 프로그램장면에서 몇초 머물고 다음 이벤트객체를 실행할 것인지에 관한 시간값일 수 있고, 이로써 장면시나리오가 실행될 때 적절한 재생시간으로 조절될 수 있고, 시간에 따른 화면변화를 테스트의 대상으로 할 수도 있다. 물론, 이러한 시간동기화값은 장면시나리오관리부(111)에서 제공하는 편집기능에 의해 사용자가 편집할 수 있고, 상기 실제 프로그램이 실행되는 테스트 대상 장치로부터 각 프로그램장면 및 이벤트데이터를 수신/해석/분석하여 장면시나리오를 자동생성할 때 함께 시간정보가 수신/해석/분석되어 자동으로 포함될 수도 있다.
이렇게 장면시나리오가 준비되면(S311), 테스트실행부(121)가 상기 장면시나리오를 시계열적으로 해석하여 실행한다.(S321) 실행은 시간동기화값에 의해 제어될 수 있고, 각 이벤트객체가 실행될 때에는 해당 이벤트객체에 대응하는 이벤트신호(해당 이벤트를 발생시키라는 전기적신호)를 통신연결된 테스트 대상 장치에 송신하여, 실제로 테스트 대상 장치(200)에서 해당 이벤트신호에 해당하는 이벤트가 발생되도록 한다. 이 때, 도 4에 도시된 바와 같이 현재 실행되고 있는 프로그램장면 또는 이벤트객체는 표시부를 통해 외부로 표시되는 장면시나리오 내에서 강조하여 표시하는 것이 직관적으로 장면시나리오 진행상황을 파악하게 하는 데 도움이 된다.
테스트분석부(131)는 테스트 대상 장치(200)로부터 프로그램실행로그를 수신하여 테스트결과를 생성한다.(S331) 프로그램실행로그란 테스트 대상 프로그램이 실행되면서 결과값으로 나오는 모든 데이터를 의미하는데, 실제로 프로그램이 실행되고 있는 실행장면데이터(스크린샷)일 수도 있고 콘솔을 통해 출력되는 값(trace)일 수도 있다. 만일, 실행장면데이터를 테스트분석부(131)가 분석하는 경우에는 그 일부 또는 전부를 현재 장면시나리오에서 실행중인 프로그램장면과 동일한지 비교하여 테스트의 결과가 정상인지 비정상인지 체크하는 방식으로 테스트 결과를 생성할 수 있고, 트레이스값을 파싱하여 결과를 생성할 수도 있다.
장면시나리오 실행 도중 통신부(141)가 테스트 대상 장치(200)로부터 수신하는 프로그램실행로그는 결과값에 따라서 다른 형태의 시나리오가 실행되도록 분기하는 프로그래밍객체에서 활용될 수도 있다. 예를 들어, 이벤트객체가 프로그램실행로그인 경우에, 프로그램실행로그를 분석하여 트레이스값에 어떤 값이 포함되어 있는지 분석하여 그 결과에 따라 각각 다른 프로그램장면으로 분기하도록 장면시나리오가 구성될 수도 있다.
상기 이벤트객체는 이벤트종류와 이벤트가 발생하는 좌표값을 포함하여 구현될 수도 있지만 이벤트가 발생하는 컴포넌트의 핸들(식별값)을 기반으로 구현할 수 있다. 도 6에 도시된 바와 같이, 어느 한 GUI화면에서는 배경컴포넌트(601) 위에 이미지컴포넌트(611), 텍스트입력컴포넌트(612), 버튼컴포넌트(613) 등 다양한 컴포넌트가 포함될 수도 있다. 이 경우 각 컴포넌트는 내부적으로 고유한 핸들(식별값)을 가지게 되는데, 이로써 이벤트의 발생을 기록하고 생성을 명령하는 데 사용하면 보다 더 정교한 컨트롤이 가능하고 효율적인 시나리오 저장이 가능한 장점이 있다. 이 경우 각 이벤트객체는 컴포넌트식별값 및 이벤트 종류에 관한 정보를 포함하여야 한다.
본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구의 범위에 의하여 나타내어지며, 특허청구의 범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 : 장면 기반 테스트 자동화 시스템
111 : 장면시나리오관리부 121 : 테스트실행부
131 : 테스트분석부 141 : 통신부
200 : 테스트 대상 장치
501 : 터치입력이벤트객체
502 : 키패드입력이벤트객체
503 : 드래그입력이벤트객체
504 : 프로그래밍객체
601 : 배경컴포넌트 611 : 이미지컴포넌트
612 : 텍스트입력컴포넌트 613 : 버튼컴포넌트

Claims (9)

  1. 테스트 자동화 시스템에 의해 수행되고,
    적어도 둘 이상의 프로그램장면 및 이벤트객체로 구성되는 장면시나리오가 준비되는 준비단계;
    상기 장면시나리오를 시계열적으로 해석하여 실행하되, 현재 실행되고 있는 프로그램장면 또는 이벤트객체는 표시부를 통해 외부로 표시되는 장면시나리오 내에서 강조하여 표시하고, 각 이벤트객체가 실행될 때에는 해당 이벤트객체에 대응하는 이벤트신호를 통신연결된 테스트 대상 장치에 송신하는 실행단계; 및
    상기 테스트 대상 장치로부터 프로그램실행로그를 수신하여 테스트결과를 생성하는 결과생성단계;를 포함하고,
    상기 프로그램장면은 테스트 대상 프로그램이 실행되는 테스트 대상 장치의 화면을 구성하는 이미지 또는 그 이미지의 조합으로 구성되고,
    상기 이벤트객체는 적어도 둘 이상의 프로그램 장면을 연결하여 시나리오를 진행하는 이벤트를 도식화하여 표현한 표현객체로 구성되는, 장면 기반 테스트 자동화 방법.
  2. 제1항에 있어서,
    상기 준비단계는,
    테스트 대상 프로그램이 실행되는 테스트 대상 장치로부터 적어도 둘 이상의 프로그램장면 및 상기 각 프로그램장면 사이에 발생한 이벤트데이터를 수신하는 단계; 및
    상기 수신한 프로그램장면 및, 이벤트데이터에 대응하는 이벤트객체를 시계열적으로 연결하여 장면시나리오를 생성하는 단계;를 포함하는, 장면 기반 테스트 자동화 방법.
  3. 제1항에 있어서,
    상기 준비단계는,
    사용자의 입력을 받아 상기 각 장면시나리오를 구성하는 프로그램장면 및 이벤트객체를 편집하는 단계;를 더 포함하는, 장면 기반 테스트 자동화 방법.
  4. 제3항에 있어서,
    상기 이벤트객체는 프로그램실행로그를 분석한 결과에 따라 임의의 프로그램장면으로 연결하는 프로그래밍객체를 더 포함하고,
    상기 실행단계는, 실행되는 이벤트객체가 프로그래밍객체일 경우에는 상기 테스트 대상 장치로부터 수신한 프로그램실행로그를 분석하여 그 결과에 따라 연결된 프로그램장면을 실행하는, 장면 기반 테스트 자동화 방법.
  5. 제1항에 있어서,
    상기 장면시나리오는, 시간동기화값을 더 포함하고,
    상기 실행단계는, 상기 장면시나리오를 시간동기화값을 참조하여 시계열적으로 해석하여 실행하는, 장면 기반 테스트 자동화 방법.
  6. 제1항에 있어서,
    상기 이벤트객체는 이벤트를 발생시킬 컴포넌트식별값 및 이벤트종류를 포함하고,
    상기 이벤트신호는 이벤트를 발생시킬 컴포넌트식별값 및 이벤트종류를 포함하는, 장면 기반 테스트 자동화 방법.
  7. 제1항에 있어서,
    상기 프로그램실행로그는 상기 테스트 대상 장치에서 테스트 대상 프로그램이 실행되는 실행장면데이터를 포함하고,
    상기 결과생성단계는, 상기 테스트 대상 장치로부터 수신한 실행장면데이터와 현재 장면시나리오에서 실행중인 프로그램장면을 비교분석하여 테스트 결과를 생성하는, 장면 기반 테스트 자동화 방법.
  8. 삭제
  9. 테스트 대상 장치와 통신연결된 통신부;
    적어도 둘 이상의 프로그램장면 및 이벤트객체로 구성되는 장면시나리오를 저장하는 장면시나리오관리부;
    상기 장면시나리오를 시계열적으로 해석하여 실행하되, 현재 실행되고 있는 프로그램장면 또는 이벤트객체를 표시부를 통해 외부로 표시되는 장면시나리오 내에서 강조하여 표시하고, 각 이벤트객체가 실행될 때에는 해당 이벤트객체에 대응하는 이벤트신호를 상기 통신부를 통해 테스트 대상 장치에 송신하는 테스트실행부; 및
    상기 테스트 대상 장치로부터 프로그램실행로그를 수신하여 테스트결과를 생성하는 테스트분석부;를 포함하고,
    상기 프로그램장면은 테스트 대상 프로그램이 실행되는 테스트 대상 장치의 화면을 구성하는 이미지 또는 그 이미지의 조합으로 구성되고,
    상기 이벤트객체는 적어도 둘 이상의 프로그램 장면을 연결하여 시나리오를 진행하는 이벤트를 도식화하여 표현한 표현객체로 구성되는, 장면 기반 테스트 자동화 시스템.
KR1020110103052A 2011-10-10 2011-10-10 장면 기반 테스트 자동화 방법 및 그 시스템 KR101118602B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020110103052A KR101118602B1 (ko) 2011-10-10 2011-10-10 장면 기반 테스트 자동화 방법 및 그 시스템
US14/350,796 US20140258989A1 (en) 2011-10-10 2011-10-26 Method and system for automating a scene-based test
PCT/KR2011/008004 WO2013054975A1 (ko) 2011-10-10 2011-10-26 장면 기반 테스트 자동화 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110103052A KR101118602B1 (ko) 2011-10-10 2011-10-10 장면 기반 테스트 자동화 방법 및 그 시스템

Publications (1)

Publication Number Publication Date
KR101118602B1 true KR101118602B1 (ko) 2012-02-27

Family

ID=45840569

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110103052A KR101118602B1 (ko) 2011-10-10 2011-10-10 장면 기반 테스트 자동화 방법 및 그 시스템

Country Status (3)

Country Link
US (1) US20140258989A1 (ko)
KR (1) KR101118602B1 (ko)
WO (1) WO2013054975A1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016027923A1 (ko) * 2014-08-20 2016-02-25 주식회사 앤벗 어플리케이션 사용정보 분석자료 제공 방법 및 장치
KR101881804B1 (ko) * 2017-08-16 2018-07-25 넷마블 주식회사 게임 테스트 자동화 장치 및 방법
KR20190019009A (ko) * 2018-07-19 2019-02-26 넷마블 주식회사 게임 테스트 자동화 장치 및 방법
CN110874318A (zh) * 2018-08-31 2020-03-10 浙江宇视科技有限公司 软件测试方法、装置及计算机可读存储介质
KR20200108628A (ko) * 2019-03-11 2020-09-21 아주큐엠에스 주식회사 오브젝트 기반 스크립트를 이용한 게임 테스트 장치 및 그 방법

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9239777B1 (en) * 2011-05-08 2016-01-19 Panaya Ltd. Generating test scenario templates from clusters of test steps utilized by different organizations
CN112256554B (zh) * 2019-07-22 2023-06-16 腾讯科技(深圳)有限公司 一种基于场景测试用例进行测试的方法及设备
CN110851201B (zh) * 2019-10-28 2024-01-16 腾讯科技(深圳)有限公司 应用运行控制方法、装置、终端及存储介质
CN111104341B (zh) * 2019-12-30 2024-01-19 深圳Tcl新技术有限公司 智能家居设备自动化测试方法、装置、设备及存储介质
CN111258882B (zh) * 2020-01-03 2023-08-25 恩亿科(北京)数据科技有限公司 一种基于数字媒体系统的测试数据获取方法及装置
CN112231220B (zh) * 2020-10-26 2022-09-09 腾讯科技(深圳)有限公司 一种游戏测试方法和装置
CN113688042B (zh) * 2021-08-25 2023-06-27 北京赛目科技有限公司 测试场景的确定方法、装置、电子设备及可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080087918A (ko) * 2007-01-09 2008-10-02 어니컴 주식회사 타겟 장치의 자동 검증 방법 및 그 장치
WO2011073759A1 (en) 2009-12-01 2011-06-23 Cinnober Financial Technology Ab Methods and systems for automatic testing of a graphical user interface

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005690A (ja) * 1999-06-21 2001-01-12 Nec Ic Microcomput Syst Ltd プログラムテストシステム
JP2007213249A (ja) * 2006-02-08 2007-08-23 Canon Inc ソフトウェア開発支援装置及びソフトウェア開発支援方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080087918A (ko) * 2007-01-09 2008-10-02 어니컴 주식회사 타겟 장치의 자동 검증 방법 및 그 장치
WO2011073759A1 (en) 2009-12-01 2011-06-23 Cinnober Financial Technology Ab Methods and systems for automatic testing of a graphical user interface

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016027923A1 (ko) * 2014-08-20 2016-02-25 주식회사 앤벗 어플리케이션 사용정보 분석자료 제공 방법 및 장치
KR20160022708A (ko) * 2014-08-20 2016-03-02 주식회사 앤벗 어플리케이션 사용정보 분석자료 제공 방법 및 장치
KR101633670B1 (ko) 2014-08-20 2016-06-28 주식회사 앤벗 어플리케이션 사용정보 분석자료 제공 방법 및 장치
KR101881804B1 (ko) * 2017-08-16 2018-07-25 넷마블 주식회사 게임 테스트 자동화 장치 및 방법
WO2019035610A1 (ko) * 2017-08-16 2019-02-21 넷마블 주식회사 게임 테스트 자동화 장치 및 방법
KR20190019009A (ko) * 2018-07-19 2019-02-26 넷마블 주식회사 게임 테스트 자동화 장치 및 방법
KR102243379B1 (ko) * 2018-07-19 2021-04-22 넷마블 주식회사 게임 테스트 자동화 장치 및 방법
CN110874318A (zh) * 2018-08-31 2020-03-10 浙江宇视科技有限公司 软件测试方法、装置及计算机可读存储介质
CN110874318B (zh) * 2018-08-31 2023-10-24 浙江宇视科技有限公司 软件测试方法、装置及计算机可读存储介质
KR20200108628A (ko) * 2019-03-11 2020-09-21 아주큐엠에스 주식회사 오브젝트 기반 스크립트를 이용한 게임 테스트 장치 및 그 방법
KR102313845B1 (ko) * 2019-03-11 2021-10-18 아주큐엠에스 주식회사 오브젝트 기반 스크립트를 이용한 게임 테스트 장치 및 그 방법

Also Published As

Publication number Publication date
US20140258989A1 (en) 2014-09-11
WO2013054975A1 (ko) 2013-04-18

Similar Documents

Publication Publication Date Title
KR101118602B1 (ko) 장면 기반 테스트 자동화 방법 및 그 시스템
CN108959068B (zh) 软件界面测试方法、设备及存储介质
US9501596B2 (en) Graphical design verification environment generator
US8903691B2 (en) Linking graphical user interface testing tools and human performance modeling to enable usability assessment
CN107844331B (zh) 生成引导配置文件的方法、装置及设备
US9292413B2 (en) Setting breakpoints in a code debugger used with a GUI object
CN107666987A (zh) 机器人过程自动化
CN104375934B (zh) 一种Android手机软件可靠性测试方法
CN110716853A (zh) 一种测试脚本录制方法、应用程序测试方法和相关装置
CN103984626A (zh) 一种生成测试用例脚本的方法及装置
JP5740634B2 (ja) 自動操作システム及び操作自動化方法
KR20200082839A (ko) 프로세스 설정 장치 및 프로세스 설정 장치를 포함하는 로봇 프로세스 자동화 시스템
US20240189724A1 (en) Videogame telemetry data and game asset tracker for session recordings
US10649884B2 (en) Methods and system for constrained replay debugging with message communications
CN107729242A (zh) 一种自动化测试方法、系统、装置及计算机存储介质
CN107391354B (zh) 自动监测终端性能的方法及系统、存储装置
KR101251792B1 (ko) 디버거를 이용한 임베디드 소프트웨어 단위 테스트 자동화 장치 및 방법
CN112461250A (zh) 车辆航位推算服务的评估方法、装置、仿真设备及介质
CN111143227A (zh) 一种数据操作方法、装置、终端及存储介质
CN112525566B (zh) 设备测试方法、装置及电子设备
Cheng et al. A non-intrusive, platform-independent capture/replay test automation system
Wu et al. Intelligent Software Testing based on Visual Feedback
CN117472729A (zh) 一种通用api自动化测试系统
CN117634370A (zh) 一种Verilog代码的功能验证方法及平台
CN113842636A (zh) 一种游戏操作引导完成方法、系统及设备

Legal Events

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

Payment date: 20141114

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151202

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170202

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180209

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20200120

Year of fee payment: 9