KR20150027426A - 애플리케이션 자동검증 시스템 및 방법 - Google Patents

애플리케이션 자동검증 시스템 및 방법 Download PDF

Info

Publication number
KR20150027426A
KR20150027426A KR20130105291A KR20130105291A KR20150027426A KR 20150027426 A KR20150027426 A KR 20150027426A KR 20130105291 A KR20130105291 A KR 20130105291A KR 20130105291 A KR20130105291 A KR 20130105291A KR 20150027426 A KR20150027426 A KR 20150027426A
Authority
KR
South Korea
Prior art keywords
application
view
verification
automatic verification
target
Prior art date
Application number
KR20130105291A
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 KR20130105291A priority Critical patent/KR20150027426A/ko
Publication of KR20150027426A publication Critical patent/KR20150027426A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • G06F11/277Tester hardware, i.e. output processing circuits with comparison between actual response and known fault-free response

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 애플리케이션 자동검증 장치, 시스템 및 방법에 관한 것으로서, 사용자가 작성한 애플리케이션 검증용 스크립트로부터 탐색한 레퍼런스 뷰와 테스트 단말기 상의 애플리케이션 화면정보로부터 탐색한 대상 뷰를 서로 비교함으로써 해당 애플리케이션에 대한 자동검증을 실시하는 것과 관련된다. 특히, 본 발명은 기존의 애플리케이션 검증이 단순히 화면정보의 일치성을 판단하던 것과 달리 화면정보를 구성하는 구조를 파악하여 그로부터 검증하고자 하는 컨텐츠를 포함한 타겟 뷰를 추출해 낼 수 있고, 이에 따라 해당 뷰에 대한 검증을 효과적으로 수행할 수 있다는 점에서 발명의 이점이 있다.
본 발명에 의하면, 검증 대상 애플리케이션의 컨텐츠 구성이 시간에 따라 변경되더라도 검증 시나리오를 재구성할 필요가 없으며, 특정 뷰에 대한 타겟 검증이 가능하다는 등의 효과가 있다.

Description

애플리케이션 자동검증 시스템 및 방법 {Apparatus and Method for Verifying Scripts Automatically}
본 발명은 다수의 단말기 상에서 실행되는 애플리케이션을 자동으로 검증하는 장치, 시스템 및 그 방법에 관한 것이다. 구체적으로는, 검증관련데이터로부터 사용자가 검증하고자 하는 레퍼런스 뷰를 탐색하여 정의해 두고, 현재 실행 중인 애플리케이션의 화면을 분석하여 앞서 탐색된 레퍼런스 뷰와 속성이 유사한 대상 뷰를 검색하며, 이에 대한 테스트 항목 검사를 실시하는 기술과 관련된 것이다.
최근 스마트폰의 등장 이후 이동통신단말 소프트웨어 개발 환경이 개방화되고 있으며, 개발자 수익 모델을 갖춘 시장환경이 형성되는 것과 비례하여 많은 모바일 애플리케이션이 개발되고 있다. 또한 이렇게 개발된 모바일 애플리케이션은 통신 사업자가 제공하는 앱스토어 외 개인 블로그 또는 홈페이지 등 다양한 경로를 통해 배포되고 있다.
이렇듯 이동통신단말의 개발 및 보급이 빠른 속도로 확대되고 다양한 멀티미디어 기능이 하나의 단말기로 통합됨에 따라 소프트웨어 역시 그 복잡성이 증가하고 있다. 이에 최근에는 소프트웨어를 검증하는 도구 및 테스트 업무에 대한 자동화 요구가 증대되고 있으며, 나아가 테스트 업무의 자동화는 소프트웨어의 품질을 개선시키는 데에 있어서도 매우 중요한 역할을 하고 있다.
한편, 애플리케이션을 검증하기 위한 기술에 있어, 기존 레코드(Record) 기반의 애플리케이션 검증 기술은 정적 상태에서의 검증만을 목적으로 고안되어 테스트 대상의 상태가 변하는 경우 검증이 불가능해지거나 검증 시나리오를 다시 구성해야만 하는 문제점이 있어 왔다. 또한, 컨텐츠의 상태 정보를 사전에 저장을 하였더라도 해당정보는 각 검증대상 애플리케이션과 일치하는지를 판단하는 비교기준으로만 사용되고, 검색의 기준이 되지는 못하는 문제점이 있었다.
즉, 기존의 애플리케이션 검증방법은 개발자가 의도한 대로 애플리케이션이 실행되었을 때의 레퍼런스 화면정보와, 실제 애플리케이션이 실행되고 있는 복수 단말기 상의 화면정보만을 비교하여, 단순히 화면정보가 동일한지 여부를 검사하는 수준에서의 애플리케이션 검증이 이루어져 왔다. 따라서 복수 단말기 상에서 실행되는 애플리케이션이 시간에 따라 변경(ex. 애플리케이션 컨텐츠의 배치 순서가 바뀌거나 컨텐츠가 화면 상에서 배제되는 경우 등)되는 경우, 기준이 되는 레퍼런스 화면정보와 동일성이 없는 것으로 판단되어 해당 애플리케이션은 최종적으로 부적합 판정을 받게 되는 문제가 있어왔다. 즉, 실행 애플리케이션의 시간에 따른 컨텐츠 변화에 대응하지 못하고, 그 때마다 레퍼런스 화면정보 및 검증 시나리오 스크립트를 새로 작성하여야 하므로 테스트 계획을 수립하고 테스트 시나리오와 테스트 데이터를 만드는 작업에 많은 시간이 소요되는 문제점이 있었다.
한편, 관련 선행기술로서 국내공개특허 제2007-0104202호 (“휴대폰 소프트웨어 검증을 위한 자동화 테스트 서비스 시스템 및 그 방법”)이 존재한다. 상기 선행기술은 인터넷을 통해 휴대폰 소프트웨어 검증을 위한 자동 테스트 작업을 수행하는 서비스 시스템에 대한 것으로서, 보다 상세하게는 적어도 하나 이상의 테스트 단말에 대해 각각 소프트웨어 및 테스트를 수행할 스크립트가 포함된 테스트 카테고리를 다운로드하여 각 단말들에 대한 테스트 작업을 수행하는 기술내용이 개시되어 있다. 상기 선행기술은 휴대폰 소프트웨어 검증을 함에 있어 특정 스크립트를 이용하는 기술적 특징을 개시하고 있으며, 스크립트 재생을 통해 각 단말장치에서의 휴대폰 소프트웨어를 검증한다는 점에서 이 건 출원발명과 일부 유사하다. 그러나 선행기술은 여전히 스크립트 시나리오가 정적인 상태에서의 테스트 방법을 이용하고 있으며 이러한 검증방식은 시간의 흐름에 따라 변화하는 테스트 대상에 대한 효과적인 검증이 불가능하다는 문제점을 내포하고 있다.
본 발명은 이러한 기술적 배경을 바탕으로 발명되었으며, 이상에서 살핀 기술적 요구를 충족시킴은 물론, 본 기술분야에서 통상의 지식을 가진 자가 용이하게 발명할 수 없는 추가적인 기술요소들을 제공하기 위해 발명되었다.
공개특허 제10-2007-0104202호 (2007.10.25. 공개)
본 발명은 위와 같은 문제점을 해결하기 위해 제안된 것으로서, 시간의 흐름에 따라 검증대상 애플리케이션 컨텐츠에 변경이 생기더라도 기존의 스크립트를 이용하여 검증을 계속할 수 있는 애플리케이션 자동검증 시스템 및 그 방법을 제공한다.
또한 본 발명은, 애플리케이션 컨텐츠의 순서 변동에 따른 타겟 태깅을 지원함으로써 종래 레코드 앤 플레이(Record & Play) 검증방식의 한계를 극복할 수 있는 애플리케이션 자동검증 시스템 및 그 방법을 제공한다.
본 발명은 상기와 같은 과제를 해결하기 위한 수단으로 애플리케이션 자동검증 장치, 시스템 및 방법을 제공한다. 다만, 이러한 발명의 카테고리들은 단어 그 자체에 의해 한정되지 않으며, 이하에서 살펴볼 기술 사상을 포함하는 범위 내에서 다양하게 확장 해석될 수 있다.
먼저, 상기와 같은 과제를 해결하기 위한 본 발명의 일 실시예에 따른 애플리케이션 자동검증 장치는, 스크립트 파일을 포함하는 검증관련데이터를 수신하고, 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하며 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 레퍼런스 뷰를 탐색하는 자동검증 전처리부; 테스트 단말기 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 자동검증 전처리부에서 탐색된 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰(view)를 탐색하고, 상기 대상 뷰에 대해 테스트 항목 검사를 수행한 이후 기 설정된 이벤트를 실행시키는 자동검증부; 상기 검증관련데이터 또는 상기 자동검증 전처리부에서 파싱된 결과데이터를 저장하는 메모리부; 및 상기 자동검증 전처리부, 자동검증부 및 메모리부를 제어하는 제어부; 를 포함한다.
또한, 상기 애플리케이션 자동검증 장치에 있어서, 상기 자동검증 전처리부는 룰 파일을 더 포함하는 검증관련데이터를 수신하고, 상기 룰 파일을 파싱하여 하나 이상의 규칙을 추출하는 것을 특징으로 할 수 있으며, 상기 자동검증부는, 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 뷰가 복수개인 경우, 상기 메모리부에 저장된 규칙에 따라 하나의 뷰를 선별하여 대상 뷰로 정의하고, 상기 대상 뷰에 대해 테스트 항목 검사를 수행할 수 있다.
이 때, 상기 규칙정보는, 뷰의 노드 구성정보를 비교하여 일치성을 판단하기 위한 제1규칙, 뷰의 노드 구성정보 및 텍스트 내용을 비교하여 일치성을 판단하기 위한 제2규칙 중 적어도 어느 하나를 포함할 수 있다.
한편, 상기 애플리케이션 자동검증 장치에 있어서, 상기 화면정보는 XML로 구성되고, 상기 자동검증 전처리부는 화면정보를 구성하는 각 뷰의 경로(path)를 검색함으로써 이벤트가 발생된 레퍼런스 뷰를 탐색하는 것을 특징으로 한다.
또 다른 한편, 상기 애플리케이션 자동검증 장치에 있어서, 상기 테스트 항목 검사는 상기 대상 뷰의 출력화면이 상기 레퍼런스 뷰의 출력화면과 비교하여 설정값 이상의 일치성을 가지는지 여부, 상기 대상 뷰의 컨텐츠가 정상적으로 다운로드 되는지 여부 또는 상기 대상 뷰에 포함된 컨텐츠 목록이 정상적으로 로딩되는지 여부 중 적어도 어느 하나를 포함할 수 있다.
다음으로, 상기와 같은 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 애플리케이션 자동검증 시스템은, 검증하고자 하는 애플리케이션을 실행시키고, 상기 애플리케이션 실행에 따른 화면정보를 애플리케이션 자동검증 장치로 전송하는 하나 이상의 테스트 단말기; 및 검증관련데이터를 수신하여 레퍼런스 뷰를 탐색하고, 상기 테스트 단말기 상에서 실행중인 애플리케이션의 화면정보로부터 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하여 검증하는 애플리케이션 자동검증 장치; 를 포함할 수 있다.
또한, 상기 애플리케이션 자동검증 시스템에 있어서 상기 애플리케이션 자동검증 장치는, 상기 테스트 단말기 상에서 실행중인 애플리케이션의 화면정보 내에 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 뷰가 복수개 존재하는 경우, 룰 파일로부터 추출한 규칙에 따라 하나의 대상 뷰를 선별하여 검증하는 것을 특징으로 한다.
다음으로, 상기와 같은 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 애플리케이션 자동검증 방법은 (a) 애플리케이션 자동검증 장치가 스크립트 파일을 포함하는 검증관련데이터를 수신하는 단계; (b) 애플리케이션 자동검증 장치가 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하는 단계; (c) 애플리케이션 자동검증 장치가 상기 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 레퍼런스 뷰를 탐색하는 단계; (d) 애플리케이션 자동검증 장치가 테스트 단말기 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하는 단계; (e) 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 테스트 항목 검사를 수행하는 단계; 및 (f) (e) 단계 이후, 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 기 설정된 이벤트를 실행시키는 단계; 를 포함할 수 있다.
나아가, 상기 애플리케이션 자동검증 방법에 있어서, 상기 (a) 단계에서의 검증관련데이터는 룰 파일을 더 포함하고, 상기 (b) 단계는 상기 룰 파일을 파싱하여 규칙정보를 추출하는 단계를 더 포함하며, 상기 (d) 단계에서 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 뷰가 복수개 탐색된 경우, 상기 규칙정보에 따라 하나의 뷰를 선별하고 해당 뷰를 대상 뷰로 정의하는 것을 특징으로 한다.
한편, 상기와 같은 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따르면, 애플리케이션 자동검증 장치에 의해 실행될 때, (a) 애플리케이션 자동검증 장치가 스크립트 파일을 포함하는 검증관련데이터를 수신하는 단계; (b) 애플리케이션 자동검증 장치가 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하는 단계; (c) 애플리케이션 자동검증 장치가 상기 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 레퍼런스 뷰를 탐색하는 단계; (d) 애플리케이션 자동검증 장치가 테스트 단말기 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하는 단계; (e) 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 테스트 항목 검사를 수행하는 단계; 및 (f) (e) 단계 이후, 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 기 설정된 이벤트를 실행시키는 단계;를 포함하는 애플리케이션 자동검증 방법이 프로그램으로 기록되고 전자 장치에서 판독 가능한 기록 매체가 제공될 수 있다.
본 발명에 의하면, 현재 실행 중인 애플리케이션의 화면 정보를 분석하여 문법 구조를 파악하여 탐색하게 되므로, 애플리케이션을 자동검증함에 있어 애플리케이션 컨텐츠에 상태변화가 발생하더라도 스크립트를 새롭게 구성할 필요 없이 기존에 사용하던 스크립트를 재사용할 수 있는 효과가 있다.
또한 본 발명에 의하면, 화면 정보의 단순 동일성이 아닌 화면 정보에 포함된 컨텐츠 구조를 탐색하므로 애플리케이션 컨텐츠의 순서가 변동되더라도 컨텐츠 구성 각각에 대한 타겟 검증이 가능한 효과가 있다.
또한 본 발명에 의하면 종래 기술에 비하여 자동검증을 통한 테스트 커버율이 높아지는 이점이 있다.
또한 본 발명에 의하면 애플리케이션 검증을 위한 자동검증시스템을 제공함으로써 개발된 애플리케이션에 대한 테스트 및 개발 기간을 단축시키고, 사용자의 의도에 맞는 애플리케이션 검증이 보다 신속하게 이루어질 수 있다는 효과가 있다.
본 발명의 효과는 이상에서 언급한 효과들로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 효과들이 포함될 수 있다.
도 1은 본 발명에 따른 애플리케이션 자동검증 시스템의 개요이다.
도 2는 자동검증 시스템의 일구성요소인 애플리케이션 자동검증장치의 세부 구성도이다.
도 3는 본 발명의 일실시예에 따른 애플리케이션 자동검증 방법의 흐름도이다.
도 4는 본 발명의 또 다른 실시예에 따른 애플리케이션 자동검증 방법의 흐름도이다.
도 5는 테스트 단말기 상에서 실행 중인 검증대상 애플리케이션의 예시를 나타낸 것이다.
도 6은 상기 도 5의 화면정보를 XML로 구성한 것의 일실시예 및 복수개의 뷰 후보군 중에서 하나의 대상 뷰를 선별하기 위한 규칙의 일 예이다.
본 발명의 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하의 상세한 설명에 의해 보다 명확하게 이해될 것이다. 첨부된 도면을 참조하여 본 발명에 따른 실시예를 상세하게 설명한다.
본 명세서에서 개시되는 실시예들은 본 발명의 범위를 한정하는 것으로 해석되거나 이용되지 않아야 할 것이다. 이 분야의 통상의 기술자에게 본 명세서의 실시예를 포함한 설명은 다양한 응용을 갖는다는 것이 당연하다. 따라서, 본 발명의 상세한 설명에 기재된 임의의 실시예들은 본 발명을 보다 잘 설명하기 위한 예시적인 것이며 본 발명의 범위가 실시예들로 한정되는 것을 의도하지 않는다.
도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한, 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록들 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합일 수 있다.
또한, 어떤 구성요소들을 포함한다는 표현은 “개방형”의 표현으로서 해당 구성요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성요소들을 배제하는 것으로 이해되어서는 안 된다.
나아가 어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급될 때에는, 그 다른 구성요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 한다.
이하 도 1을 참조하여 본 발명의 일 실시예에 따른 개략적인 전체 자동검증 시스템을 살펴본다.
도1은 본 발명에 따른 애플리케이션 자동검증 시스템의 개략적인 구성도를 나타낸 것이다. 도1에 따르면, 본 발명은 애플리케이션 자동검증 장치(100) 및 복수개의 테스트 단말기(200)를 포함한다.
테스트 단말기(200)는 검증하고자 하는 애플리케이션을 단말기 상에 실행시키고, 상기 애플리케이션 실행에 따른 화면정보를 애플리케이션 자동검증 장치(100)로 전송하는 기능을 수행한다.
한편, 상기 복수개의 테스트 단말기(200)들은 각각 상이한 하드웨어 또는 소프트웨어를 구비한 것으로서, 동일한 애플리케이션을 실행시켰을 시 각각의 단말기에서 올바르게 동작하는지를 비교할 수 있도록 함이 바람직하다.
또한, 테스트 단말기(200)에서 애플리케이션 자동검증 장치(100)로 전송되는 화면정보는 바람직하게는 스크립트로 작성된 것으로서, 해당 애플리케이션의 컨텐츠를 구성하는 구성요소들을 개별적으로 파싱하여 구분할 수 있는 언어로 작성될 수 있다.
애플리케이션 자동검증 장치(100)는 외부로부터 검증관련데이터를 수신하여 레퍼런스 뷰를 탐색하고, 상기 테스트 단말기(200)로부터 수신한 화면정보로부터 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하여, 해당 뷰에 대한 검증을 실시하는 기능을 한다.
뷰(view)란 단말기의 출력창을 통해 표시되는 애플리케이션 컨텐츠의 구성요소를 표시하는 프레임으로서 버튼, 텍스트 필드, 체크박스 등의 다양한 애플리케이션 구성요소를 표시할 수 있는 단위프레임을 말한다. 본 발명을 실시함에 있어, 상기 뷰는 애플리케이션 검증시 기준이 되는 것이며, 본 발명은 검증하고자 하는 애플리케이션의 뷰와 현재 단말기 상의 실행되고 있는 뷰를 비교하여 가장 유사한 뷰를 탐색함으로써 애플리케이션을 검증하는 작업을 수행한다.
이하 도 2를 참조하여 본 발명의 일 실시예에 따른 애플리케이션 자동검증 장치(100)를 살펴본다. 도 2에 의하면 본 발명의 일 실시예에 따른 애플리케이션 자동검증 장치(100)는 자동검증 전처리부(110), 자동검증부(120) 및 메모리부(130)를 포함한다.
구체적으로, 상기 자동검증 전처리부(110)는 애플리케이션을 검증하기에 앞서 애플리케이션 검증과 관련한 일련의 데이터를 수신하고, 상기 수신한 데이터를 저장하거나 처리함으로써 검증하고자 하는 애플리케이션에 대한 정보 및 애플리케이션 검증에 있어 필요한 정보를 생성하는 기능을 수행한다. 즉, 자동검증 전처리부(110)는 검증하고자 하는 애플리케이션의 실행 화면정보와의 비교를 위한 기준이 되는 뷰, 즉 레퍼런스 뷰를 설정하고, 사용자가 실시하고자 하는 다양한 테스트 이벤트를 스크립트 파일을 통해 정의하는 등 애플리케이션 검증이 있기 이전에 사전 준비 데이터를 생성하여 메모리부(130)에 저장하는 기능을 수행한다.
상기 자동검증 전처리부(110)는 임의의 클라이언트로부터 스크립트 파일을 포함하는 하나 이상의 검증관련데이터를 수신하고 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하며, 변환된 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 특정 뷰를 탐색한다.
이 때, 스크립트란 애플리케이션을 검증하기 위한 일련의 검증 시나리오를 작성한 것으로서, 상기 스크립트는 사용자가 임의로 작성하여 생성하거나 기존에 생성되어 있던 스크립트를 타 서버로부터 수신하여 이용할 수 있다.
상기 스크립트는 테스트용 명령어들의 집합으로 이루어지며, 본 발명에 따른 애플리케이션 검증은 상기 스크립트에 포함된 검증 시나리오에 따라 이루어진다.
또한, 상기 자동검증 전처리부(110)가 수신하는 검증관련데이터에는 애플리케이션 검증을 위한 스크립트 파일 이외에도 상기 레퍼런스 뷰와 유사한 속성을 가지는 뷰가 복수개인 경우 이 중 대상 뷰를 선별해 내기 위한 규칙정보를 추출해 낼 수 있는 룰 파일, 어느 애플리케이션에 대한 검증이 이루어지는지에 대한 정보가 포함된 애플리케이션 정보 또는 애플리케이션 검증 과정 중 발생하는 모든 이벤트 정보가 기록된 로그(log)파일이 저장될 저장경로 등이 포함될 수 있다.
한편, 상기 스크립트 파일을 파싱하여 변환한 이벤트 객체 내 포함된 화면정보는 바람직하게는 XML로 구성된 것으로서, 자동검증 전처리부(110)는 화면정보를 구성하는 각 뷰의 경로(path)를 검색함으로써 이벤트가 발생된 레퍼런스 뷰를 탐색할 수 있다.
한편, 이벤트란 애플리케이션이 외부 사용자로부터 명령을 입력받아 컨텐츠 상의 변화가 생긴 모든 경우를 일컫는 용어로서, 특히 사용자가 애플리케이션이 실행되고 있는 단말기 상에 의도하고자 하는 동작을 수행하기 위해 애플리케이션을 조작하는 모든 행위를 단말기가 입력으로서 인지하여 일련의 명령으로 인식한 것을 일컫는다. 대표적인 예로서, 사용자가 단말기의 스크린을 터치하여 애플리케이션의 특정 컨텐츠를 선택하는 경우, 상기 사용자 단말기가 스크린 터치 행위를 소프트웨어 명령으로 인식한 것을 하나의 이벤트로 정의할 수 있다.
나아가, 본 발명에서의 “이벤트가 발생된”의 의미는, 애플리케이션 검증을 위한 시나리오 스크립트에 사용자에 의해 미리 설정된 소프트웨어 명령에 따라 특정 이벤트가 설정되었음을 의미하는 것으로서, 일련의 애플리케이션을 검증하기 위한 시나리오 상의 다양한 수행 항목들을 소프트웨어 형식의 명령어 형태로 삽입하여, 특정 뷰에 대해 특정 이벤트가 발생한 것처럼 애플리케이션 자동검증 장치(100)가 인식할 수 있도록 정의한 것을 말하며, 따라서 시나리오 스크립트에 따라 애플리케이션 자동검증 장치(100)는 검증 대상인 애플리케이션의 특정 뷰 또는 컨텐츠에 대해 특정 이벤트가 발생한 것으로 인지하여 애플리케이션 검증을 진행하게 되는 것이다.
자동검증부(120)는 현재 테스트용 단말기 상에서 실행 중인 검증대상 애플리케이션을 실질적으로 검증하는 기능부로서, 애플리케이션 내 특정 뷰(컨텐츠)를 탐색해 내고, 해당 뷰에 대한 테스트 항목을 검사한다.
구체적으로, 상기 자동검증부(120)는 단말기 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 자동검증 전처리부(110)에서 탐색된 레퍼런스 뷰와 유사한 대상 뷰를 탐색하며 상기 탐색된 대상 뷰에 대해 하나 이상의 테스트 항목 검사를 수행한다.
한편, 레퍼런스 뷰와 유사한 대상 뷰를 탐색하는 데 있어 “유사성”의 판단은 각 뷰가 하나 이상의 동일한 속성을 가지는지 여부로 판단하며, 이 때 뷰의 속성에는 화면속성, 컨트롤속성, 이벤트속성 등 해당 뷰를 설정하는데 필요한 모든 종류의 속성이 포함될 수 있다.
또 한편, 하나 이상의 테스트 항목 검사는 구체적으로, 상기 대상 뷰의 출력화면이 상기 레퍼런스 뷰의 출력화면과 비교하여 설정값 이상의 일치도를 가지는지 여부, 상기 대상 뷰의 컨텐츠가 정상적으로 다운로드 되는지 여부 또는 상기 대상 뷰에 포함된 컨텐츠 목록이 정상적으로 로딩되는지 여부 등의 다양한 테스트 항목들을 포함할 수 있다.
특히, 사용자는 화면정보 기준 설정값을 미리 설정해 둘 수 있으며, 레퍼런스 뷰 및 대상 뷰가 각각 포함하는 컨텐츠 화면정보를 비교하여 상기 기준 설정값에 비해 일치도가 낮은 경우 해당 애플리케이션은 부적합한 것으로, 또는 상기 기준 설정값에 비해 일치도가 높은 경우에는 적합한 것으로 판단하도록 설정할 수 있다.
한편, 검증대상 애플리케이션 화면정보 검색결과 레퍼런스 뷰와 유사한 속성을 가지는 뷰가 여러 개 검색될 수도 있으며, 본 발명의 또 다른 실시예에 의하면 이와 같이 대상 뷰 후보군이 여러 개인 경우 하나의 대상 뷰를 선별해 내고 해당 뷰에 대한 검증을 실시하게 된다. 이하, 대상 뷰가 여러 개인 경우 검증대상 뷰 선별과정에 대해 보다 자세히 설명한다.
우선 애플리케이션 자동검증 장치(100)의 자동검증 전처리부(110)는 외부로부터 검증관련데이터를 수신함에 있어 스크립트 파일 뿐만 아니라 룰 파일을 함께 수신할 수 있다. 스크립트 파일은 파싱되어 개별의 이벤트 객체로 변환됨은 앞서 언급한 내용과 같으며, 수신된 룰 파일은 자동검증 전처리부(110)에서 파싱되어 소정의 규칙을 추출해 내는데 이용된다.
이 때 룰 파일로부터 추출되는 규칙정보란, 복수개의 대상 뷰 후보군이 검색되었을 때 하나의 대상 뷰를 선별해 내기 위한 규칙을 정해놓은 것으로서, 바람직하게는 각 뷰의 노드 구성정보만을 비교하여 일치성을 판단하기 위한 제1규칙, 각 뷰의 노드 구성정보 및 텍스트 내용을 비교하여 일치성을 판단하기 위한 제2규칙을 포함할 수 있다.
상기 바람직한 실시예와 같이 제1규칙 또는 제2규칙을 포함하는 규칙정보가 존재하는 경우, 사용자는 자신의 의사에 따라, 신속한 대상 뷰 탐색을 원하는 경우에는 제1규칙에 따라 레퍼런스 뷰와 복수개의 대상 뷰 후보군 간 노드 구성정보만을 비교하도록 설정할 수 있으며, 정확한 대상 뷰 탐색을 원하는 경우에는 제2규칙에 따라 레퍼런스 뷰와 복수개의 대상 뷰 후보군 간 노드 구성정보 및 각 뷰의 텍스트 내용의 일치여부까지 비교하도록 설정할 수 있는 등 검증 상황에 맞는 규칙정보를 선택할 수 있도록 할 수 있다.
이하 도 3을 참조하여 본 발명의 일 실시예에 따른 애플리케이션 자동검증 방법에 대해 살펴본다.
도 3을 참조하면, 본 발명의 일 실시예에 따른 애플리케이션 자동검증 방법은 애플리케이션 자동검증 장치(100)가 스크립트 파일을 포함하는 검증관련데이터를 수신하는 단계(S110)를 포함할 수 있다.
상기 검증관련데이터는 검증이 필요한 애플리케이션을 실행 중인 테스트 단말기(200)로부터 수신할 수 있으며, 테스트 단말기(200)가 아니더라도 기타 애플리케이션에 대한 정보를 저장하고 있는 데이터베이스가 포함된 단말기로부터도 수신할 수 있다. 이 때, 바람직하게는 상기 검증관련데이터는 단말기에 설치된 클라이언트에 의해 전송될 수 있다.
또한, 애플리케이션 자동검증 방법은 상기 S110단계 이후에, 상기 수신한 검증관련데이터 중 스크립트 파일을 파싱하여 이벤트 객체로 변환하는 단계(S120)를 포함할 수 있다.
파싱이란 컴파일러 또는 인터프리터가 특정 프로그램 언어로 된 문서 또는 파일을 기계어로 번역하는 과정의 한 단계로, 각 문장의 문법적인 구성 또는 구문을 분석하는 과정을 일컫는다. 즉, 원시 문서 또는 파일에 포함된 토큰의 열을 받아들여 이를 그 언어의 문법에 맞게 구문 분석 트리로 구성해 내는 것을 말한다.
따라서 상기 스크립트 파일을 파싱한다는 것의 의미는 스크립트 파일에 포함된 다양한 명령어, 구문을 토큰단위로 잘라 분석하고 이를 재구성하여 해당 스크립트 파일의 구조 트리를 파악하고, 더 나아가 파싱에 따라 수집된 각 토큰을 기반으로 상기 스크립트 파일을 애플리케이션 검증시 이용 가능한 형태인 이벤트 객체로 변환한다는 것을 의미한다.
도 2의 애플리케이션 자동검증 장치(100)의 블록도에는 검증관련데이터를 파싱하여 처리하는 파서를 별도로 도시하지 않았으나, 본 발명에 대한 기술 분야에서 통상의 지식을 가진 자라면 스크립트 문서 또는 파일을 파싱하는 기능부를 별도로 구비함으로써 본 발명의 실시가 가능함을 이해 할 수 있을 것이다.
한편, 상기 S120 단계 이후, 애플리케이션 자동검증 방법은 상기 이벤트 객체 내 포함된 화면정보를 검색하여 사용자가 기 설정한 이벤트가 발생된 레퍼런스 뷰를 탐색하는 단계(S130)를 포함할 수 있다.
이 때, 상기 “사용자가 기 설정한 이벤트가 발생된”의 의미는 애플리케이션 검증 시나리오 스크립트에 사용자가 임의로 설정한 이벤트(ex.스크린 터치 입력)가 존재한다는 것을 의미한다.
또한, 바람직한 실시예로서 상기 화면정보는 XML로 작성될 수 있으며, 상기 레퍼런스 뷰를 탐색함에 있어 상기 화면정보를 구성하는 각 뷰의 경로(path)를 검색하는 방법을 이용하는 것은 앞서 상술한 바와 같다.
한편, 상기 S130단계 이후, 애플리케이션 자동검증장치는 테스트 단말기(200) 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 레퍼런스 뷰와 유사한 속성을 가지는 대상 뷰를 탐색한다.(S140)
테스트 단말기(200) 상에서 실행 중인 애플리케이션의 화면정보는 바람직하게는 테스트 단말기(200)에 설치된 클라이언트 모듈을 통해 애플리케이션 자동검증장치로 전송될 수 있으며, 레퍼런스 뷰와 대상 뷰가 유사하다는 것의 의미는 각 뷰가 하나 이상의 동일한 속성을 가진다는 것을 의미한다.
대상 뷰가 탐색된 이후에는, 상기 대상 뷰에 대해 사용자가 검증하고자 하는 테스트 항목 검사가 이루어지며(S150), 테스트 항목 검사에 따라 애플리케이션이 해당 테스트 단말기(200)에서 적절하게 실행되고 있는 것으로 판단되면, 앞서 레퍼런스 뷰에 발생된 이벤트가 상기 대상 뷰에 동일하게 발생된다.(S160)
한편, 상기 S150단계에서 사용자는 각 테스트 항목에 대해 기준 설정값을 설정해 둘 수 있으며, 상기 애플리케이션 자동검증 장치(100)는 각각의 테스트 항목 검사에 따른 결과값이 상기 설정값을 충족시키는 경우 애플리케이션이 적절하게 실행되고 있는 것으로 판단할 수 있다.
이하 도 4를 참조하여 본 발명의 다른 실시예에 따른 애플리케이션 자동검증 방법에 대해 살펴본다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 애플리케이션 자동검증 방법은 앞서 살펴 본 도 3에서의 실시예와 유사하나, 도 4의 실시예는 레퍼런스 뷰와 유사한 대상 뷰 후보군이 복수개인 경우를 상정하고 있다는 점, 상기 복수개의 대상 뷰 후보군 중 하나의 대상 뷰를 선별하기 위해 특정 규칙정보를 이용하고 있다는 점에서 차이가 있다. 이하 위와 같은 차이점을 중심으로 상세하게 설명한다.
우선 당해 실시예에 따른 애플리케이션 자동검증 방법은 애플리케이션 자동검증 장치(100)가 스크립트 파일 및 룰 파일을 포함하는 검증관련데이터를 수신하는 단계를 포함한다. (S210) 스크립트 파일은 사용자가 애플리케이션을 검증하기 위한 시나리오를 스크립트 언어로 작성한 것임은 앞서 설명한 바와 같다. 한편, 룰 파일은 후에 복수개의 대상 뷰 후보군 중에 하나의 대상 뷰를 선별하기 위해 필요한 규칙정보를 추출해 낼 수 있는 원시 파일을 의미한다.
상기 S210단계 이후, 애플리케이션 자동검증 장치(100)는 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하며 나아가 상기 룰 파일을 파싱하여 이로부터 규칙정보를 추출해 낸다.(S220) 상기 추출된 규칙정보는 애플리케이션 자동검증 장치(100) 내 메모리부(130)에 저장되며, 상기 규칙정보에는 뷰의 노드 구성정보를 비교하여 일치성을 판단하기 위한 제1규칙 또는 뷰의 노드 구성정보 및 텍스트 내용을 비교하여 일치성을 판단하기 위한 제2규칙이 포함될 수 있음은 전술한 바와 같다.
한편, 상기 S220단계 이후, 애플리케이션 자동검증 장치(100)는 상기 이벤트 객체 내 포함된 화면정보를 검색하여 레퍼런스 뷰를 탐색한다. (S230)
S230단계 이후, 애플리케이션 자동검증 장치(100)는 테스트 단말기(200) 상에서 실행 중인 검증대상 애플리케이션 화면정보를 검색하여 상기 레퍼런스 뷰와 유사한 속성을 가지는 뷰를 복수개 탐색한다. (S240) 본 실시예에 따르면, 위와 같이 대상 뷰 후보군이 복수개 탐색된 경우, 상기 애플리케이션 자동검증 장치(100)는 앞서 메모리부(130)에 저장된 규칙정보를 호출하여 규칙을 적용시켜 하나의 뷰를 선별해 낼 수 있으며, 선별된 뷰는 대상 뷰로 정의된다. (S250)
한편, 상기 복수개의 후보군 중 선별된 하나의 대상 뷰에 대해 하나 이상의 테스트 항목 검사가 이루어지는 단계(S260) 및 상기 테스트 항목 검사 이후 도출된 대상 뷰에 검증 시나리오 스크립트 상에 정의된 이벤트가 실행됨은 앞서 도 3에서 살펴본 실시예의 내용과 동일하다.
도 5 및 도 6은 본 발명에 따른 일 실시예를 실제 애플리케이션 컨텐츠 및 해당 애플리케이션의 화면정보를 들어 나타낸 것이다.
도 5 및 도 6에 따른 실시예의 전제로서, 애플리케이션 자동검증 장치(100)는 외부 클라이언트로부터 애플리케이션 검증용 스크립트 파일 및 룰 파일을 포함하는 검증관련데이터를 전송받았으며, 이로부터 “운명의 클랜배틀” 이라 표시된 뷰를 레퍼런스 뷰로 설정한 것으로 가정한다.
도 5는 테스트 단말기(200) 상에서 실행되고 있는 검증대상 애플리케이션의 일 표시예를 나타낸 것이다. 또한 도 6은 상기 도 5에서의 화면정보가 XML로 구성된 실시예를 나타낸 것으로서, 본 발명에 따른 애플리케이션 자동검증 장치(100)는 상기 XML 화면정보로부터 레퍼런스 뷰와 유사한 속성을 가지는 대상 뷰를 검색하게 된다. 예를 들어, 애플리케이션 자동검증 장치(100)는 레퍼런스 뷰가 가지는 속성인 “android.widget.LinearLayout”과 동일한 속성을 가지는 뷰 를 검증대상 애플리케이션의 화면정보 내에서 검색하여 추출해 낼 수 있으며, 이와 같은 속성을 가지는 뷰는 도 5에서 보는 것과 같이 다양하게 존재할 수 있다.
위와 같이 대상 뷰가 될 수 있는 후보군이 복수개 탐색된 경우, 애플리케이션 자동검증 장치(100)는 메모리부(130)에 저장된 규칙정보를 호출하여 하나의 대상 뷰를 선별해 내는데 이용한다. 예를 들어, 각 뷰의 노드 구성정보 및 텍스트 내용을 모두 비교하는 규칙2를 적용하는 경우, 상기 애플리케이션 자동검증 장치(100)는 복수개의 대상 뷰 후보군과 레퍼런스 뷰와의 노드 구성정보를 하나씩 비교하며, 나아가 해당 뷰의 텍스트 내용이 일치하는지 여부도 판단한다.
도 5 및 도 6을 참조할 때, 애플리케이션 자동검증 장치(100)는, 테스트 단말기(200) 상에서 실행 중인 애플리케이션 화면정보로부터 노드가 “resID=”ITEM_TV_TITLE”이면서 레퍼런스 뷰와 동일한 구조층(depth)에 존재하는 대상 뷰 후보군을 모두 검색하며, 나아가 해당 노드의 각 텍스트 정보가 “운명의 클랜배틀”인지 여부까지 판단하여 레퍼런스 뷰와 가장 유사하게 대응되는 하나의 대응 뷰를 선별하게 된다.
한편, 이렇게 선별된 대응 뷰에 대해서는 검증 시나리오 스크립트에 정의된 각종 테스트 항목 검사를 수행하게 되며, 테스트 항목 검사 결과 해당 테스트 단말기(200) 상에서 애플리케이션이 적절하게 실행되고 있는 것으로 판단되면 비로소 사용자에 검증 시나리오 상에 미리 설정된 이벤트가 실행된다.
이렇듯 본 발명에 의한 애플리케이션 자동검증 방법은 애플리케이션 화면을 구성하는 각 뷰의 구조를 파악하고, 대상 뷰를 각각 탐색해 내어 검증을 수행할 수 있으므로, 설사 시간의 변경에 따라 애플리케이션 컨텐츠의 구성 또는 뷰의 구성이 변경되더라도 검증 시나리오를 재작성 해야하는 등의 별도 조치 없이 애플리케이션 검증을 가능케 한다.
한편, 본 발명의 또 다른 실시예에 의하면, 애플리케이션 자동검증 장치(100)에 의해 실행될 때, (a) 애플리케이션 자동검증 장치(100)가 스크립트 파일을 포함하는 하나 이상의 검증관련데이터를 수신하는 단계, (b) 애플리케이션 자동검증 장치(100)가 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하는 단계, (c) 애플리케이션 자동검증 장치(100)가 상기 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 레퍼런스 뷰를 탐색하는 단계, (d) 애플리케이션 자동검증 장치(100)가 테스트 단말기(200) 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하는 단계, (e) 애플리케이션 자동검증 장치(100)가 상기 대상 뷰에 대해 하나 이상의 테스트 항목 검사를 수행하는 단계, 및 (f) (e) 단계 이후, 애플리케이션 자동검증 장치(100)가 상기 대상 뷰에 대해 기 설정된 이벤트를 실행시키는 단계를 포함하는 애플리케이션 자동검증 방법이 프로그램으로 기록되고 전자 장치에서 판독 가능한 기록 매체가 제공될 수 있다.
나아가 위와 같은 애플리케이션 자동검증 방법은 프로그램으로도 작성 가능하며, 프로그램을 구성하는 코드 및 코드 세그먼트들은 당해 분야의 통상의 지식을 가진 자에 의하여 용이하게 추론될 수 있다. 또한, 애플리케이션 자동검증 방법에 관한 프로그램은 전자장치가 읽을 수 있는 정보저장매체(Readable Media)에 저장될 수 있으며, 전자장치에 의하여 읽혀지고 실행될 수도 있을 것이다.
본 발명의 바람직한 실시예 및 응용예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예 및 응용예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 구별되어 이해되어서는 안 될 것이다.
본 발명은 애플리케이션을 포함한 소프트웨어 검증 분야에 적용될 수 있으며, 특히 복수개의 테스트 단말기 상에서 실행 중인 애플리케이션을 자동으로 검증할 수 있는 장치, 시스템 및 방법을 제공한다. 본 발명에 따르면 애플리케이션을 자동검증 함에 있어 시간 변화에 따라 애플리케이션 화면정보, 컨텐츠 순서 등에 변경이 생기더라도 타겟 뷰를 탐색하여 해당 뷰에 대한 검증을 행할 수 있는 바, 기 작성된 애플리케이션 검증용 시나리오 스크립트를 재구성하는 등의 비효율적인 측면을 배제시킬 수 있으며, 이에 비추어 볼 때 본 발명은 산업상 이용 가능성이 있는 유용한 발명이라 할 수 있다.
100: 애플리케이션 자동검증 장치
110: 자동검증 전처리부
120: 자동검증부
130: 메모리부
140: 제어부
200: 테스트 단말기

Claims (10)

  1. 스크립트 파일을 포함하는 검증관련데이터를 수신하고, 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하며 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 레퍼런스 뷰(view)를 탐색하는 자동검증 전처리부;
    테스트 단말기 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 자동검증 전처리부에서 탐색된 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰(view)를 탐색하고, 상기 대상 뷰에 대해 테스트 항목 검사를 수행한 이후 기 설정된 이벤트를 실행시키는 자동검증부;
    상기 검증관련데이터 또는 상기 자동검증 전처리부에서 파싱된 결과데이터를 저장하는 메모리부; 및
    상기 자동검증 전처리부, 자동검증부 및 메모리부를 제어하는 제어부;
    를 포함하는 애플리케이션 자동검증 장치.
  2. 제1항에 있어서,
    상기 자동검증 전처리부는 룰 파일을 더 포함하는 검증관련데이터를 수신하고, 상기 룰 파일을 파싱하여 하나 이상의 규칙정보를 추출하는 것을 특징으로 하며,
    상기 자동검증부는, 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 뷰가 복수개인 경우, 상기 메모리부에 저장된 규칙정보에 따라 하나의 뷰를 선별하여 대상 뷰로 정의하고, 상기 대상 뷰에 대해 테스트 항목 검사를 수행하는 것을 특징으로 하는 애플리케이션 자동검증 장치.
  3. 제2항에 있어서,
    상기 규칙정보는, 뷰의 노드 구성정보를 비교하여 일치성을 판단하기 위한 제1규칙, 뷰의 노드 구성정보 및 텍스트 내용을 비교하여 일치성을 판단하기 위한 제2규칙 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 애플리케이션 자동검증 장치.
  4. 제1항에 있어서,
    상기 화면정보는 XML로 구성되고,
    상기 자동검증 전처리부는 화면정보를 구성하는 각 뷰의 경로(path)를 검색함으로써 이벤트가 발생된 레퍼런스 뷰를 탐색하는 것을 특징으로 하는 애플리케이션 자동검증 장치.
  5. 제1항에 있어서,
    상기 테스트 항목 검사는 상기 대상 뷰의 출력화면이 상기 레퍼런스 뷰의 출력화면과 비교하여 설정값 이상의 일치성을 가지는지 여부, 상기 대상 뷰의 컨텐츠가 정상적으로 다운로드 되는지 여부 또는 상기 대상 뷰에 포함된 컨텐츠 목록이 정상적으로 로딩되는지 여부 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 애플리케이션 자동검증 장치.
  6. 검증하고자 하는 애플리케이션을 실행시키고, 상기 애플리케이션 실행에 따른 화면정보를 애플리케이션 자동검증 장치로 전송하는 하나 이상의 테스트 단말기;
    검증관련데이터를 수신하여 레퍼런스 뷰를 탐색하고, 상기 테스트 단말기 상에서 실행중인 애플리케이션의 화면정보로부터 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하여 검증하는 애플리케이션 자동검증 장치;
    를 포함하는 애플리케이션 자동검증 시스템.
  7. 제6항에 있어서,
    상기 애플리케이션 자동검증 장치는,
    상기 테스트 단말기 상에서 실행중인 애플리케이션의 화면정보 내에 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 뷰가 복수개 존재하는 경우, 룰 파일로부터 추출한 규칙에 따라 하나의 대상 뷰를 선별하여 검증하는 것을 특징으로 하는 애플리케이션 자동검증 시스템.
  8. 애플리케이션 자동검증 장치가 애플리케이션을 자동검증하는 방법에 있어서,
    (a) 애플리케이션 자동검증 장치가 스크립트 파일을 포함하는 검증관련데이터를 수신하는 단계;
    (b) 애플리케이션 자동검증 장치가 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하는 단계;
    (c) 애플리케이션 자동검증 장치가 상기 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 레퍼런스 뷰를 탐색하는 단계;
    (d) 애플리케이션 자동검증 장치가 테스트 단말기 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하는 단계;
    (e) 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 테스트 항목 검사를 수행하는 단계;
    (f) (e) 단계 이후, 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 기 설정된 이벤트를 실행시키는 단계;
    를 포함하는 애플리케이션 자동검증 방법.
  9. 제8항에 있어서,
    상기 (a) 단계에서 검증관련데이터는 룰 파일을 더 포함하고,
    상기 (b) 단계는 상기 룰 파일을 파싱하여 규칙정보를 추출하는 단계를 더 포함하며,
    상기 (d) 단계에서 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 뷰가 복수개 탐색된 경우, 상기 규칙정보에 따라 하나의 뷰를 선별하고 해당 뷰를 대상 뷰로 정의하는 것을 특징으로 하는 애플리케이션 자동검증 방법.
  10. 애플리케이션 자동검증 장치에 의해 실행될 때,
    (a) 애플리케이션 자동검증 장치가 스크립트 파일을 포함하는 검증관련데이터를 수신하는 단계;
    (b) 애플리케이션 자동검증 장치가 상기 스크립트 파일을 파싱하여 이벤트 객체로 변환하는 단계;
    (c) 애플리케이션 자동검증 장치가 상기 이벤트 객체 내 포함된 화면정보를 검색하여 이벤트가 발생된 레퍼런스 뷰를 탐색하는 단계;
    (d) 애플리케이션 자동검증 장치가 테스트 단말기 상에서 실행 중인 검증대상 애플리케이션의 화면정보를 검색하여 상기 레퍼런스 뷰와 하나 이상의 동일한 속성을 가지는 대상 뷰를 탐색하는 단계;
    (e) 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 테스트 항목 검사를 수행하는 단계; 및
    (f) (e) 단계 이후, 애플리케이션 자동검증 장치가 상기 대상 뷰에 대해 기 설정된 이벤트를 실행시키는 단계;
    를 포함하는 애플리케이션 자동검증 방법이 프로그램으로 기록되고 전자 장치에서 판독 가능한 기록 매체.
KR20130105291A 2013-09-03 2013-09-03 애플리케이션 자동검증 시스템 및 방법 KR20150027426A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20130105291A KR20150027426A (ko) 2013-09-03 2013-09-03 애플리케이션 자동검증 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130105291A KR20150027426A (ko) 2013-09-03 2013-09-03 애플리케이션 자동검증 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20150027426A true KR20150027426A (ko) 2015-03-12

Family

ID=53022762

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130105291A KR20150027426A (ko) 2013-09-03 2013-09-03 애플리케이션 자동검증 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR20150027426A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102289884B1 (ko) * 2020-02-12 2021-08-17 현대오토에버 주식회사 애플리케이션 테스트에서 객체를 추출하는 방법 및 시스템
KR20220067449A (ko) * 2020-11-17 2022-05-24 오토아이티(주) 보안성 및 신뢰성이 향상된 자동 실행 스크립트 파일의 생성 장치 및 방법과, 이의 실행 장치 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102289884B1 (ko) * 2020-02-12 2021-08-17 현대오토에버 주식회사 애플리케이션 테스트에서 객체를 추출하는 방법 및 시스템
KR20220067449A (ko) * 2020-11-17 2022-05-24 오토아이티(주) 보안성 및 신뢰성이 향상된 자동 실행 스크립트 파일의 생성 장치 및 방법과, 이의 실행 장치 및 방법

Similar Documents

Publication Publication Date Title
US9465593B2 (en) Method and apparatus for testing browser compatibility
US10146753B2 (en) Visual regression testing tool
US20190114157A1 (en) Blackbox Matching Engine
US8104020B2 (en) Method and system to automate software testing using sniffer side and browser side recording and a toolbar interface
US10176079B2 (en) Identification of elements of currently-executing component script
US20130239098A1 (en) Source code conversion method and source code conversion program
US20030028856A1 (en) Method and apparatus for testing a software component using an abstraction matrix
CN110013672B (zh) 用于机器运行的游戏的自动化测试的方法、设备、装置以及计算机可读存储介质
CN108459954B (zh) 应用程序漏洞检测方法和装置
US20240078168A1 (en) Test Case Generation Method and Apparatus and Device
CN110287098A (zh) 自动创建测试脚本方法、服务器及计算机可读存储介质
CN107015841B (zh) 一种程序编译的预处理方法及程序编译设备
KR20210106372A (ko) 새로운 카테고리 라벨의 마이닝 방법 및 장치, 전자 기기 및 컴퓨터 판독 가능 매체 및 컴퓨터 프로그램 제품
US9507693B2 (en) Method, device and computer-readable storage medium for closure testing
CN111159016A (zh) 一种规范检测方法及装置
CN111124870A (zh) 一种接口测试方法及装置
WO2021104387A1 (zh) 一种自动识别有效数据采集模块的方法和系统
CN107015903B (zh) 一种界面测试程序的生成方法、装置及电子设备
CN106959919B (zh) 基于测试路径图的软件测试方法及装置
US6853963B1 (en) Analyzing an extended finite state machine system model
CN112905451B (zh) 应用程序的自动化测试方法及装置
US10719482B2 (en) Data comparison
KR20150027426A (ko) 애플리케이션 자동검증 시스템 및 방법
CN112860587A (zh) Ui自动测试方法和装置
CN115830419A (zh) 一种数据驱动式人工智能技术评测系统及方法

Legal Events

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