Mitmeplatvormiline veebidokumentide pildistamise lahendus

Date

2013

Journal Title

Journal ISSN

Volume Title

Publisher

Tartu Ülikool

Abstract

Veebilehte kuvatakse harva täpselt samasugusena erinevates brauseri ja operatsioonisüsteemi kombinatsioonides. Sellel on mitmeid põhjuseid: veebistandardite tõlgendamine brauseri poolt, brauseri visualiseerimismootor, operatsioonisüsteemi vaikefondid, brauserisse installeeritud pistikprogrammid, ekraani eraldusvõime jms. Nende erinevuste tähelepanuta jätmine võib tekitada probleeme veebilehe kujunduses, mille tagajärjeks on klientide kaotamine. Veebidisaineritele võib tunduda veebilehtede testimine mitmes brauseris tavapärase praktikana, et leida brauseritevahelised kujunduse probleemid. Katsed näitavad, et visuaalsete erinevuste käsitsi leidmine on tülikas ja kohmakas ülesanne. Seda teades on meie meeskonna liige loonud algoritmi, mis on osutunud inimestega võrreldes märkimisväärselt kiiremaks ja täpsemaks kujunduses vigade leidmisel. Algoritm töötab selliselt, et veebilehest tehtud aluspilti (tarkvara testimise mõistes oraaklit) võrreldakse samast veebilehest teiste brauseritega tehtud piltidega, leides nendes paigutuse erinevusi, mida ka inimsilm arvestaks väärana. Käesolev töö keskendub probleemile, kuidas eelnevalt mainitud algoritmile sisendit luua. Töö annab valikulise ülevaate olemasolevatest lahendustest ja teenustest, mis tagastavad veebilehe sisu pildi kujul, ning võimalusel mõõdab nende jõudlust. Tuvastatakse nimekiri nõuetest, mis on vajalikud mitmeplatvormilise veebidokumentide pildistamise lahenduse kommertsialiseerimiseks. Seejärel tutvustab töö kiiret ja mitmeplatvormilist meetodit veebilehe täispikkuses pildistamiseks ning annab ülevaate skaleeritava arhitektuuriga veebiteenusest, mis pildistab veebilehti virtuaalsetes ja füüsilistes masinates ning erinevates brauserites ja operatsioonisüsteemides.
A web page is seldom displayed in the exact same manner in different browser and operating system combinations. There are several reasons for different rendering outcomes: interpretation of web standards by the browser, the browser's rendering engine, available fonts in the operating system, plugins installed in the browser, screen resolution etc. Neglecting to consider these differences as a web designer may lead to webpage layout issues that result in lost customers. Web designers might consider it common practice to test webpages on several browsers to eliminate cross-browser layout issues. Experiments show that finding visual differences is a dull and cumbersome task for people. Knowing this, another member working at Browserbite has created an algorithm that has proved to be much faster and more accurate at finding layout issues compared to humans. The algorithm works by comparing a baseline (oracle in software testing terms) webpage in image form to other image captures of the same webpage in different browsers, finding differences in layout and position that a human might consider erroneous. This thesis concentrates on the problem of creating the input to the aforementioned algorithm. A selective overview of existing solutions and services for webpage capture and automation is given, measuring their performance where possible. A list of requirements are established for a cross-platform capture solution to be commercialized. A fast and cross-platform method of capturing full webpages is then introduced, and an overview of a scalable Software-as-a-Service system implemented for cross-browser and cross-platform capture in several virtual and physical machines asynchronously is given.

Description

Keywords

Citation