KR101092661B1 - Method and apparatus for testing browser compatibility of web contents - Google Patents

Method and apparatus for testing browser compatibility of web contents Download PDF

Info

Publication number
KR101092661B1
KR101092661B1 KR1020090018885A KR20090018885A KR101092661B1 KR 101092661 B1 KR101092661 B1 KR 101092661B1 KR 1020090018885 A KR1020090018885 A KR 1020090018885A KR 20090018885 A KR20090018885 A KR 20090018885A KR 101092661 B1 KR101092661 B1 KR 101092661B1
Authority
KR
South Korea
Prior art keywords
web
environment
test
web content
information
Prior art date
Application number
KR1020090018885A
Other languages
Korean (ko)
Other versions
KR20100100161A (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 KR1020090018885A priority Critical patent/KR101092661B1/en
Publication of KR20100100161A publication Critical patent/KR20100100161A/en
Application granted granted Critical
Publication of KR101092661B1 publication Critical patent/KR101092661B1/en

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • 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

Abstract

본 발명의 웹 콘텐츠의 브라우저 호환성 검사 방법 및 그 장치에서는, 가상의 또는 실제의 기준 웹 환경과 테스트 웹 환경이 구축된다. 구축된 기준 웹 환경에서 실행되는 웹 콘텐츠와 테스트 웹 환경에서 실행되는 웹 콘텐츠를 레이아웃과 같은 이미지와 동작 측면에서 각각 비교함으로써, 웹 콘텐츠의 브라우저 호환성을 검사한다. 이와 같이, 이미지 및 동작 측면에서 웹 콘텐츠의 브라우저 호환성을 자동으로 검사함으로써, 웹 콘텐츠 제작의 생산성을 크게 향상시킬 수 있다.

Figure R1020090018885

웹 콘텐츠, 웹 브라우저, 정형 명세

In the browser compatibility checking method and apparatus of the web content of the present invention, a virtual or actual reference web environment and a test web environment are constructed. The browser compatibility of the web content is checked by comparing the web content running in the built reference web environment with the web content running in the test web environment in terms of image and operation such as layout. As such, by automatically checking the browser compatibility of the web content in terms of images and operations, the productivity of web content production can be greatly improved.

Figure R1020090018885

Web Content, Web Browsers, Formal Specifications

Description

웹 콘텐츠의 브라우저 호환성 검사 방법 및 그 장치{METHOD AND APPARATUS FOR TESTING BROWSER COMPATIBILITY OF WEB CONTENTS}How to check browser compatibility of web content and its device {METHOD AND APPARATUS FOR TESTING BROWSER COMPATIBILITY OF WEB CONTENTS}

본 발명은 웹 콘텐츠의 브라우저 호환성 검사 방법 및 그 장치에 관한 것으로서, 구체적으로 웹 콘텐츠 제작시 다양한 브라우저와 OS 환경에 따라 달라지는 결과물을 자동으로 분석하여 웹 개발시 생산성을 향상시키기 위한 웹 콘텐츠의 브라우저 호환성 검사 방법 및 장치에 관한 것이다.The present invention relates to a method and a device for checking browser compatibility of web content. Specifically, the browser compatibility of web content to improve productivity in web development by automatically analyzing results that vary according to various browsers and OS environments when web content is produced. An inspection method and apparatus.

본 발명은 지식경제부 및 정보통신연구진흥원 IT성장동력핵심기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다.[과제관리번호: 2007-S-015-02, 과제명: Saas기반 이동형 개인 맞춤 사무환경 제공 기술 개발]The present invention is derived from a study conducted as part of the IT growth engine core technology development project of the Ministry of Knowledge Economy and the Ministry of Information and Telecommunications Research and Development. [Task management number: 2007-S-015-02, Title: Saas-based mobile personalized office work Environmental provision technology development]

일반적으로 웹 콘텐츠의 브라우저 호환성 검사 기법은 웹 콘텐츠 작성 과정에서 나타나는 기능상의 오류를 발견하거나 부분적인 특성만 검사하는 데 그치고 있다. 또는 브라우저가 표준을 준수하는지 여부만 검사하는 데 그치고 있다. 실제 특정 웹 콘텐츠가 다양한 환경에서 일관성 있게 표시되는지를 확인하는 작업은 사용자에 의해 수작업으로 처리되고 있는 실정이다. In general, the browser compatibility checking technique of web content is only to detect the functional error that occurs during the web content creation process or to examine only partial characteristics. Or it just checks whether the browser is compliant. In fact, it is a manual process to check whether a certain web content is displayed consistently in various environments.

웹 콘텐츠란 통상 W3C(World Wide Web Consortium) 표준에 따라 작성된 문서 나 웹사이트, 애플리케이션 등을 지칭한다. 이러한 웹 콘텐츠는 마크업(HTML, XHTML 등)과 스크립트(Javascript), 서버 사이드 모듈(CGI, PHP, ASP, Open API 등)의 조합으로 작성된다.Web content generally refers to documents, websites, applications, etc. written according to the World Wide Web Consortium (W3C) standard. This web content is created from a combination of markup (HTML, XHTML, etc.), script (Javascript), and server-side modules (CGI, PHP, ASP, Open API, etc.).

웹 콘텐츠를 사용하기 위해서는 웹 브라우저 환경이 이용된다. 현재 다양한 종류와 버전의 웹 브라우저가 출시되어 있다. 또한 동일한 종류와 버전의 웹 브라우저일지라도 웹 브라우저가 실행되는 기본적인 OS(operating system) 환경에 따라 다른 버전으로 존재한다. In order to use web content, a web browser environment is used. There are many different types and versions of web browsers available today. In addition, even the same kind and version of web browsers exist in different versions depending on the basic operating system (OS) environment in which the web browser is executed.

이처럼 수많은 조합으로 구성된 환경에 따라 하나의 웹 콘텐츠가 다양하게 표현되고, 동작하고 있으며, 웹 콘텐츠 개발시 특정 웹 콘텐츠가 다양한 환경에서 일관성 있게 표시되고, 동작하는지를 확인하는 웹 콘텐츠의 브라우저 호환성 검사 기법은 각 환경에 대해 수작업으로 확인하고 수정되고 있는 실정이다. The web browser's browser compatibility checking technique is to check whether a single web content is represented and operated in various environments, and whether web content is consistently displayed and operated in various environments. The situation is manually checked and corrected for each environment.

이와 같이, 수작업에 의해 진행되고 있는 종래의 웹 콘텐츠의 브라우저 호환성을 검사기법은 웹 콘텐츠의 제작 생산성을 저하시키고, 하나의 웹 콘텐츠를 개발하고, 유지보수하는데 많은 비용과 시간이 요구된다. As described above, the technique of checking the browser compatibility of the conventional web content, which is being performed by hand, reduces the production productivity of the web content, and requires a large cost and time to develop and maintain one web content.

따라서, 본 발명의 목적은 이러한 불편함을 해소하기 위해 현재 수작업으로 이루어지는 웹 콘텐츠의 브라우저 호환성을 검사가 자동으로 이루어질 수 있는 웹 콘텐츠의 브라우저 호환성 검사 방법 및 그 장치를 제공하는 데 있다. Accordingly, an object of the present invention is to provide a method and apparatus for checking browser compatibility of web content, which can automatically check browser compatibility of web content, which is currently manually performed, to solve such inconvenience.

상술한 바와 같은 본 발명의 목적을 달성하기 위한 웹 콘텐츠의 브라우저 검사 장치는, 외부로부터 제공되는 OS(Operating System)의 정보와 웹 브라우저의 정보에 따라 웹 콘텐츠가 실행되는 기준 웹 환경과 테스트 웹 환경을 구축하는 웹 환경 구축 모듈 및 상기 기준 웹 환경에서 실행된 웹 콘텐츠의 기준 이미지 정보와 상기 테스트 웹 환경에서 실행된 웹 콘텐츠의 테스트 이미지 정보를 비교하고, 상기 기준 웹 환경에서 실행된 웹 콘텐츠의 기준 동작 정보와 상기 테스트 웹 환경에서 실행된 웹 콘텐츠의 테스트 동작 정보를 비교하여, 상기 웹 콘텐츠에 대한 상기 테스트 웹 환경과 상기 기준 웹 환경 간의 호환성을 검사하는 비교 검사 모듈을 포함한다. Browser inspection apparatus for web content to achieve the object of the present invention as described above, the reference web environment and the test web environment that the web content is executed in accordance with the information of the operating system (OS) and the web browser provided from the outside A web environment building module for constructing a web image and comparing the reference image information of the web content executed in the reference web environment with the test image information of the web content executed in the test web environment, and the reference of the web content executed in the reference web environment. A comparison test for checking the compatibility between the test web environment and the reference web environment for the web content by comparing the operation information with the test operation information of the web content executed in the test web environment. Contains modules

본 발명의 다른 목적을 달성하기 위한 웹 콘텐츠의 브라우저 검사 방법은, OS 정보와 웹브라우저 정보를 제공받는 단계와, 상기 OS 정보와 상기 웹브라우저 정보에 근거하여 기준 웹 환경과 테스트 웹 환경을 구축하는 단계와, 웹 콘텐츠를 상기 기준 웹 환경과 상기 테스트 웹 환경에서 각각 실행하는 단계와, 상기 기준 웹 환경에서 실행된 상기 웹 콘텐츠의 기준 이미지 정보와 기준 동작 정보 및 상기 테스트 웹 환경에서 상기 웹 콘텐츠의 테스트 이미지 정보와 테스트 동작 정보를 추출하는 단계, 및 상기 기준 이미지 정보와 상기 테스트 이미지 정보를 비교하고, 상기 기준 동작 정보와 상기 테스트 동작 정보를 비교하여, 상기 웹 콘텐츠에 대한 상기 테스트 웹 환경에서의 호환성을 검사하는 단계를 포함한다.The browser inspection method of the web content to achieve another object of the present invention, the step of receiving the OS information and the web browser information, and building a reference web environment and a test web environment based on the OS information and the web browser information And executing the web content in the reference web environment and the test web environment, respectively, the reference image information and the reference operation information of the web content executed in the reference web environment, and the web content in the test web environment. Extracting test image information and test operation information, and comparing the reference image information and the test image information, and comparing the reference operation information and the test operation information, in the test web environment for the web content. Checking for compatibility.

본 발명에 의하면, 기존 웹 콘텐츠의 브라우저 호환성 검사 과정에서 가상 또는 실제의 웹 환경들이 자동으로 구축되고, 자동으로 구축된 웹 환경들에서 각각 실행되는 웹 콘텐츠의 이미지 및 동작 부분의 비교를 통해 웹 콘텐츠의 브라우저 호환성을 자동으로 검사한다. 그 결과, 웹 콘텐츠 제작의 생산성을 크게 향상시킬 수 있다. 특히 100% 수작업에 의존한 웹 콘텐츠의 시각적인 표현 부분에 대한 브라우저 호환성 분석 과정을 이미지 처리 기법을 이용하여 최소화시킬 수 있으므로 실제 웹 개발 및 유지 보수 작업에 큰 기여를 할 수 있다. According to the present invention, virtual or real web environments are automatically established in a browser compatibility check process of existing web content, and web content is compared by comparing images and motion portions of web content respectively executed in automatically constructed web environments. Automatically checks for browser compatibility. As a result, the productivity of web content production can be greatly improved. In particular, the browser compatibility analysis process for the visual presentation of web content that is 100% manual can be minimized using image processing techniques, which can greatly contribute to the actual web development and maintenance work.

또한 동작 비교 분석 과정의 경우, 기존에 제시된 기술에서는 페이지 연결 관계 등과 같은 콘텐츠의 정적 속성에 국한되어 분석하거나, 실제 브라우저가 아닌 웹 표준 명세 및 스크립트 언어 가상 머신을 이용한 제한된 환경에서의 동작 검사 기능을 제공하여 한계가 있었고, 웹 콘텐츠의 동작 부분에 대한 분석 과정에서도 표현 영역을 고려해야 분석의 대상 범위가 넓어질 수 있으므로, 본 발명을 통해 더욱 넓은 범위의 웹 콘텐츠의 브라우저 호환성 검사를 효율적으로 수행할 수 있다.In the case of the behavior comparison analysis process, the proposed technique is limited to the static properties of the content such as page link relations or the like, or the behavior checking function in a limited environment using the web standard specification and the script language virtual machine instead of the actual browser is provided. The scope of analysis can be widened by considering the presentation area in the analysis process of the operation part of the web content. Therefore, the present invention can efficiently perform a browser compatibility check of a wider range of web content. have.

본 발명의 웹 콘텐츠의 브라우저 호환성 검사 방법 및 그 장치에서는, 웹 콘텐츠의 시각적인 표현 부분은 이미지 패턴 인식 기법에 따라 검사하고, 웹 콘텐츠의 기능 및 동작에 관련된 부분은 소프트웨어의 정형 명세 기법(formal specification technique)및 검증 기법을 이용하여 검사한다.In the method and apparatus for checking the browser compatibility of the web content of the present invention, the visual expression portion of the web content is inspected according to an image pattern recognition technique, and the portion related to the function and operation of the web content is a formal specification technique of software. technique) and verification techniques.

또한 다양한 브라우저 및 OS 환경을 제공해주기 위해 여러 가지 OS 종류, 각 OS의 버전, 여러 가지 브라우저 종류 및 각 브라우저의 버전이라는 네 가지 요소가 조합된 웹 콘텐츠의 실행 환경을 제공해주는 장치가 제공된다.In addition, to provide various browsers and OS environments, a device is provided that provides an environment for executing web content, which is a combination of four elements: various OS types, versions of each OS, different browser types, and versions of each browser.

따라서 본 발명은 개발자가 작성한 웹 콘텐츠 정보를 비교 분석하고자 하는 실행 환경 정보와 함께 본 발명에서 제시하는 브라우저 호환성 검사 장치로 제공되면, 이 검사 장치에서 먼저 실행 환경 정보를 분석하여 이에 맞는 다양한 환경을 가상 또는 실제로 구축한다.Therefore, when the present invention is provided to the browser compatibility checking apparatus proposed by the present invention together with the execution environment information to compare and analyze the web content information written by the developer, the inspection device first analyzes the execution environment information to simulate various environments Or actually build.

이후, 구축된 환경 아래에서, 제공된 웹 콘텐츠 정보에 대해 표현과 동작이라는 두 가지 관점에서의 비교 분석 과정을 통해 호환성을 검사한 후, 최종 분석 결과를 도출한다.Subsequently, under the established environment, the compatibility of the provided web content information is examined through a comparative analysis process from two viewpoints, such as expression and operation, and then a final analysis result is derived.

정리하면, 본 발명에서는 다양한 OS 종류, 각 OS의 버전, 다양한 웹 브라우저 종류 및 각 웹 브라우저의 버전과 같은 네 가지 요소를 통해 웹 콘텐츠가 실행되는 다양한 웹 환경이 구축되고, 구축된 웹 환경에서 웹 콘텐츠의 레이아웃 정보를 통해 표현 형태의 이상 유무를 판단하고, 웹 콘텐츠가 사용자가 의도한 대로 동작하는지를 수작업이 아닌 자동으로 검사한다.In summary, in the present invention, various web environments in which web contents are executed through four elements, such as various OS types, versions of each OS, various web browser types, and versions of each web browser, are constructed, and the web in the web environment is built. The layout information of the content is used to determine whether there is an abnormality in the expression form, and to automatically check whether the web content works as intended by the user, not manually.

그 결과, 웹 콘텐츠 제작의 생산성을 크게 향상시킬 수 있다. 특히 100% 수작업에 의존한 웹 콘텐츠의 시각적인 표현 부분에 대한 브라우저 호환성 분석 과정을 이미지 처리 기법을 이용하여 최소화시킬 수 있으므로 실제 웹 개발 및 유지 보수 작업에 소요되는 노력 및 비용이 절감된다.As a result, the productivity of web content production can be greatly improved. In particular, the process of analyzing browser compatibility for the visual representation of web content, which relies on 100% manual operation, can be minimized by using image processing techniques, which reduces the effort and cost of actual web development and maintenance.

또한 동작 비교 분석 과정의 경우, 기존에 제시된 기술에서는 페이지 연결 관계 등과 같은 콘텐츠의 정적 속성에 국한되어 분석하거나, 실제 브라우저가 아닌 웹 표준 명세 및 스크립트 언어의 가상 머신을 이용한 제한된 환경에서의 동작 검사 기능을 제공하는 데 그치고 있으나, 본 발명에서는 웹 콘텐츠의 동작 부분에 대한 분석 과정에서도 표현 영역을 고려해야 분석의 대상 범위가 넓어질 수 있으므로, 본 발명을 통해 더욱 넓은 범위의 웹 콘텐츠의 브라우저 호환성 검사를 효율적으로 수행할 수 있다.Also, in the case of the behavior comparison analysis process, the proposed technology analyzes only the static properties of the content such as page connection relations, or checks the behavior in a limited environment using a virtual machine of the web standard specification and scripting language rather than the actual browser. In the present invention, the scope of analysis can be widened in consideration of the expression area in the analysis process of the operation part of the web content, so that the browser compatibility check of a wider range of web content can be efficiently performed through the present invention. It can be done with

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 웹 콘텐츠의 브라우저 호환성 검사 장치의 구성을 나타내는 블록도이다.1 is a block diagram showing the configuration of an apparatus for checking browser compatibility of web content according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 웹 콘텐츠의 브라우저 호환성 검사 장치(100)는 다양한 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)에서 실행되는 웹 콘텐츠(20)의 브라우저 호환성을 검사하기 위해, 웹 환경 구축 모듈(110), 비교 검사 모듈(130) 및 표시 모듈(150)을 포함한다.Referring to FIG. 1, the apparatus 100 for checking browser compatibility of web content according to an embodiment of the present invention may be used in various test web environments 30-1, 30-2, 30-3, ..., 30-n. In order to check the browser compatibility of the executed web content 20, the web environment construction module 110, the comparison inspection module 130, and the display module 150 are included.

웹 환경 구축 모듈(110)은 개발자(또는 사용자)에 의해 개발된 웹 콘텐 츠(12), OS 정보(14) 및 웹 브라우저 정보(16)를 입력받아서 기준 웹 환경(20)과 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)을 구축한다. 여기서, 웹 콘텐츠(12)는 홈페이지나 블로그 등과 같은 웹 문서 형태와 게임, 워드프로세서, 웹 메일 등과 같은 애플리케이션 형태까지 웹 상에서 구현되는 모든 대상을 포함한다. 웹 환경 구축 모듈(110)은 OS 정보(14) 및 웹 브라우저 정보(16)를 이용하여 상기 웹 콘텐츠(12)가 실행되는 기준 웹 환경(20)과 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)을 구축한다. 여기서, OS 정보(14)는 OS의 종류 정보 및 OS의 버전 정보를 포함하고, 웹 브라우저 정보(16)는 웹 브라우저의 종류 정보 및 웹 브라우저의 버전 정보를 포함한다. 즉, 웹 환경 구축 모듈(110)은 OS의 종류 정보, OS의 버전 정보, 웹 브라우저의 종류 정보 및 웹 브라우저의 버전 정보로 이루어진 네 가지 요소를 통해 웹 콘텐츠(12)가 실행된 기준 웹 환경(20)과 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)을 구축한다. 도 1에서는, 웹 환경 구축 모듈(110)이 하나의 기준 웹 환경(20)이 구축된 예가 도시되었으나, 두 개 이상의 기준 웹 환경을 구축할 수도 있다.The web environment building module 110 receives the web content 12, the OS information 14, and the web browser information 16 developed by a developer (or a user) to receive a reference web environment 20 and a plurality of test webs. Build environments 30-1, 30-2, 30-3, ..., 30-n. Here, the web content 12 includes all objects that are implemented on the web up to a web document type such as a homepage or a blog and an application type such as a game, a word processor, a web mail, and the like. The web environment building module 110 uses the OS information 14 and the web browser information 16 to generate a reference web environment 20 on which the web content 12 is executed and a plurality of test web environments 30-1 and 30. -2, 30-3, ..., 30-n). Here, the OS information 14 includes the OS type information and the OS version information, and the web browser information 16 includes the web browser type information and the web browser version information. That is, the web environment building module 110 may be configured to execute a reference web environment in which the web content 12 is executed through four elements including the OS type information, the OS version information, the web browser type information, and the web browser version information. 20) and a plurality of test web environments 30-1, 30-2, 30-3, ..., 30-n. In FIG. 1, an example in which one reference web environment 20 is constructed by the web environment building module 110 is illustrated, but two or more reference web environments may be constructed.

한편, 도 1에서는, 웹 브라우저가 Firefox 2.0이고, OS 종류가 Windows XP로 구축된 기준 웹 환경(20)과 웹 브라우저가 Firefox 3.1b이고, OS 종류가 Windows XP로 구축된 제1 테스트 웹 환경(30-1), 웹 브라우저가 Firefox 3.1b이고, OS 종류가 Mac OS X로 구축된 제2 테스트 웹 환경(30-2), 웹 브라우저가 Safari이고, OS 종류가 Mac OS X로 구축된 제3 테스트 웹 환경(30-3) 및 웹 브라우저가 IE 7.0이고, OS 종류가 Windows XP로 구축된 제n 테스트 웹 환경(30-n)을 포함하는 복수의 테스트 웹 환경이 웹 환경 구축 모듈(110)에 의해 구축된 예가 도시된다.Meanwhile, in FIG. 1, the reference web environment 20 in which the web browser is Firefox 2.0, the OS type is Windows XP, and the first test web environment in which the web browser is Firefox 3.1b, and the OS type are Windows XP ( 30-1), the second test web environment 30-2 in which the web browser is Firefox 3.1b, the OS type is Mac OS X, and the third in which the web browser is Safari and the OS type is Mac OS X. The web environment building module 110 includes a plurality of test web environments including the test web environment 30-3 and the web browser being IE 7.0 and the control type test web environment 30-n whose OS type is Windows XP. An example constructed by is shown.

비교 검사 모듈(130)은 기준 웹 환경에서 실행된 웹 콘텐츠와 복수의 테스트 웹 환경에서 실행된 복수의 웹 콘텐츠를 표현(또는 이미지)과 동작이라는 두 가지 측면에서 각각 비교하고, 그 비교 결과를 분석하여 복수의 테스트 웹 환경에 대한 상기 웹 콘텐츠의 브라우저 호환성을 검사한다. 이를 위하여, 비교 검사 모듈(130)은 이미지 비교 검사 모듈(132) 및 동작 비교 검사 모듈(134)을 포함한다. 이미지 비교 검사 모듈(132)은 기준 웹 환경(20)에서 실행된 상기 웹 콘텐츠(12)의 표현 영역과 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)에서 실행된 웹 콘텐츠(12)의 표현 영역을 각각 비교한다. 즉, 이미지 비교 검사 모듈(132)은 상기 기준 웹 환경(20)에서 상기 웹 콘텐츠(12)를 실행시킬 때 표현되는 표현 영역을 기준으로 상기 웹 콘텐츠(12)를 상기 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)에서 각각 실행시킬 때 표현되는 상기 웹 콘텐츠(12)의 표현상의 차이점을 분석한다. 동작 비교 검사 모듈(134)은 기준 웹 환경(20)에서 실행된 상기 웹 콘텐츠(12)에서 제공하는 동작과 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)에서 실행된 상기 웹 콘텐츠(12)에서 제공하는 동작들을 각각 비교한다. 즉, 동작 비교 검사 모듈(134)은 상기 기준 웹 환경(20)에서 실행시킬 때 나타나는 상기 웹 콘텐츠(12)의 동작을 기준으로 상기 웹 콘텐츠(12)를 상기 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)에서 각각 실행시킬 때 구현되는 상기 웹 콘텐츠의 동작상의 차이점을 분석한다.The comparison inspection module 130 compares the web content executed in the reference web environment with the plurality of web contents executed in the plurality of test web environments in terms of expression (or image) and operation, respectively, and analyzes the comparison result. Examine the browser compatibility of the web content for a plurality of test web environments. To this end, the comparison inspection module 130 includes an image comparison inspection module 132 and an operation comparison inspection module 134. The image comparison inspection module 132 may include a presentation area of the web content 12 executed in the reference web environment 20 and a plurality of test web environments 30-1, 30-2, 30-3, ..., 30 -n) compare the presentation areas of the web content 12 executed in each. That is, the image comparison inspection module 132 may display the web content 12 in the plurality of test web environments 30 based on the expression region expressed when the web content 12 is executed in the reference web environment 20. -1, 30-2, 30-3, ..., 30-n) to analyze the differences in the representation of the web content 12 that is expressed when executed respectively. The motion comparison inspection module 134 may perform operations provided by the web content 12 executed in the reference web environment 20 and a plurality of test web environments 30-1, 30-2, 30-3, ..., The operations provided by the web content 12 executed in 30-n) are respectively compared. That is, the motion comparison inspection module 134 may perform the plurality of test web environments 30-1 on the web content 12 based on an operation of the web content 12 displayed when the reference web environment 20 is executed. , 30-2, 30-3, ..., 30-n) to analyze the difference in operation of the web content that is implemented when executed respectively.

표시 모듈(150)은 이미지 비교 검사 모듈(132)과 동작 비교 검사 모듈(134) 을 통해 도출된 비교 분석 결과를 취합하여 개발자에게 다시 알린다. The display module 150 collects the results of the comparison analysis derived through the image comparison inspection module 132 and the operation comparison inspection module 134 and notify the developer again.

이와 같이, 본 발명의 실시예에 따른 웹 콘텐츠의 브라우저 호환성 검사 장치(100)는 다양한 OS 종류, 각 OS의 버전, 다양한 웹 브라우저 종류 및 각 웹 브라우저의 버전과 같은 네 가지 요소를 통해 웹 콘텐츠(12)가 실행되는 가상 또는 실제의 웹 환경이 구축된다. As described above, the apparatus 100 for checking browser compatibility of web content according to an embodiment of the present invention may be implemented through four elements such as various OS types, versions of each OS, various web browser types, and versions of each web browser. A virtual or real web environment is executed in which 12) is executed.

구축된 웹 환경에서 웹 콘텐츠(12)의 레이아웃 정보와 같은 표현 형태의 이상 유무와 같은 웹 콘텐츠(12)가 개발자가 의도한 데로 정상적으로 동작하는지를 수작업이 아닌 자동으로 검사한다.In the constructed web environment, the web content 12 automatically checks whether the web content 12 such as layout information of the web content 12 is normally operated as the developer intended.

그 결과, 웹 콘텐츠 제작의 생산성을 크게 향상시킬 수 있다. 특히 100% 수작업에 의존한 웹 콘텐츠의 시각적인 표현 부분에 대한 브라우저 호환성 분석 과정을 이미지 처리 기법을 이용하여 최소화시킬 수 있으므로 실제 웹 개발 및 유지 보수 작업에 소요되는 노력 및 비용이 절감된다.As a result, the productivity of web content production can be greatly improved. In particular, the process of analyzing browser compatibility for the visual representation of web content, which relies on 100% manual operation, can be minimized by using image processing techniques, which reduces the effort and cost of actual web development and maintenance.

이하, 도 1에 도시된 웹 환경 구축 모듈(110)을 통해 가상 또는 실제의 웹 환경이 구축되는 과정을 상세히 설명하기로 한다. Hereinafter, a process of building a virtual or real web environment through the web environment building module 110 shown in FIG. 1 will be described in detail.

웹 환경 구축 모듈(110)이 검사 요청 메시지를 수신하면, 상기 검사 요청 메시지에 포함된 실행 환경 조건을 해석하여 실행 환경 즉, 웹 환경을 구축한다. 실행 환경 조건은 비교의 기준이 되는 실행 환경 조건과 비교하고자 하는 실행 환경 조건으로 구분된다. 각 조건은 브라우저 종류, 브라우저 버전, OS 종류 및 OS 버전의 네 가지 요소의 조합으로 구성된다. 예컨대, 웹 브라우저 종류가 총 6가지이고, 각각 a, b, c, d, e, f라고 표현하고, 브라우저 버전의 종류는 a가 5가지, b, c, d 가 각각 10가지, e, f가 각각 1가지라 가정하면, a[i], b[j], c[j], d[j], e[k], f[k], (0 < i < 6, 0 < j < 11, 0 < k < 2, i, j, k는 정수)와 같이 표현된다. 또한, OS의 종류가 3가지이고, 각각 x, y, z라고 표현하고, OS 버전의 종류는 x가 2가지, y가 3가지, z가 10가지라 가정하면, x[l], y[m], z[n], (0 < l < 3, 0 < m < 4, 0 < n < 11, l, m, n는 정수)와 같이 표현할 수 있다. 따라서, 총 조합은 (a[i] + b[j] + c[j] + d[j] + e[k] + f[k]) × (x[l] + y[m] + z[n])과 같이 표현될 수 있으며, (5 + 10 + 10 + 10 + 1 + 1) × (2 + 3 + 10) = 555 가지가 된다. 이때, 개발자가 전송하는 실행 환경 조건 중에서 기준 환경 조건은 기본적으로 하나의 브라우저 버전과 하나의 OS 버전으로 구성되고, (a[1], x[1])과 같이 표현하고, 비교 대상 환경은 ((a[1-4], b[4], c[1-10]), (x[1-2], y[1], z[1]))과 같이 표현한다. 여기서, 기준 환경은 하나만 지정되지만 개발자에 의해 동등하다고 확인된 환경을 검사 요청시 부가적으로 전달하여 웹 환경 구축 모듈(110)의 부하를 줄일 수 있다. 그 밖에 다른 조건도 검사 요청 메시지에 추가할 수 있다.When the web environment construction module 110 receives the inspection request message, the execution environment conditions included in the inspection request message are analyzed to construct an execution environment, that is, a web environment. Execution environment conditions are classified into execution environment conditions which are the basis of comparison and execution environment conditions to be compared. Each condition consists of a combination of four elements: browser type, browser version, OS type, and OS version. For example, there are a total of six types of web browsers, each expressed as a, b, c, d, e, and f. The types of browser versions are five for a, ten for each of b, c, and d, and e, f. A [i], b [j], c [j], d [j], e [k], f [k], (0 <i <6, 0 <j <11, 0 <k <2, i, j, k are integers). In addition, assuming that there are three types of OS, and that each is x, y, and z, and that the OS version has two types of x, three types of y, and ten types of z, x [l] and y [m ], z [n], (0 <l <3, 0 <m <4, 0 <n <11, l, m, n are integers). Thus, the total combination is (a [i] + b [j] + c [j] + d [j] + e [k] + f [k]) × (x [l] + y [m] + z [ n]), and (5 + 10 + 10 + 10 + 1 + 1) × (2 + 3 + 10) = 555 branches. At this time, among the execution environment conditions transmitted by the developer, the reference environment condition basically consists of one browser version and one OS version, and is expressed as (a [1], x [1]), and the comparison target environment is ( (a [1-4], b [4], c [1-10]), (x [1-2], y [1], z [1])). Here, only one reference environment may be designated, but additionally delivered when the inspection request is confirmed by the developer to reduce the load of the web environment construction module 110. Other conditions can also be added to the check request message.

이러한 실행 환경 조건은 XML(extensible markup language) 및 JSON(Java Script Object Notation) 기반의 메타 언어(meta-language)로 표현하거나 각 조건을 코드화하여 웹 환경 구축 모듈(110)로 전달될 수 있다.Such execution environment conditions may be expressed in meta-language based on extensible markup language (XML) and Java Script Object Notation (JSON) or may be coded for each condition and transferred to the web environment construction module 110.

본 발명의 실시예에 따른 웹 환경 구축 모듈(110)은 각각 다양한 OS와 다양한 웹 브라우저 환경이 각각 구축된 복수의 물리적인 컴퓨터로 구현될수도 있다.The web environment building module 110 according to an embodiment of the present invention may be implemented as a plurality of physical computers on which various OSs and various web browser environments are respectively constructed.

또한 하나의 컴퓨터에 가상 머신을 설치하여 각각의 환경에 대한 이미지를 구축하여, 검사 요청시 해당 이미지만 불러서 웹 환경을 구축할 수도 있다.In addition, a virtual machine can be installed on one computer to build an image for each environment, and a web environment can be built by calling only the image when a test is requested.

또한 각 환경에서 임의의 웹 콘텐츠를 표현하고 동작시키는 과정을 비교 분석에 활용할 수 있는 수준의 중간 코드로 표현하여 물리적인 실행 환경을 직접 구축하지 않고도 검사를 수행할 수도 있다. In addition, the process of expressing and operating arbitrary web contents in each environment can be expressed as intermediate code that can be used for comparative analysis, and inspection can be performed without building a physical execution environment.

이하, 도 2를 참조하여, 도 1에 도시된 이미지 비교 검사 모듈(132)에 대해 상세히 설명하기로 한다. Hereinafter, the image comparison inspection module 132 illustrated in FIG. 1 will be described in detail with reference to FIG. 2.

도 2는 도 1에 도시된 이미지 비교 검사 모듈에서 수행되는 이미지 비교 과정을 보여주는 도면이다. 여기서, 도 2의 좌측에 도시된 이미지는 기준 웹 환경에서 실행된 웹 컨텐츠(12, 도 1을 참조)가 보여주는 기준 이미지이고, 우측에 도시된 이미지는 도 1에 도시된 제1 테스트 웹 환경(30-1)에서 실행된 웹 컨텐츠(12)가 보여주는 테스트 이미지(32)이다FIG. 2 is a diagram illustrating an image comparison process performed by the image comparison inspection module shown in FIG. 1. Here, the image shown on the left side of FIG. 2 is a reference image shown by the web content 12 (refer to FIG. 1) executed in the reference web environment, and the image shown on the right side shows the first test web environment shown in FIG. It is a test image 32 shown by the web content 12 executed in 30-1).

도 1 및 2를 참조하면, 이미지 비교 검사 모듈(132)은 웹 콘텐츠(12)의 브라우저 호환성에서 시각적으로 표현되는 부분에 대한 분석을 수행하는 모듈이다. 즉, 이미지 비교 검사 모듈(132)은 웹 환경 구축 모듈(110)을 통해 기준 웹 환경(20)에서 실행된 웹 콘텐츠(12)의 기준 이미지와 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)에서 실행된 웹 콘텐츠(12)의 테스트 이미지를 생성하고, 생성된 기준 이미지와 테스트 이미지로부터 각각 레이아웃 정보를 추출하여 비교 분석한다. 여기서, 레이아웃 정보를 추출하는 과정은 이미지 패턴 인식 및 특징 정보 추출 알고리즘을 활용하거나 웹 콘텐츠(12)에 최적화된 알고리즘을 이용한다.1 and 2, the image comparison inspection module 132 is a module that analyzes a visually expressed portion of the browser compatibility of the web content 12. That is, the image comparison inspection module 132 may execute the reference image of the web content 12 executed in the reference web environment 20 and the plurality of test web environments 30-1 and 30-2 through the web environment construction module 110. , 30-3, ..., 30-n) generate a test image of the web content 12 executed, and extract layout information from the generated reference image and the test image, respectively, and compare and analyze the same. Here, the process of extracting layout information uses an image pattern recognition and feature information extraction algorithm or an algorithm optimized for the web content 12.

이미지 비교 검사 모듈(132)에 의한 이미지 비교 분석 과정은 먼저 기준 웹 환경에서 실행된 웹 콘텐츠(12)의 기준 이미지에 대응하는 레이아웃 정보와 해당 테스트 웹 환경에서 실행된 웹 콘텐츠의 테스트 이미지에 대응하는 레이아웃 정보를 비교한다. 이후, 해당 레이아웃 내의 내용(예컨대, 텍스트 정보)를 부가적으로 비교한다. The image comparison analysis process by the image comparison inspection module 132 first corresponds to the layout information corresponding to the reference image of the web content 12 executed in the reference web environment and the test image of the web content executed in the corresponding test web environment. Compare layout information. Thereafter, the contents (eg, text information) in the layout are additionally compared.

예컨대, 도 2에 도시된 바와 같이, 기준 웹 환경(20)에서 실행된 웹 콘텐츠(12)의 기준 이미지(22)와 제1 테스트 웹 환경(30-1)에서 실행된 웹 콘테츠(12)의 테스트 이미지(32)는 영역 1 및 영역 4를 제외한 나머지 표시 영역에서의 레이아웃 차이점을 보인다. 따라서, 이미지 비교 검사 모듈(132)은 기준 웹 환경(20)에서 실행되는 웹 콘텐츠(12)의 이미지 중 영역 2, 영역 3 및 영역 5 부분이 제1 테스트 웹 환경(30-1)에서는 다르게 나타나는 결과를 도출함으로써, 개발자는 표시 모듈(150)을 통해 상기 제1 테스트 웹 환경(30-1)에서 상기 웹 콘텐츠(12)의 브라우저 호환성이 이루어지고 있지 않는다는 메시지를 통보받는다. 예컨대, 레이아웃 정보를 추출하는 과정에서 실제 코드와 추출된 이미지의 세부 영역 및 요소별 연결 관계를 유지하고, 상기 표시 모듈(150)을 통해 불일치 영역을 실제 코드로 표현하여 개발자에게 결과를 알려줄 수도 있다.For example, as shown in FIG. 2, the reference image 22 of the web content 12 executed in the reference web environment 20 and the web content 12 executed in the first test web environment 30-1. The test image 32 shows the layout difference in the remaining display areas except for the region 1 and the region 4. Accordingly, the image comparison inspection module 132 may display regions 2, 3, and 5 of the image of the web content 12 executed in the reference web environment 20 differently in the first test web environment 30-1. By deriving the result, the developer is informed via the display module 150 that the browser compatibility of the web content 12 is not achieved in the first test web environment 30-1. For example, in the process of extracting layout information, the actual code may maintain the connection relationship between the detailed area and the element of the extracted image, and the display module 150 may express the inconsistency area as the actual code to inform the developer of the result. .

이하, 도 3을 참조하여, 도 1의 비교 검사 모듈(130) 내부에 구비된 동작 비교 검사 모듈(134)에 대해 상세히 설명하기로 한다. Hereinafter, the operation comparison inspection module 134 provided in the comparison inspection module 130 of FIG. 1 will be described in detail with reference to FIG. 3.

도 3은 도 1에 도시된 동작 비교 검사 모듈의 내부 구성을 보여주는 블록도이다.3 is a block diagram illustrating an internal configuration of an operation comparison inspection module illustrated in FIG. 1.

도 1 및 도 3을 참조하면, 동작 비교 검사 모듈(134)은 기준 웹 환경(20) 및 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 30-n)에서 각각 실행되는 웹 콘텐 츠(12)의 동작 요소만을 추출하고, 추출된 동작 요소를 중간 언어로 변환한다. 이를 위하여 동작 비교 검사 모듈(134)은 동작 코드 변환기(134A) 및 코드 비교 분석기(134B)를 포함한다. 1 and 3, the operation comparison checking module 134 may include a reference web environment 20 and a plurality of test web environments 30-1, 30-2, 30-3,..., 30-n. Only extracts the motion elements of the web content 12 executed in each, and converts the extracted motion elements into an intermediate language. To this end, the operation comparison inspection module 134 includes an operation code converter 134A and a code comparison analyzer 134B.

동작 코드 변환기(134A)는 개발자가 요청하는 웹 콘텐츠(12)의 코드를 입력받아서 자바스크립트, DOM(Document Object Model), 외부 API, 서버 요청 및 응답 등과 같은 기능을 포함하는 웹 콘텐츠(12)의 동작 요소만을 추출하여 중간 언어(24, 34-1, ..., 34-n)로 변환한다. 여기서, 중간 언어는 일종의 프로그램 코드로서, 프로그램의 동작을 표현하고, 이들 간의 동치 여부와 주어진 조건에 대해 동작이 만족하는지 여부를 검사할 수 있는 정형 명세(formal specification) 언어라면 어떠한 언어라도 무방하다.The action code converter 134A receives the code of the web content 12 requested by the developer to input the code of the web content 12 including functions such as JavaScript, a Document Object Model (DOM), an external API, a server request and a response, and the like. Only motion elements are extracted and converted into intermediate languages 24, 34-1, ..., 34-n. Here, the intermediate language is a kind of program code, and may be any formal specification language that expresses the operation of the program and can check whether the operation is satisfied for the same condition and a given condition therebetween.

코드 비교 분석기(134B)는 기준 웹 환경에서 실행된 웹 콘텐츠의 프로그램 코드와 테스트 웹 환경에서 실행된 웹 콘텐츠의 프로그램 코드를 각각 비교한다.The code comparison analyzer 134B compares the program code of the web content executed in the reference web environment with the program code of the web content executed in the test web environment.

동작 검사 대상인 웹 콘텐츠(12)뿐만 아니라 웹 콘텐츠(12)가 실행되는 웹 환경의 동작에 대해서도 중간 언어로 표현된다. 검사 요청시, 검사 대상인 웹 콘텐츠(12)에 대응하는 중간 언어 표현과 실행 환경에 대한 중간 언어 표현을 조합한 것끼리 비교한다. 도 3에서는 이를 위해 프로세스 대수(Process Algegra) 계열 언어로 표현된 예가 도시되었다.In addition to the web content 12 that is the object to be inspected, the operation of the web environment in which the web content 12 is executed is expressed in an intermediate language. When the inspection request is made, a combination of an intermediate language expression corresponding to the web content 12 to be inspected and an intermediate language expression for the execution environment is compared. In FIG. 3, an example expressed in Process Algegra language is illustrated.

동작 검사 과정은 기준 웹 환경(20)에서 웹 콘텐츠(12)를 실행시키는 중간 언어의 동작 코드(24)와 테스트 웹 환경들(30-1, 30-2, 30-3, ..., 30-n)에서 웹 콘텐츠(12)를 실행시키는 중간 언어의 동작 코드들(34-1, ..., 34-n) 간의 동일 여 부를 각각 비교하는 총 n개의 동치 검사 과정으로 이루어진다.The motion checking process consists of intermediate language action code 24 that executes web content 12 in the reference web environment 20 and test web environments 30-1, 30-2, 30-3, ..., 30 -n) consists of a total of n equality checking processes, each comparing the same between the operation codes 34-1, ..., 34-n of the intermediate language that executes the web content 12.

이러한 동치 검사 과정은 일부의 경우 완전 자동화가 가능하지만, 웹 콘텐츠의 특성상 개발자의 동작 및 외부 이벤트 발생 요소로 이루어진 외부 조건에 따라 부분적인 속성 및 기능 중심으로 수행되어야 한다. 이러한 외부 조건도 웹 콘텐츠(12)와 웹 환경을 표현할 때 사용된 중간언어와 동일한 중간 언어로 표현한다. In some cases, the system can be fully automated, but due to the nature of the web content, it should be carried out with partial attributes and functions depending on the external conditions consisting of the developer's actions and external events. These external conditions are also expressed in the same intermediate language as the intermediate language used when expressing the web content 12 and the web environment.

웹 콘텐츠(12)의 동작에 대한 비교 분석일지라도 정확한 일치 여부를 확인하기 위해서는 이미지 비교 분석 과정도 필요할 수 있다. 따라서, 동작 비교 검사 모듈(134)이 도 2에 도시된 이미지 비교 검사 모듈(132)에게 그 결과값을 요청하고, 동작 비교 분석 과정에서 상기 결과값이 활용될 수도 있다.Even in the comparative analysis of the operation of the web content 12, an image comparison and analysis process may also be required to confirm an exact match. Accordingly, the motion comparison inspection module 134 may request the result value from the image comparison inspection module 132 shown in FIG. 2, and the result value may be utilized in the motion comparison analysis process.

웹 콘텐츠(12)가 실행되는 웹 환경은 중간 언어의 표현 형태뿐만 아니라 웹 환경 구축 모듈(110, 도 1을 참조)에서 실제 또는 가상으로 구축된 웹 환경에서 실행된 웹 콘텐츠(12)의 중간 언어로 실시간으로 실행시키면서 상술한 바와 같은 동작 검사가 수행될 수도 있다. 이 경우, 중간 언어와 실제 웹 환경 사이를 연결하는 중간 연결 모듈이 요구될 수 있다.The web environment in which the web content 12 is executed is not only in the form of the representation of the intermediate language, but also in the intermediate language of the web content 12 executed in the web environment that is actually or virtually built in the web environment building module 110 (see FIG. 1). The operation check as described above may be performed while executing in real time. In this case, an intermediate connection module may be required to connect between the intermediate language and the actual web environment.

중간 연결 모듈은 중간 언어 표현 코드와 실제 실행 환경의 동작의 연결 관계를 담고 있는 모듈이다. 검사 대상인 웹 콘텐츠(12)를 기준 웹 환경(20)에서 중간 언어와 실제 코드의 연결 정보는 유지한 상태로 표시 모듈(150)에서 중간 언어상에서 발견된 오류 지점을 실제 코드로 표현할 때 활용될 수 있다. An intermediate connection module is a module that holds the connection between the intermediate language representation code and the behavior of the actual execution environment. The web content 12 to be inspected can be used to represent the error points found in the intermediate language in the display module 150 in actual code while maintaining the connection information between the intermediate language and the actual code in the reference web environment 20. have.

한편, 표시 모듈(150)은 상술한 바와 같은 이미지 비교 분석 과정과 동작 비교 분석 과정이 수행된 후, 중간 언어로 표현된 상태에서 발견된 오류 및 차이점 발생 영역을 이미지 비교 검사 모듈과 동작 비교 검사 모듈에서 유지되던 실제 코드와의 연결 정보에 근거하여 실제 코드 상의 표현으로 번역하여 그 결과를 보고한다. 이를 통해 개발자는 비교 분석에 이용되던 중간 언어를 알 필요 없이 작업하던 언어 표현으로 분석 결과를 볼 수도 있다.Meanwhile, after the image comparison analysis process and the operation comparison analysis process as described above are performed, the display module 150 checks the image comparison inspection module and the motion comparison inspection module for the error and difference occurrence region found in the intermediate language. Based on the linkage information with the actual code maintained in, translate it to the representation in the actual code and report the result. This allows the developer to view the analysis results in the language expression they were working on without having to know the intermediate language used for comparative analysis.

도 4는 도 1에 도시된 웹 콘텐츠의 브라우저 호환성 검사 장치에 의해 수행되는 웹 콘텐츠의 브라우저 호환성 검사 방법을 나타내는 흐름도이다.FIG. 4 is a flowchart illustrating a method for checking browser compatibility of web content performed by the browser compatibility checking apparatus for web content shown in FIG. 1.

도 1 및 도 4를 참조하면, 외부로부터 OS 정보와 웹브라우저 정보가 도 1에 도시된 웹 환경 구축 모듈(110)에 제공된다(S410). 여기서, OS 정보는 OS의 종류 정보와 OS 버전 정보를 포함하고, 웹 브라우저 정보는 웹 브라우저의 종류 정보와 웹 브라우저의 버전 정보를 포함한다. 1 and 4, OS information and web browser information are provided to the web environment building module 110 shown in FIG. 1 from outside (S410). Here, the OS information includes OS type information and OS version information, and the web browser information includes web browser type information and web browser version information.

이어, 상기 웹 환경 구축 모듈(110)에 의해 상기 제공된 OS 정보와 웹브라우저 정보에 따라 기준 웹 환경(20)과 테스트 웹 환경이 각각 구축된다(S420). 이때, OS의 종류 정보, OS 버전 정보, 웹 브라우저의 종류 정보 및 웹 브라우저의 버전 정보로 이루어진 네 가지 요소의 조합에 따라 복수의 테스트 웹 환경(30-1, 30-2, 30-3, ..., 309-n)이 구축된다.Subsequently, the reference web environment 20 and the test web environment are respectively constructed according to the OS information and the web browser information provided by the web environment building module 110 (S420). In this case, the plurality of test web environments 30-1, 30-2, 30-3,..., According to a combination of four elements including OS type information, OS version information, web browser type information, and web browser version information. 309-n) is constructed.

이어, 구축된 상기 기준 웹 환경(20)과 상기 테스트 웹 환경(30-1, 30-2, 30-3, ..., 309-n)에서 개발자가 개발한 웹 콘텐츠가 각각 실행된다(S430).Subsequently, web contents developed by a developer are executed in the constructed reference web environment 20 and the test web environments 30-1, 30-2, 30-3, ..., 309-n, respectively (S430). ).

이어, 상기 기준 웹 환경(20)에서 실행된 상기 웹 콘텐츠(12)의 기준 이미지 정보와 기준 동작 정보가 도 1에 도시된 비교 검사 모듈(130)의 내부에 구비된 이미지 비교 검사 모듈(132)에 의해 각각 추출된다(S440). 또한, 도 1에 도시된 비교 검사 모듈(130)의 내부에 구비된 이미지 비교 검사 모듈(132)에 의해 상기 테스트 웹 환경에서 상기 웹 콘텐츠(20)의 테스트 이미지 정보와 테스트 동작 정보가 각각 추출된다(S440). Subsequently, the image comparison inspection module 132 having reference image information and reference operation information of the web content 12 executed in the reference web environment 20 provided inside the comparison inspection module 130 shown in FIG. 1. Each is extracted by (S440). In addition, test image information and test operation information of the web content 20 are extracted in the test web environment by the image comparison inspection module 132 provided in the comparison inspection module 130 shown in FIG. 1. (S440).

이어, 추출된 상기 기준 이미지 정보와 상기 테스트 이미지 정보가 이미지 비교 검사 모듈(132)에 의해 각각 비교되고, 상기 기준 동작 정보와 상기 테스트 동작 정보가 동작 비교 검사 모듈(134)에 의해 각각 비교되고(S450), 그 비교 결과 즉 동치 여부에 따라 상기 웹 콘텐츠(20)에 대한 해당 테스트 웹 환경에서의 호환성 여부가 판단된다(S460).Then, the extracted reference image information and the test image information are compared by the image comparison inspection module 132, respectively, and the reference operation information and the test operation information are compared by the operation comparison inspection module 134, respectively ( In operation S450, it is determined whether or not the compatibility of the web content 20 is compatible with the test web environment according to the comparison result, that is, equality or not (S460).

이상, 본 발명의 기술사상이 앞서 언급된 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며, 그 제한을 위한 것이 아님을 주의하여야 한다. As mentioned above, although the technical idea of the present invention has been described in detail according to the above-mentioned preferred embodiment, it should be noted that the above embodiment is for the purpose of description and not for the limitation.

또한, 본 발명의 기술분야의 통상의 전문가라면 본 발명의 기술적 사상의 범위에서 다양한 실시예가 가능함을 이해할 수 있을 것이다. 따라서 본 발명의 보호범위는 이하의 특허청구범위의 기재에 의하여 정하여져야 할 것이다.In addition, those skilled in the art will understand that various embodiments are possible within the scope of the technical idea of the present invention. Therefore, the protection scope of the present invention will be defined by the description of the claims below.

도 1은 본 발명의 실시예에 따른 웹 콘텐츠의 브라우저 호환성 검사 장치의 구성을 나타내는 블록도이다.1 is a block diagram showing the configuration of an apparatus for checking browser compatibility of web content according to an embodiment of the present invention.

도 2는 도 1에 도시된 이미지 비교 검사 모듈에서 수행되는 이미지 비교 과정을 보여주는 도면이다.FIG. 2 is a diagram illustrating an image comparison process performed by the image comparison inspection module shown in FIG. 1.

도 3은 도 1에 도시된 동작 비교 검사 모듈의 내부 구성을 보여주는 블록도이다.3 is a block diagram illustrating an internal configuration of an operation comparison inspection module illustrated in FIG. 1.

도 4는 도 1에 도시된 웹 콘텐츠의 브라우저 호환성 검사 장치에 의해 수행되는 웹 콘텐츠의 브라우저 호환성 검사 방법을 나타내는 흐름도이다.FIG. 4 is a flowchart illustrating a method for checking browser compatibility of web content performed by the browser compatibility checking apparatus for web content shown in FIG. 1.

Claims (10)

외부로부터 제공되는 OS(Operating System)의 정보와 웹 브라우저의 정보에 따라 웹 콘텐츠가 실행되는 기준 웹 환경과 테스트 웹 환경을 구축하는 웹 환경 구축 모듈; 및A web environment building module for constructing a reference web environment and a test web environment in which web content is executed according to information of an operating system (OS) and a web browser provided from the outside; And 상기 기준 웹 환경에서 실행된 웹 콘텐츠의 기준 이미지 정보와 상기 테스트 웹 환경에서 실행된 웹 콘텐츠의 테스트 이미지 정보를 비교하고, 상기 기준 웹 환경에서 실행된 웹 콘텐츠의 기준 동작 정보와 상기 테스트 웹 환경에서 실행된 웹 콘텐츠의 테스트 동작 정보를 비교하여, 상기 웹 콘텐츠에 대한 상기 테스트 웹 환경과 상기 기준 웹 환경 간의 호환성을 검사하는 비교 검사 모듈을 포함하되,Compare the reference image information of the web content executed in the reference web environment with the test image information of the web content executed in the test web environment, and the reference operation information of the web content executed in the reference web environment and the test web environment. A comparison test for comparing the test operation information of the executed web content to check the compatibility between the test web environment and the reference web environment for the web content. Include modules, 상기 비교 검사 모듈은,The comparison inspection module, 상기 기준 웹 환경에서 실행된 상기 웹 콘텐츠의 상기 기준 이미지 정보에 대응하는 레이 아웃과 상기 테스트 웹 환경에서 실행된 상기 웹 콘텐츠의 상기 테스트 이미지 정보에 대응하는 레이 아웃을 비교하여, 상기 웹 환경 간의 호환성을 검사하는 이미지 비교 검사 모듈; 및Compatibility between the web environment by comparing a layout corresponding to the reference image information of the web content executed in the reference web environment with a layout corresponding to the test image information of the web content executed in the test web environment An image comparison inspection module for inspecting; And 상기 기준 웹 환경에서 상기 웹 콘텐츠를 실행시키는 상기 기준 동작 정보에 대응하는 프로그램 코드와 상기 테스트 웹 환경에서 상기 웹 콘텐츠를 실행시키는 상기 테스트 동작 정보에 대응하는 프로그램 코드를 비교하여, 상기 웹 환경 간의 호환성을 검사하는 동작 비교 검사 모듈을 포함하고,Compatibility between the web environment by comparing the program code corresponding to the reference action information to execute the web content in the reference web environment with the program code corresponding to the test action information to execute the web content in the test web environment. Includes a motion comparison check module to check the, 상기 동작 비교 검사 모듈은,The operation comparison inspection module, 상기 웹 콘텐츠의 코드를 입력 받아서 자바스크립트, DOM(Document Object Model), 외부 API, 서버 요청 및 응답 기능을 포함하는 상기 웹 콘텐츠의 동작 요소에 대응하는 상기 프로그램 코드로 변환하는 동작 코드 변환기; 및An action code converter which receives the code of the web content and converts the code into the program code corresponding to an action element of the web content including a JavaScript, a Document Object Model (DOM), an external API, a server request, and a response function; And 상기 기준 웹 환경에서 실행된 상기 웹 콘텐츠의 상기 프로그램 코드와 상기 테스트 웹 환경에서 실행된 상기 웹 콘텐츠의 상기 프로그램 코드 간의 일치 여부를 검사하여, 상기 웹 콘텐츠에 대한 상기 테스트 웹 환경에서의 호환성을 검사하는 코드 비교 분석기를 포함하는 것을 특징으로 하는 웹 콘텐츠의 브라우저 호환성 검사 장치.Checking compatibility between the program code of the web content executed in the reference web environment and the program code of the web content executed in the test web environment, thereby checking the compatibility in the test web environment for the web content. Browser compatibility checking device for the web content, characterized in that it comprises a code comparison analyzer. 제1항에 있어서, 상기 OS의 정보는 상기 OS의 종류 및 상기 OS의 버전을 포함하고,The method of claim 1, wherein the information of the OS includes a type of the OS and a version of the OS, 상기 웹 브라우저의 정보는 상기 웹 브라우저의 종류와 상기 웹 브라우저의 버전을 포함하는 것을 특징으로 하는 웹 콘텐츠의 브라우저 호환성 검사 장치.And the web browser information includes a type of the web browser and a version of the web browser. 제2항에 있어서, 상기 웹 환경 구축 모듈은 상기 OS의 종류, 상기 OS의 버 전, 상기 웹 브라우저의 종류 및 상기 웹 브라우저의 버전으로 이루어진 네 가지 요소의 조합에 따라 복수의 테스트 웹 환경을 구축하는 것을 특징으로 하는 웹 콘텐츠의 브라우저 호환성 검사 장치.The web environment construction module according to claim 2, wherein the web environment construction module constructs a plurality of test web environments according to a combination of four elements consisting of the type of the OS, the version of the OS, the type of the web browser, and the version of the web browser. Apparatus for checking the browser compatibility of the web content, characterized in that. 삭제delete 삭제delete 제1항에 있어서, 상기 프로그램 코드는 정형 명세(formal specification) 언어인 것을 특징으로 하는 웹 콘텐츠의 브라우저 호환성 검사 장치.The apparatus of claim 1, wherein the program code is a formal specification language. OS 정보와 웹브라우저 정보를 제공받는 단계;Receiving OS information and web browser information; 상기 OS 정보와 상기 웹브라우저 정보에 근거하여 기준 웹 환경과 테스트 웹 환경을 구축하는 단계;Establishing a reference web environment and a test web environment based on the OS information and the web browser information; 웹 콘텐츠를 상기 기준 웹 환경과 상기 테스트 웹 환경에서 각각 실행하는 단계;Executing web content in the reference web environment and the test web environment, respectively; 상기 기준 웹 환경에서 표현되는 상기 웹 콘텐츠의 레이아웃 정보에 대응하는 기준 이미지 정보와 상기 테스트 웹 환경에서 표현되는 상기 웹 콘텐츠의 레이아웃 정보에 대응하는 테스트 이미지 정보를 추출하는 단계; 및Extracting reference image information corresponding to the layout information of the web content expressed in the reference web environment and test image information corresponding to the layout information of the web content expressed in the test web environment; And 상기 기준 웹 환경에서 상기 웹 콘텐츠를 실행시키는 프로그램 코드에 대응하는 기준 동작 정보와 상기 테스트 웹 환경에서 상기 웹 콘텐츠를 실행시키는 프로그램 코드에 대응하는 테스트 동작 정보를 추출하는 단계;Extracting reference operation information corresponding to program code for executing the web content in the reference web environment and test operation information corresponding to program code for executing the web content in the test web environment; 상기 기준 웹 환경에서 실행된 상기 웹 콘텐츠의 상기 기준 이미지 정보에 대응하는 레이 아웃과 상기 테스트 웹 환경에서 실행된 상기 웹 콘텐츠의 상기 테스트 이미지 정보에 대응하는 레이 아웃을 비교하여, 표현 측면에서의 상기 웹 환경 간의 호환성을 검사하는 단계; 및Comparing the layout corresponding to the reference image information of the web content executed in the reference web environment with the layout corresponding to the test image information of the web content executed in the test web environment, Checking compatibility between web environments; And 상기 기준 웹 환경에서 상기 웹 콘텐츠를 실행시키는 상기 기준 동작 정보에 대응하는 프로그램 코드와 상기 테스트 웹 환경에서 상기 웹 콘텐츠를 실행시키는 상기 테스트 동작 정보에 대응하는 프로그램 코드를 비교하여, 동작 측면에서의 상기 웹 환경 간의 호환성을 검사하는 단계를 포함하되,Comparing the program code corresponding to the reference operation information for executing the web content in the reference web environment with the program code corresponding to the test operation information for executing the web content in the test web environment, Include checking for compatibility between web environments, 상기 프로그램 코드는,The program code is, 상기 웹 콘텐츠의 코드를 입력 받아서 자바스크립트, DOM(Document Object Model), 외부 API, 서버 요청 및 응답 기능을 포함하는 상기 웹 콘텐츠의 동작 요소에 대응하는 코드인 것을 특징으로 하는 웹 콘텐츠의 브라우저 호환성 검사 방법.Checking the browser compatibility of the web content, characterized in that the code corresponding to the operation element of the web content including the JavaScript code, DOM (Document Object Model), external API, server request and response function Way. 제7항에 있어서, OS 정보와 웹브라우저 정보를 제공받는 단계는,The method of claim 7, wherein the step of receiving OS information and web browser information comprises: OS의 종류 및 상기 OS의 버전을 포함하는 상기 OS 정보를 제공받는 단계; 및Receiving the OS information including a type of OS and a version of the OS; And 웹 브라우저의 종류와 상기 웹 브라우저의 버전을 포함하는 상기 웹 브라우저 정보를 제공받는 단계;Receiving the web browser information including the type of web browser and the version of the web browser; 를 포함하는 것을 특징으로 하는 웹 콘텐츠의 브라우저 호환성 검사 방법.Browser compatibility check method of the web content comprising a. 제8항에 있어서, 상기 테스트 웹 환경을 구축하는 단계는,The method of claim 8, wherein the establishing of the test web environment comprises: 상기 OS의 종류, 상기 OS의 버전, 웹 브라우저의 종류 및 상기 웹 브라우저의 버전으로 이루어진 네 가지 요소의 조합 수를 계산하는 단계; 및Calculating a combination number of four elements consisting of the type of the OS, the version of the OS, the type of web browser, and the version of the web browser; And 상기 계산된 조합 수에 대응하는 복수의 테스트 웹 환경을 구축하는 단계;Establishing a plurality of test web environments corresponding to the calculated combination number; 를 포함하는 것을 특징으로 하는 웹 콘텐츠의 브라우저 호환성 검사 방법.Browser compatibility check method of the web content comprising a. 삭제delete
KR1020090018885A 2009-03-05 2009-03-05 Method and apparatus for testing browser compatibility of web contents KR101092661B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090018885A KR101092661B1 (en) 2009-03-05 2009-03-05 Method and apparatus for testing browser compatibility of web contents

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090018885A KR101092661B1 (en) 2009-03-05 2009-03-05 Method and apparatus for testing browser compatibility of web contents

Publications (2)

Publication Number Publication Date
KR20100100161A KR20100100161A (en) 2010-09-15
KR101092661B1 true KR101092661B1 (en) 2011-12-13

Family

ID=43006272

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090018885A KR101092661B1 (en) 2009-03-05 2009-03-05 Method and apparatus for testing browser compatibility of web contents

Country Status (1)

Country Link
KR (1) KR101092661B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101340780B1 (en) * 2012-02-29 2013-12-11 주식회사 팬택 Data sharing system and method
KR20200066150A (en) 2018-11-30 2020-06-09 주식회사 테스트웍스 Apparatus and Method for Verifying Compatibility of Webpages

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101453988B1 (en) * 2013-05-10 2014-10-28 슈어소프트테크주식회사 The method for testing interoperability among DLNA devices
KR102296897B1 (en) * 2015-10-23 2021-08-31 삼성에스디에스 주식회사 System and method for performing test automation of solution
KR101683273B1 (en) * 2015-11-24 2016-12-07 쉬프트정보통신 주식회사 Device for displaying a frame of a web browser on another web browser
CN106776267A (en) * 2015-11-25 2017-05-31 富士通株式会社 Web application compatibility test method and web application compatibility test equipment
KR102305845B1 (en) 2020-12-21 2021-09-29 쿠팡 주식회사 Electronic apparatus for verifying code and method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060101404A1 (en) 2004-10-22 2006-05-11 Microsoft Corporation Automated system for tresting a web application

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060101404A1 (en) 2004-10-22 2006-05-11 Microsoft Corporation Automated system for tresting a web application

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Keith Smith, Simplifying Ajax-Style Web Development,IEEE Computer Society, Vol.39, Issue:5, May,2006, P.98-101
박태흥, ASP.NET Ajax 이용한 웹 페이지 모델의 성능 분석, 한국산업정보학회 2008년도 추계 공동 국제학술대회,2008.10, P.673-679

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101340780B1 (en) * 2012-02-29 2013-12-11 주식회사 팬택 Data sharing system and method
KR20200066150A (en) 2018-11-30 2020-06-09 주식회사 테스트웍스 Apparatus and Method for Verifying Compatibility of Webpages

Also Published As

Publication number Publication date
KR20100100161A (en) 2010-09-15

Similar Documents

Publication Publication Date Title
KR101092661B1 (en) Method and apparatus for testing browser compatibility of web contents
US10261984B2 (en) Browser and operating system compatibility
US10108535B2 (en) Web application test script generation to test software functionality
AU2017258963A1 (en) Simultaneous multi-platform testing
US20120311467A1 (en) Computer-implemented method, system and computer program product for displaying a user interface component
CN109947637B (en) Automatic testing method, device, equipment and medium for webpage compatibility
CN104881608A (en) XSS vulnerability detection method based on simulating browser behavior
CN104881607A (en) XSS vulnerability detection method based on simulating browser behavior
CN105164691A (en) Optimizing test data payload selection for testing computer software applications using computer networks
CN105373533B (en) A kind of detection method, client and the device of page link address
JP6486574B2 (en) Program code generating apparatus, program code generating method, and program code generating program
WO2016122508A1 (en) Test generation for browser-based user interface
EP2972880B1 (en) Kernel functionality checker
CN116775034A (en) Method, device and equipment for constructing kernel observation program
JP2012078877A (en) Vulnerability inspection device, vulnerability inspection method and vulnerability inspection program
EP2721494B1 (en) System and method to in-line script dependencies
CN115599683A (en) Automatic testing method, device, equipment and storage medium
Li et al. Modeling web application for cross-browser compatibility testing
CN113138767A (en) Code language conversion method, device, electronic equipment and storage medium
CN111666216A (en) Intelligent contract analysis method and device
Sampath et al. Advances in Web application testing, 2010–2014
Lefticaru et al. An empirical evaluation of P system testing techniques
CN110704483A (en) User routing process positioning method, device, storage medium and device
Murolo et al. Improved developer support for the detection of cross-browser incompatibilities
US20220405196A1 (en) Operation pattern generation apparatus, operation pattern generation method and program

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
FPAY Annual fee payment

Payment date: 20141202

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151116

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161111

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20171108

Year of fee payment: 7