KR20150035151A - 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체 - Google Patents

애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR20150035151A
KR20150035151A KR20130115384A KR20130115384A KR20150035151A KR 20150035151 A KR20150035151 A KR 20150035151A KR 20130115384 A KR20130115384 A KR 20130115384A KR 20130115384 A KR20130115384 A KR 20130115384A KR 20150035151 A KR20150035151 A KR 20150035151A
Authority
KR
South Korea
Prior art keywords
screen
application
user input
terminal device
screen information
Prior art date
Application number
KR20130115384A
Other languages
English (en)
Other versions
KR102106618B1 (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 KR1020130115384A priority Critical patent/KR102106618B1/ko
Publication of KR20150035151A publication Critical patent/KR20150035151A/ko
Application granted granted Critical
Publication of KR102106618B1 publication Critical patent/KR102106618B1/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
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Landscapes

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

Abstract

본 발명은 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체에 관한 것으로, 보다 상세하게는 애플리케이션의 실행 화면이 표시되는 출력부, 스크립트 파일을 실행코드로 변환하고, 상기 변환된 실행코드를 실행하면서 상기 실행코드에 포함된 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하며, 기 설정된 일정 시간 간격으로 상기 출력부에 표시되는 실행화면을 캡쳐하는 테스트 툴 동작부, 상기 출력부 및 테스트 툴 동작부의 동작을 제어하는 제어부를 포함하되, 상기 테스트 툴 동작부는 사용자 입력 이벤트의 적용 시간과 실행화면의 캡쳐 시간이 동기화되도록 제어할 수 있다.

Description

애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체{System, terminal device, verification apparatus, method and computer-readable medium for testing application performance}
본 발명은 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체에 관한 것으로, 보다 상세하게는 단말장치로부터 전송된 화면정보에 포함된 캡쳐 화면 수를 기 설정된 기준 화면 수와 비교하고, 그 비교결과 화면 수가 동일한 경우, 해당 화면정보를 기 설정된 기준 화면정보와 비교하여 일치율을 구하며, 구해진 일치율 또는 화면 수 비교결과를 근거로 테스트 단말장치의 성능 차이를 측정하는 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체에 관한 것이다.
웹 기반으로 개발된 웹 애플리케이션은 웹 브라우저가 탑재된 다양한 환경에서 구동이 가능하다. 그래서 최근에는 게임도 웹 애플리케이션으로 개발하려는 시도가 많이 있다. 하지만, 일반 웹 애플리케이션과 다르게 게임용 웹 애플리케이션은 다양한 인터렉션으로 인한 이벤트 처리 및 스크립트 언어를 해석하는 구조적인 한계로 인해 PC가 아닌 모바일 디바이스에서 성능을 보장하기가 어렵다.
그래서 모바일용 웹 애플리케이션을 개발할 때는 고사양의 최신 단말을 위주로 개발하고, 저사양의 단말로 점차 테스트 단말의 범위를 넓혀 성능 테스트를 한다. 웹 애플리케이션의 장점이 다양한 환경에서 구동가능하다는 점이라면 이를 위해서 테스트 범위도 넓어진다는 단점이 생기는 것이다. 이를 해결하기 위해 테스트를 자동화한다면 테스트 비용을 줄일 수 있을 것이다.
웹 애플리케이션 개발 시 테스트를 자동화하는 툴이 있기는 하지만, 입력 부분에 값을 입력하거나 특정 버튼을 누르는 등의 명확한 인터렉션 위주의 테스트만 가능한 한계가 있다. 또한, 게임용 웹 애플리케이션에서는 적절한 시점에 화면을 터치하는 등 인터렉션이 상당히 복잡하고 체감적으로 느껴지는 반응 속도를 측정해야 하기 때문에 사람이 직접 반응하지 않고 성능을 측정하기에는 한계가 있다.
선행기술 1 : 한국등록특허 제1,199,485호(2010.06.10 공개)
본 발명은 상기한 문제점을 해결하기 위하여 안출된 것으로, 웹 애플리케이션의 테스트를 자동화하는 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체를 제공하는데 그 목적이 있다.
본 발명의 다른 목적은 단말장치에서 캡쳐된 화면의 캡쳐 화면 수와 화면정보를 기 설정된 기준정보와 비교하고, 그 비교결과를 근거로 테스트 단말장치의 성능 차이를 측정하는 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체를 제공하는데 있다.
본 발명의 또 다른 목적은 게임용 웹 애플리케이션을 위해 복잡한 인터렉션이 가능하도록 하고, 체감적으로 느껴지는 반응 속도를 정량화하여 다양한 환경에서 테스트하는 비용을 절감할 수 있는 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체를 제공하는데 있다.
상술한 과제를 해결하기 위한 본 발명의 일 측면에 따르면, 애플리케이션의 실행 화면이 표시되는 출력부, 스크립트 파일을 실행코드로 변환하고, 상기 변환된 실행코드를 실행하면서 상기 실행코드에 포함된 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하며, 기 설정된 일정 시간 간격으로 상기 출력부에 표시되는 실행화면을 캡쳐하는 테스트 툴 동작부, 상기 출력부 및 테스트 툴 동작부의 동작을 제어하는 제어부를 포함하되, 상기 테스트 툴 동작부는 사용자 입력 이벤트의 적용 시간과 실행화면의 캡쳐 시간이 동기화되도록 제어하는 것을 특징으로 하는 단말장치가 제공된다.
상기 단말장치는 사용자 입력 이벤트를 현재 실행중인 애플리케이션으로 전달하는 입력부를 더 포함하고, 상기 테스트 툴 동작부는 현재 실행중인 애플리케이션에 상기 입력부로부터 전달된 사용자 입력 이벤트를 적용하고, 기 설정된 일정 시간 간격으로 상기 출력부에 표시되는 실행 화면을 캡쳐하며, 상기 사용자 입력 이벤트 및 상기 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성할 수 있다.
상기 테스트 툴 동작부는 현재 실행중인 애플리케이션에 상기 입력부로부터 전달된 사용자 입력 이벤트를 적용하는 적용모듈, 기 설정된 일정 시간 간격으로 상기 출력부에 표시되는 실행 화면을 캡쳐하는 화면 캡쳐 모듈, 상기 사용자 입력 이벤트 및 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하고, 상기 생성된 스크립트 파일을 검증장치로 전송하는 스크립트 파일 처리모듈을 포함할 수 있다.
본 발명의 다른 측면에 따르면, 기준 화면정보, 기준 화면 수, 기준 일치율 중 적어도 하나를 포함하는 기준 정보가 저장된 저장부, 각 단말장치의 화면 정보를 수신하기 위한 통신부, 각 단말장치의 화면정보에 포함된 캡쳐 화면 수를 상기 기준 화면 수와 비교하고, 그 비교결과 화면 수가 동일한 경우, 해당 화면정보를 상기 기준 화면정보와 비교하여 일치율을 구하는 비교부를 포함하는 검증장치가 제공된다.
상기 비교부는 단말장치의 캡쳐 화면 수가 상기 기준 화면 수보다 많은 경우, 성능이 느리다고 판단할 수 있다.
또한, 상기 비교부는 상기 구해진 일치율이 상기 기준 일치율 이상인 경우 성능 우수, 이상이 아닌 경우 성능 저하라도 판단할 수 있다.
본 발명의 또 다른 측면에 따르면, 현재 실행중인 애플리케이션에 사용자로부터 입력된 사용자 입력 이벤트를 적용하고, 기 설정된 일정 시간 간격으로 화면상에 표시되는 실행 화면을 캡쳐하며, 상기 사용자 입력 이벤트 및 상기 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하여 검증 장치로 전송하는 기준 단말장치, 상기 기준 단말장치에서 생성된 스크립트 파일을 실행코드로 변환하고, 상기 변환된 실행코드를 실행하면서 상기 실행코드에 포함된 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하고, 기 설정된 일정 시간 간격으로 화면상에 표시되는 실행화면을 캡쳐하여 상기 검증장치로 전송하는 테스트 단말장치, 상기 기준 단말장치 및 테스트 단말장치로부터 각각 수신된 화면정보의 캡쳐 화면 수를 비교하고, 그 비교결과 화면 수가 동일한 경우, 화면정보를 비교하여 화면의 일치율을 구하는 검증장치를 포함하는 애플리케이션 성능 테스트를 위한 시스템이 제공된다.
상기 검증장치는 상기 화면수 비교 결과 또는 상기 구해진 일치율을 근거로 테스트 단말장치의 성능 차이를 측정할 수 있다.
본 발명의 또 다른 측면에 따르면, 검증 장치가 애플리케이션 성능 테스트를 위한 방법에 있어서, 단말장치로부터 화면 정보를 수신하는 단계, 상기 수신된 화면정보에 포함된 캡쳐 화면 수를 기 설정된 기준 화면 수와 비교하는 단계, 상기 비교결과 화면 수가 동일한 경우, 해당 화면정보를 기 설정된 기준 화면정보와 비교하여 일치율을 구하는 단계, 상기 구해진 일치율을 근거로 성능 차이를 측정하는 단계를 포함하는 애플리케이션 성능 테스트를 위한 방법이 제공된다.
상기 구해진 일치율을 근거로 성능 차이를 측정하는 단계는, 상기 구해진 일치율이 상기 기준 일치율 이상인 경우 성능 우수, 이상이 아닌 경우 성능 저하라도 판단할 수 있다.
본 발명의 또 다른 측면에 따르면, 검증 장치에 의해 실행될 때, 단말장치로부터 화면 정보를 수신하는 단계, 상기 수신된 화면정보에 포함된 캡쳐 화면 수를 기 설정된 기준 화면 수와 비교하는 단계, 상기 비교결과 화면 수가 동일한 경우, 해당 화면정보를 기 설정된 기준 화면정보와 비교하여 일치율을 구하는 단계, 상기 구해진 일치율을 근거로 성능 차이를 측정하는 단계를 포함하는 애플리케이션 성능 테스트를 위한 방법을 실행하기 위한 프로그램이 수록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.
본 발명의 또 다른 측면에 따르면, 단말장치가 애플리케이션 성능 테스트를 위한 방법에 있어서, 애플리케이션을 실행하는 단계, 상기 애플리케이션에 사용자 입력 이벤트를 적용하면서 기 설정된 일정 시간 간격으로 화면을 캡쳐하는 단계, 상기 캡쳐된 화면정보를 검증 장치로 전송하는 단계를 포함하되, 상기 사용자 입력 이벤트의 적용 시간과 화면의 캡쳐 시간이 동기화되도록 제어하면서 화면을 캡쳐하는 것을 특징으로 하는 애플리케이션 성능 테스트를 위한 방법이 제공된다.
본 발명의 또 다른 측면에 따르면, 단말장치에 의해 실행될 때, 애플리케이션을 실행하는 단계, 상기 애플리케이션에 사용자 입력 이벤트를 적용하면서 기 설정된 일정 시간 간격으로 화면을 캡쳐하는 단계, 상기 캡쳐된 화면정보를 검증 장치로 전송하는 단계를 포함하되, 상기 사용자 입력 이벤트의 적용 시간과 화면의 캡쳐 시간이 동기화되도록 제어하면서 화면을 캡쳐하는 것을 특징으로 하는 애플리케이션 성능 테스트를 위한 방법을 실행하기 위한 프로그램이 수록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.
본 발명에 따르면, 단말장치에서 캡쳐된 화면의 캡쳐 화면 수와 화면정보를 기 설정된 기준정보와 비교하고, 그 비교결과를 근거로 단말장치들의 성능 차이를 측정할 수 있다.
또한, 게임용 웹 애플리케이션을 위해 복잡한 인터렉션이 가능하도록 하고, 체감적으로 느껴지는 반응 속도를 정량화하여 다양한 환경에서 테스트하는 비용을 절감할 수 있다.
또한, 애플리케이션의 테스트를 자동화함으로써 테스트 비용을 줄이고, 사람이 개입하는 시간을 줄임으로써 애플리케이션의 배포도 훨씬 빨라질 수 있다.
도 1은 본 발명의 실시예에 따른 애플리케이션 성능 테스트를 위한 시스템을 나타낸 도면.
도 2는 본 발명의 실시예에 따른 단말장치의 구성을 개략적으로 나타낸 블럭도.
도 3은 도 2에 도시된 테스트 툴 동작부의 구성을 상세히 나타낸 블럭도.
도 34는 본 발명의 실시예에 따른 검증장치의 구성을 개략적으로 나타낸 블럭도.
도 5는 본 발명의 실시예에 따른 애플리케이션 성능 테스트를 위한 방법을 나타낸 도면.
도 6은 본 발명의 실시예에 따른 사용자 입력 편집 기능을 설명하기 위한 화면 예시도.
도 7은 본 발명의 실시예에 따른 단말장치들의 성능 테스트 결과 화면을 나타낸 예시도.
본 발명의 전술한 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.
도 1은 본 발명의 실시예에 따른 애플리케이션 성능 테스트를 위한 시스템을 나타낸 도면이다.
도 1을 참조하면, 애플리케이션 성능 테스트를 위한 시스템은 애플리케이션을 테스트하기 위한 스크립트 파일을 생성하는 기준 단말장치(100A), 기준 단말장치(100A)에서 생성된 스크립트 파일을 재생하는 테스트 단말장치(100B), 기준 단말장치(100A) 및 테스트 단말장치(100B)로부터 수신된 화면정보의 비교를 통해 성능 차이를 측정하는 검증장치(200)를 포함한다.
기준 단말장치(100A)는 현재 실행중인 애플리케이션에 사용자 입력 이벤트를 적용하고, 기 설정된 일정 시간 간격으로 화면상에 표시되는 실행 화면을 캡쳐(capture)하며, 사용자 입력 이벤트 및 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하여 검증 장치(200)로 전송한다. 여기서, 사용자 입력 이벤트는 애플리케이션이 외부 사용자로부터 명령을 입력받아 컨텐츠 상의 변화가 생긴 모든 경우를 일컫는 용어로서, 특히 사용자가 애플리케이션이 실행되고 있는 단말장치 상에 의도하고자 하는 동작을 수행하기 위해 애플리케이션을 조작하는 모든 행위를 단말 장치가 입력으로서 인지하여 일련의 명령으로 인식한 것을 일컫는다. 대표적인 예로서, 사용자가 단말장치의 스크린을 터치하여 애플리케이션의 특정 컨텐츠를 선택하는 경우, 단말 장치가 스크린 터치 행위를 소프트웨어 명령으로 인식한 것을 하나의 이벤트로 정의할 수 있다. 스크립트란 애플리케이션을 테스트하기 위한 일련의 테스트 시나리오를 작성한 것으로서, 스크립트는 사용자가 임의로 작성하여 생성하거나 기존에 생성되어 있던 스크립트를 타 서버로부터 다운로드(수신)하여 이용할 수 있다. 스크립트는 테스트용 명령어들의 집합으로 이루어지며, 본 발명에 따른 애플리케이션 테스트는 스크립트에 포함된 검증 시나리오에 따라 이루어진다.
테스트 단말장치(100B)는 기준 단말장치(100A)에서 생성된 스크립트 파일을 실행코드로 변환하고, 변환된 실행코드를 실행하면서 실행코드에 포함된 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하고, 기 설정된 일정 시간 간격으로 화면상에 표시되는 실행화면을 캡쳐하여 검증장치(200)로 전송한다. 여기에서는 테스트 단말장치(100B)를 하나만 도시하였으나, 복수 개의 테스트 단말(100B)에 적용될 수 있다.
한편, 복수 개의 단말장치(100)들은 각각 상이한 하드웨어 또는 소프트웨어를 구비한 것으로서, 동일한 애플리케이션을 실행시켰을 시 각각의 단말장치에서 올바르게 동작하는지를 비교할 수 있도록 함이 바람직하다.
또한, 단말장치(100)에서 검증 장치(200)로 전송되는 화면정보는 바람직하게는 스크립트로 작성된 것으로서, 해당 애플리케이션의 컨텐츠를 구성하는 구성요소들을 개별적으로 파싱하여 구분할 수 있는 언어로 작성될 수 있다.
이하에서는 기준 단말장치(100A)와 테스트 단말장치(100B)를 단말장치(100)로 칭하여 설명하기로 한다.
검증 장치(200)는 기준 단말장치(100A) 및 테스트 단말장치(100B)로부터 수신된 화면정보에 포함된 캡쳐 화면 수를 비교하고, 그 비교결과 화면 수가 동일한 경우, 화면정보를 비교하여 화면의 일치율을 구하며, 화면 수 비교 결과 또는 상기 구해진 일치율을 근거로 테스트 단말장치(100B)의 성능을 측정할 수 있다. 여기서, 화면정보는 캡쳐된 화면(또는 이미지), 캡쳐 화면 수 등을 포함하고, 검증장치(200)는 캡쳐된 화면의 RGB 색상 평균, 최대값, 최소값 등을 비교하여 일치율을 구할 수 있다.
이러한 검증 장치(200)에 대한 상세한 설명은 도 4를 참조하기로 한다.
도 2는 본 발명의 실시예에 따른 단말장치의 구성을 개략적으로 나타낸 블럭도, 도 3은 도 2에 도시된 테스트 툴 동작부의 구성을 상세히 나타낸 블럭도이다.
도 2를 참조하면, 단말장치(100)는 통신부(110), 입력부(120), 출력부(130), 저장부(140), 테스트 툴 동작부(150), 제어부(160)를 포함한다.
통신부(110)는 단말장치(100)와 검증 장치를 통신망을 통해 상호 연결시키는 통신 수단으로서, 예를 들어 이동통신, 위성통신 등의 무선 통신모듈, 인터넷 등의 유선 통신모듈, 와이파이 등의 근거리 무선 통신모듈 등을 포함할 수 있다.
입력부(120)는 단말 장치(100)의 동작 제어를 위한 사용자 요청을 입력받기 위한 수단으로서, 사용자의 조작에 따라서 사용자의 요청을 전기 신호로 변환한다. 입력부(120)는 사용자로부터 문자, 숫자, 텍스트, 음성, 움직임, 촉각, 시각 등을 입력받는 입력 수단으로 예컨대, 입력 수단은 키보드, 키패드, 터치 스크린, 시각 감지 수단, 촉각 감지 수단, 움직임 감지 수단, 음성 입력 수단 등 다양한 형태로 구현될 수 있다.
사용자는 입력부(120)를 통해 사용자 입력 이벤트를 입력하고, 입력부(120)는 사용자 입력 이벤트를 현재 실행중인 애플리케이션으로 전달한다.
일반적으로 웹 애플리케이션은 다양한 환경에서 실행되기 때문에, 사용자 입력을 편집할 수 있는 기능을 제공해야 한다. 입력부(120)의 사용자 입력 편집 기능이 필요한 경우에 대해 도 6을 참조하여 설명하기로 한다. 도 6을 참조하면, (a)와 같은 화면 사이즈의 기준 단말장치에서 화면을 클릭하였던 입력 데이터는 (b)와 같은 화면 사이즈의 테스트 단말장치가 되면서 같은 비율을 적용해 화면이 클릭되도록 가상 입력을 할 수도 있지만, (c)와 같이 화면 자체가 더 확장될 수도 있기 때문에 이를 조정하는 기능이 필요하다.
출력부(130)는 애플리케이션의 실행 화면을 표시한다. 출력부(130)는 시각적으로 확인 가능한 디스플레이의 형태가 될 수도 있고, 스피커 등 청각적으로 확인 가능한 형태일 수도 있으며, 그 밖에 스크립트 실행 결과를 확인할 수 있는 모든 형태를 포함한다.
저장부(140)는 단말장치(100)의 동작 제어 시 필요한 프로그램과, 그 프로그램 수행 중에 발생되는 데이터를 저장한다.
제어부(160)는 통신부(110), 출력부(130), 입력부(120) 및 테스트 툴 동작부(150)의 동작을 제어한다.
테스트 툴 동작부(150)는 현재 실행중인 애플리케이션에 사용자 입력 이벤트를 적용하고, 기 설정된 일정 시간 간격으로 출력부(130)에 표시되는 실행화면을 캡쳐하며, 캡쳐된 화면정보를 통신부(110)를 통해 검증장치로 전송한다.
이러한 테스트 툴 동작부(150)는 단말장치(100)가 기준 단말장치와 테스트 단말장치로 동작하는 경우에 따라 다르게 동작할 수 있다.
먼저, 단말장치(100)가 기준 단말장치로 동작하는 경우, 테스트 툴 동작부(150)는 현재 실행중인 애플리케이션에 입력부(120)로부터 전달된 사용자 입력 이벤트를 적용하고, 기 설정된 일정 시간 간격으로 출력부(130)에 표시되는 실행 화면을 캡쳐하며, 사용자 입력 이벤트 및 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하고, 생성된 스크립트 파일을 검증 장치로 전송한다.
이러한 테스트 툴 동작부(150)에 대해 도 3을 참조하면, 테스트 툴 동작부(150)는 적용모듈(152), 화면 캡쳐 모듈(154), 스크립트 파일 처리 모듈(156)을 포함한다.
적용모듈(152)은 현재 실행중인 애플리케이션에 입력부(120)로부터 전달된 사용자 입력 이벤트를 적용한다. 게임용 웹 애플리케이션에서는 적절한 시점에 화면을 터치하는 등의 사용자 입력 이벤트가 발생하므로, 적용모듈(152)은 사용자 입력 이벤트를 현재 실행중인 게임용 웹 애플리케이션에 반영한다.
화면 캡쳐 모듈(154)은 기 설정된 일정 시간 간격으로 출력부(130)에 표시되는 실행 화면을 캡쳐한다.
스크립트 파일 처리 모듈(156)은 사용자 입력 이벤트 및 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하고, 생성된 스크립트 파일을 검증장치로 전송한다.
다음으로, 단말장치(100)가 테스트 단말장치로 동작하는 경우, 테스트 툴 동작부(150)는 기준 단말장치에서 생성된 스크립트 파일을 실행코드로 변환하고, 변환된 실행코드를 실행하면서 실행코드에 포함된 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하며, 기 설정된 일정 시간 간격으로 출력부(130)에 표시되는 실행화면을 캡쳐하여 검증장치로 전송한다. 이때, 테스트 툴 동작부(150)는 사용자 입력 이벤트의 적용 시간과 실행화면의 캡쳐 시간이 동기화되도록 제어한다. 즉, 기준 단말장치와 테스트 단말장치의 성능 차에 의해서 화면이 느려지는 경우, 사용자 입력 이벤트 적용 시간과 화면 캡쳐 시간을 자동으로 지연(delay)시킨다. 성능이 떨어지는 테스트 단말장치에서는 사용자 입력 이벤트 적용 이후 웹 게임 로직이 동작하기 전에 다음 사용자 입력 이벤트가 빨리 전달되므로, 해당 사용자 입력 이벤트가 유효하지 않게 되고, 결과적으로 테스트 시나리오 자체가 오류로 되어(예컨대, 게임 종료), 그 시점 이후부터는 캡쳐 화면을 비교하는 것 자체가 의미가 없어진다. 그러므로, 테스트 툴 동작부(150)는 스크립트 파일에 설정된 사용자 입력 이벤트의 적용 시간과 실행화면의 캡쳐 시간이 테스트 단말장치에서도 동일하게 적용될 수 있도록, 애플리케이션 실행에 따른 화면이 느려지는 경우, 사용자 입력 이벤트 및 화면 캡쳐를 해당 시간만큼 지연시켜 적용한다.
도 4는 본 발명의 실시예에 따른 검증장치의 구성을 개략적으로 나타낸 블럭도이다.
도 4를 참조하면, 검증장치(200)는 통신부(210), 저장부(220), 비교부(230)를 포함한다.
통신부(210)는 각 단말장치의 화면 정보를 수신한다.
저장부(220)에는 기준 화면정보, 기준 화면 수, 기준 일치율 등을 포함하는 기준 정보가 저장되어 있다.
비교부(230)는 각 단말장치의 화면정보에 포함된 캡쳐 화면 수를 저장부(220)에 저장된 기준 화면 수와 비교하고, 그 비교결과 화면 수가 동일한 경우, 해당 화면정보를 저장부(220)에 저장된 기준 화면정보와 비교하여 일치율을 구한다. 이때, 비교부(230)는 화면을 격자로 나누고 각각의 격자 안에서는 RGB(Red Green Blue) 색상 평균, 최대값, 최소값 등을 비교하여 일치율을 구할 수 있다. 여기서, 격자의 크기, RGB 색상 평균, 최대값, 최소값 등은 사용자가 변경할 수 있다.
비교부(230)는 단말장치의 캡쳐 화면 수가 기준 화면 수보다 많은 경우, 성능이 느리다고 판단할 수 있다. 또한, 비교부(230)는 상기 구해진 일치율이 기준 일치율 이상인 경우 성능 우수, 이상이 아닌 경우 성능 저하라도 판단할 수 있다.
이처럼 단말장치의 성능을 정량화하는 수치는 전체 캡쳐 화면 수와 화면 비교 정보일 수 있고, 비교부(230)는 캡쳐 화면 수와 화면 비교 정보를 근거로 단말장치의 성능을 테스트할 수 있다. 애플리케이션 실행에 따라 표시되는 화면은 일정 시간 간격으로 캡쳐되고, 성능이 느려질 경우 자동으로 입력되는 시간을 지연(delay)시킨다. 따라서 성능이 느린 경우는 화면 캡쳐 수가 증가하게 되고, 화면 캡쳐 수가 많아진다는 것은 성능이 느려진다는 결정적인 지표가 된다.
도 5는 본 발명의 실시예에 따른 애플리케이션 성능 테스트를 위한 방법을 나타낸 도면이다.
도 5를 참조하면, 단말장치는 애플리케이션을 실행하고(S502), 애플리케이션에 사용자 입력 이벤트를 적용하면서 화면을 캡쳐한다(S504). 이때, 단말장치가 기준 단말장치인 경우, 사용자는 사용자 입력 이벤트를 입력하고, 기준 단말장치는 사용자 입력 이벤트를 애플리케이션에 적용하면서 기 설정된 일정 시간간격으로 화면을 캡쳐한다. 또한, 단말장치가 테스트 단말장치인 경우, 테스트 단말장치는 스크립트 파일에서 사용자 입력 이벤트를 읽고, 그 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하면서 기 설정된 일정 시간 간격으로 화면을 캡쳐한다.
단말장치는 캡쳐된 화면 정보를 검증 장치로 전송한다(S506).
검증 장치는 수신된 화면정보에 포함된 캡쳐 화면 수를 기 설정된 기준 화면수와 비교하여(S508), 캡쳐 화면 수와 기준 화면 수가 동일한지의 여부를 판단한다(S510).
S510의 판단결과 두 화면 수가 동일한 경우, 검증장치는 기준 화면정보와 캡쳐 화면정보를 비교하고(S512), 그 비교 결과를 근거로 단말장치의 성능을 판정한다(S514). 즉, 검증장치는 기준 화면정보와 캡쳐 화면정보를 비교하여 일치율을 구하고, 상기 구해진 일치율이 기준 일치율 이상인 경우 성능 우수, 이상이 아닌 경우 성능 저하라도 판단할 수 있다.
만약, S510의 판단결과 두 화면 수가 동일하지 않으면, 검증장치는 캡쳐 화면 수 비교 결과를 근거로 단말장치의 성능을 판정한다(S516). 즉, 검증장치는 캡쳐 화면 수가 기준 화면 수보다 많은 경우, 성능이 느리다고 판단할 수 있다.
상기와 같은 과정을 자동으로 거치고 나면 다양한 환경에서 테스트한 정보가 정량화되어 자동화로 판단하기 애매한 환경만 사람이 확인하면 된다. 예를 들면 도 7과 같이 정량화된 결과를 볼 때 기준 지점에 있는 단말들(예컨대, A 단말장치와 B단말장치)을 대상으로 사람이 직접 확인하면 된다.
한편, 본 발명의 다른 측면에 따르면, 검증 장치에 의해 실행될 때, 단말장치로부터 화면 정보를 수신하는 단계, 상기 수신된 화면정보에 포함된 캡쳐 화면 수를 기 설정된 기준 화면 수와 비교하는 단계, 상기 비교결과 화면 수가 동일한 경우, 해당 화면정보를 기 설정된 기준 화면정보와 비교하여 일치율을 구하는 단계, 상기 구해진 일치율을 근거로 성능 차이를 측정하는 단계를 포함하는 애플리케이션 성능 테스트를 위한 방법을 실행하기 위한 프로그램이 수록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.
또한, 본 발명의 다른 측면에 따르면, 단말장치에 의해 실행될 때, 애플리케이션을 실행하는 단계, 상기 애플리케이션에 사용자 입력 이벤트를 적용하면서 기 설정된 일정 시간 간격으로 화면을 캡쳐하는 단계, 상기 캡쳐된 화면정보를 검증 장치로 전송하는 단계를 포함하되, 상기 사용자 입력 이벤트의 적용 시간과 화면의 캡쳐 시간이 동기화되도록 제어하면서 화면을 캡쳐하는 것을 특징으로 하는 애플리케이션 성능 테스트를 위한 방법을 실행하기 위한 프로그램이 수록된 컴퓨터로 판독 가능한 기록 매체가 제공된다.
이러한 애플리케이션 성능 테스트를 위한 방법은 프로그램으로 작성 가능하며, 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 애플리케이션 성능 테스트를 위한 방법에 관한 프로그램은 전자장치가 읽을 수 있는 정보저장매체(Readable Media)에 저장되고, 전자장치에 의하여 읽혀지고 실행될 수 있다.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
본 발명은 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체를 제공함으로써, 웹 애플리케이션을 위해 복잡한 인터렉션이 가능하도록 하고, 체감적으로 느껴지는 반응 속도를 정량화하여 다양한 환경에서 테스트하는 비용을 절감할 수 있다.
100 단말장치 110, 210 통신부
120 입력부 130 출력부
140, 220 저장부 150 테스트 툴 동작부
152 적용 모듈 154 화면캡쳐 모듈
156 스크립트 파일 처리모듈 160 제어부
200 검증장치 230 비교부

Claims (13)

  1. 애플리케이션의 실행 화면이 표시되는 출력부;
    스크립트 파일을 실행코드로 변환하고, 상기 변환된 실행코드를 실행하면서 상기 실행코드에 포함된 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하며, 기 설정된 일정 시간 간격으로 상기 출력부에 표시되는 실행화면을 캡쳐하는 테스트 툴 동작부; 및
    상기 출력부 및 테스트 툴 동작부의 동작을 제어하는 제어부;를 포함하되,
    상기 테스트 툴 동작부는 사용자 입력 이벤트의 적용 시간과 실행화면의 캡쳐 시간이 동기화되도록 제어하는 것을 특징으로 하는 단말장치.
  2. 제1항에 있어서,
    사용자 입력 이벤트를 현재 실행중인 애플리케이션으로 전달하는 입력부를 더 포함하고,
    상기 테스트 툴 동작부는 현재 실행중인 애플리케이션에 상기 입력부로부터 전달된 사용자 입력 이벤트를 적용하고, 기 설정된 일정 시간 간격으로 상기 출력부에 표시되는 실행 화면을 캡쳐하며, 상기 사용자 입력 이벤트 및 상기 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하는 것을 특징으로 하는 단말장치.
  3. 제2항에 있어서,
    상기 테스트 툴 동작부는 현재 실행중인 애플리케이션에 상기 입력부로부터 전달된 사용자 입력 이벤트를 적용하는 적용모듈;
    기 설정된 일정 시간 간격으로 상기 출력부에 표시되는 실행 화면을 캡쳐하는 화면 캡쳐 모듈; 및
    상기 사용자 입력 이벤트 및 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하고, 상기 생성된 스크립트 파일을 검증장치로 전송하는 스크립트 파일 처리모듈을 포함하는 것을 특징으로 하는 단말장치.
  4. 기준 화면정보, 기준 화면 수, 기준 일치율 중 적어도 하나를 포함하는 기준 정보가 저장된 저장부;
    각 단말장치의 화면 정보를 수신하기 위한 통신부; 및
    각 단말장치의 화면정보에 포함된 캡쳐 화면 수를 상기 기준 화면 수와 비교하고, 그 비교결과 화면 수가 동일한 경우, 해당 화면정보를 상기 기준 화면정보와 비교하여 일치율을 구하는 비교부;
    를 포함하는 검증장치.
  5. 제4항에 있어서,
    상기 비교부는 단말장치의 캡쳐 화면 수가 상기 기준 화면 수보다 많은 경우, 성능이 느리다고 판단하는 것을 특징으로 하는 검증장치.
  6. 제4항에 있어서,
    상기 비교부는 상기 구해진 일치율이 상기 기준 일치율 이상인 경우 성능 우수, 이상이 아닌 경우 성능 저하라도 판단하는 것을 특징으로 하는 검증장치.
  7. 현재 실행중인 애플리케이션에 사용자로부터 입력된 사용자 입력 이벤트를 적용하고, 기 설정된 일정 시간 간격으로 화면상에 표시되는 실행 화면을 캡쳐하며, 상기 사용자 입력 이벤트 및 상기 캡쳐된 화면 정보를 포함하는 스크립트 파일을 생성하여 검증 장치로 전송하는 기준 단말장치;
    상기 기준 단말장치에서 생성된 스크립트 파일을 실행코드로 변환하고, 상기 변환된 실행코드를 실행하면서 상기 실행코드에 포함된 사용자 입력 이벤트를 현재 실행중인 애플리케이션에 적용하고, 기 설정된 일정 시간 간격으로 화면상에 표시되는 실행화면을 캡쳐하여 상기 검증장치로 전송하는 테스트 단말장치; 및
    상기 기준 단말장치 및 테스트 단말장치로부터 수신된 화면정보의 캡쳐 화면 수를 비교하고, 그 비교결과 화면 수가 동일한 경우, 화면정보를 비교하여 화면의 일치율을 구하는 검증장치;
    를 포함하는 애플리케이션 성능 테스트를 위한 시스템.
  8. 제7항에 있어서,
    상기 검증장치는 상기 화면수 비교 결과 또는 상기 구해진 일치율을 근거로 테스트 단말장치의 성능 차이를 측정하는 것을 특징으로 하는 애플리케이션 성능 테스트를 위한 시스템.
  9. 검증 장치가 애플리케이션 성능 테스트를 위한 방법에 있어서,
    단말장치로부터 화면 정보를 수신하는 단계;
    상기 수신된 화면정보에 포함된 캡쳐 화면 수를 기 설정된 기준 화면 수와 비교하는 단계;
    상기 비교결과 화면 수가 동일한 경우, 해당 화면정보를 기 설정된 기준 화면정보와 비교하여 일치율을 구하는 단계; 및
    상기 구해진 일치율을 근거로 성능 차이를 측정하는 단계;
    를 포함하는 애플리케이션 성능 테스트를 위한 방법.
  10. 제9항에 있어서,
    상기 구해진 일치율을 근거로 성능 차이를 측정하는 단계는, 상기 구해진 일치율이 상기 기준 일치율 이상인 경우 성능 우수, 이상이 아닌 경우 성능 저하라도 판단하는 것을 특징으로 하는 애플리케이션 성능 테스트를 위한 방법.
  11. 검증 장치에 의해 실행될 때,
    단말장치로부터 화면 정보를 수신하는 단계;
    상기 수신된 화면정보에 포함된 캡쳐 화면 수를 기 설정된 기준 화면 수와 비교하는 단계;
    상기 비교결과 화면 수가 동일한 경우, 해당 화면정보를 기 설정된 기준 화면정보와 비교하여 일치율을 구하는 단계; 및
    상기 구해진 일치율을 근거로 성능 차이를 측정하는 단계를 포함하는 애플리케이션 성능 테스트를 위한 방법을 실행하기 위한 프로그램이 수록된 컴퓨터로 판독 가능한 기록 매체.
  12. 단말장치가 애플리케이션 성능 테스트를 위한 방법에 있어서,
    애플리케이션을 실행하는 단계;
    상기 애플리케이션에 사용자 입력 이벤트를 적용하면서 기 설정된 일정 시간 간격으로 화면을 캡쳐하는 단계; 및
    상기 캡쳐된 화면정보를 검증 장치로 전송하는 단계;를 포함하되,
    상기 사용자 입력 이벤트의 적용 시간과 화면의 캡쳐 시간이 동기화되도록 제어하면서 화면을 캡쳐하는 것을 특징으로 하는 애플리케이션 성능 테스트를 위한 방법.
  13. 단말장치에 의해 실행될 때,
    애플리케이션을 실행하는 단계;
    상기 애플리케이션에 사용자 입력 이벤트를 적용하면서 기 설정된 일정 시간 간격으로 화면을 캡쳐하는 단계; 및
    상기 캡쳐된 화면정보를 검증 장치로 전송하는 단계를 포함하되,
    상기 사용자 입력 이벤트의 적용 시간과 화면의 캡쳐 시간이 동기화되도록 제어하면서 화면을 캡쳐하는 것을 특징으로 하는 애플리케이션 성능 테스트를 위한 방법을 실행하기 위한 프로그램이 수록된 컴퓨터로 판독 가능한 기록 매체.
KR1020130115384A 2013-09-27 2013-09-27 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체 KR102106618B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130115384A KR102106618B1 (ko) 2013-09-27 2013-09-27 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130115384A KR102106618B1 (ko) 2013-09-27 2013-09-27 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체

Publications (2)

Publication Number Publication Date
KR20150035151A true KR20150035151A (ko) 2015-04-06
KR102106618B1 KR102106618B1 (ko) 2020-05-04

Family

ID=53030200

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130115384A KR102106618B1 (ko) 2013-09-27 2013-09-27 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체

Country Status (1)

Country Link
KR (1) KR102106618B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170059890A (ko) * 2015-11-23 2017-05-31 로오데운트쉬바르츠게엠베하운트콤파니카게 로깅 시스템 및 로깅 방법
WO2018097345A1 (ko) * 2016-11-23 2018-05-31 주식회사 비디 분산 컴퓨팅 기반의 어플리케이션 객체 분석 방법, 이를 수행하는 어플리케이션 객체 분석 서버 및 이를 저장하는 기록매체
KR20220023620A (ko) * 2020-08-21 2022-03-02 조윤호 조명제어와 자가방범을 위한 기기 통합 제어 시스템
KR20230070731A (ko) * 2021-11-15 2023-05-23 라인 가부시키가이샤 사용자의 서비스 체감 성능 평가 방법 및 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120004120A (ko) * 2010-07-06 2012-01-12 주식회사 엘지유플러스 이기종 애플리케이션 공유 시스템 및 방법
KR20120102967A (ko) * 2011-03-09 2012-09-19 주식회사 케이티 애플리케이션 검증 시스템 및 방법
KR20120121950A (ko) * 2011-04-28 2012-11-07 (주)아이엔에스랩 애플리케이션 그래픽 유저인터페이스 테스트 자동화 시스템 및 그 방법
KR101199485B1 (ko) 2008-12-01 2012-11-09 한국전자통신연구원 클라이언트/서버간 온라인 성능 테스트 방법 및 장치
KR20120127067A (ko) * 2011-05-13 2012-11-21 부산대학교 산학협력단 호환성을 평가하기 위한 화면 동등성 판별 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101199485B1 (ko) 2008-12-01 2012-11-09 한국전자통신연구원 클라이언트/서버간 온라인 성능 테스트 방법 및 장치
KR20120004120A (ko) * 2010-07-06 2012-01-12 주식회사 엘지유플러스 이기종 애플리케이션 공유 시스템 및 방법
KR20120102967A (ko) * 2011-03-09 2012-09-19 주식회사 케이티 애플리케이션 검증 시스템 및 방법
KR20120121950A (ko) * 2011-04-28 2012-11-07 (주)아이엔에스랩 애플리케이션 그래픽 유저인터페이스 테스트 자동화 시스템 및 그 방법
KR20120127067A (ko) * 2011-05-13 2012-11-21 부산대학교 산학협력단 호환성을 평가하기 위한 화면 동등성 판별 장치 및 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170059890A (ko) * 2015-11-23 2017-05-31 로오데운트쉬바르츠게엠베하운트콤파니카게 로깅 시스템 및 로깅 방법
WO2018097345A1 (ko) * 2016-11-23 2018-05-31 주식회사 비디 분산 컴퓨팅 기반의 어플리케이션 객체 분석 방법, 이를 수행하는 어플리케이션 객체 분석 서버 및 이를 저장하는 기록매체
KR20220023620A (ko) * 2020-08-21 2022-03-02 조윤호 조명제어와 자가방범을 위한 기기 통합 제어 시스템
KR20230070731A (ko) * 2021-11-15 2023-05-23 라인 가부시키가이샤 사용자의 서비스 체감 성능 평가 방법 및 시스템

Also Published As

Publication number Publication date
KR102106618B1 (ko) 2020-05-04

Similar Documents

Publication Publication Date Title
CN108959068B (zh) 软件界面测试方法、设备及存储介质
US9342237B2 (en) Automated testing of gesture-based applications
US9280451B2 (en) Testing device
CN107045508B (zh) 应用程序的处理方法和装置
US20170139720A1 (en) Digital assistant setting up device
CN111858318B (zh) 一种响应时间的测试方法、装置、设备和计算机存储介质
US20150135169A1 (en) Testing device and testing method thereof
US20140258989A1 (en) Method and system for automating a scene-based test
US20170322637A1 (en) Mouse action capture and replay system and method, recording medium, and program product
US9298594B2 (en) Testing apparatus and testing method
US20170344449A1 (en) Testing method of electronic devices
WO2016170618A1 (ja) 自動試験装置
KR102106618B1 (ko) 애플리케이션 성능 테스트를 위한 시스템, 단말장치, 검증장치, 방법 및 컴퓨터로 판독 가능한 기록 매체
KR101110241B1 (ko) 프로그램 테스트 장치 및 프로그램
KR20150048365A (ko) 애플리케이션 자동 검증 시스템 및 방법
JP5266416B1 (ja) テストシステム及びテストプログラム
WO2017159631A1 (ja) ソフトウェアの動作検証装置、ソフトウェアの動作検証方法
CN107391354B (zh) 自动监测终端性能的方法及系统、存储装置
JP6357843B2 (ja) アプリケーション検査システム、アプリケーション検査装置及びアプリケーション検査プログラム
JP5204343B1 (ja) テストシステム及びプログラム
KR20120127067A (ko) 호환성을 평가하기 위한 화면 동등성 판별 장치 및 방법
CN111435328A (zh) 应用测试方法、装置、电子设备及可读存储介质
CN114666258A (zh) 接口测试方法、装置、电子设备和介质
CN110572641B (zh) 一种显示设备的测试方法、装置及计算机可读存储介质
KR20190024145A (ko) 사용자 단말, 화면 표시 모니터링 방법, 및 컴퓨터 판독가능 기록 매체

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right