X-PERT: Accurate Identification of Cross-Browser Issues in Web Applications Shauvik Roy Choudhary, Mukul Prasad, Alessandro Orso Labs of America Partially.

Slides:



Advertisements
Similar presentations
CONTRIBUTIONS Ground-truth dataset Simulated search tasks environment Multiple everyday applications (MS Word, MS PowerPoint, Mozilla Browser) Implicit.
Advertisements

Ideas to Layout Beginning web layout using Cascading Style Sheets (CSS). Basic ideas, practices, tools and resources for designing a tableless web site.
Shauvik Roy Choudhary, Husayn Versee, and Alessandro Orso Georgia Institute of Technology Partially supported by the NSF awards CCF and CCF
Shauvik Roy Choudhary, Dan Zhao, Husayn Versee, and Alessandro Orso Georgia Institute of Technology.
Browserbite: Accurate Cross-Browser Testing via Machine Learning Over Image Features Nataliia Semenenko*, Tõnis Saar** and Marlon Dumas*
DSPIN: Detecting Automatically Spun Content on the Web Qing Zhang, David Y. Wang, Geoffrey M. Voelker University of California, San Diego 1.
Finding Presentation Failures Using Image Comparison Techniques Sonal Mahajan and William G.J. Halfond Department of Computer Science University of Southern.
Ao-Jan Su † Y. Charlie Hu ‡ Aleksandar Kuzmanovic † Cheng-Kok Koh ‡ † Northwestern University ‡ Purdue University How to Improve Your Google Ranking: Myths.
Using Computer Vision to Test Web Display Xu Liu
Aki Hecht Seminar in Databases (236826) January 2009
MWD1001 – Website Production Web Browsers Week 11.
MODULE 6 THE INTERNET. Introduction to the Internet and World Wide Web A computer network is a communication system that connects two or more computers.
INTRODUCTION TO CLIENT-SIDE WEB PROGRAMMING ACM 511 ACM 262 Course Notes.
 Using Microsoft Expression Web you can: › Create Web pages and Web sites › Set what you site will look like as you design it › Add text, images, multimedia.
Root Cause Analysis for HTML Presentation Failures using Search-Based Techniques Sonal Mahajan, Bailan Li, William G.J. Halfond Department of Computer.
Reverse Engineering State Machines by Interactive Grammar Inference Neil Walkinshaw, Kirill Bogdanov, Mike Holcombe, Sarah Salahuddin.
WebSee: A Tool for Debugging HTML Presentation Failures Sonal Mahajan and William G. J. Halfond Department of Computer Science University of Southern California.
Unit 1 – Web Concepts Instructor: Brent Presley. ASSIGNMENT Read Chapter 1 Complete lab 1 – Installing Portable Apps.
Taking Your Website On The Road Technology No Where to Go.
Analysis of DOM Structures for Site-Level Template Extraction (PSI 2015) Joint work done in colaboration with Julián Alarte, Josep Silva, Salvador Tamarit.
Adobe Contribute CS4 Targeted Training, LLC © Targeted Training, LLC 2010.
Google Chrome: Apps and Extensions for Education Presentation by Tiffany Arends.
CrossCheck: Combining Crawling and Differencing to Better Detect Cross-browser Incompatibilities in Web Applications Shauvik Roy Choudhary, Mukul Prasad,
UOS 1 Ontology Based Personalized Search Zhang Tao The University of Seoul.
Cloak and Dagger: Dynamics of Web Search Cloaking David Y. Wang, Stefan Savage, and Geoffrey M. Voelker University of California, San Diego 左昌國 Seminar.
Printed by Web Browser Comparison By: Gustavo Marrero & Ignacio Pérez Universidad Interamericana de Puerto Rico   In our experiment.
Objective Understand concepts used to web-based digital media. Course Weight : 5%
WebVizOr: A Fault Detection Visualization Tool for Web Applications Goal: Illustrate and evaluate the uses of WebVizOr, a new tool to aid web application.
XHTML By Trevor Adams. Topics Covered XHTML eXtensible HyperText Mark-up Language The beginning – HTML Web Standards Concept and syntax Elements (tags)
Feature Detection in Ajax-enabled Web Applications Natalia Negara Nikolaos Tsantalis Eleni Stroulia 1 17th European Conference on Software Maintenance.
X-PERT A Web Application Testing Tool for Cross-Browser Inconsistency Detection Shauvik Roy Choudhary, Mukul Prasad, Alessandro Orso Labs of America.
COMPUTER BASICS: PART II Mrs. Sealy | Thompson Middle School.
Browser Wars (Click on the logo to see the performance)
Mrs. Walls September/October Learning the Web Vocabulary Web Sites Web Pages Web Browser To Bibliography Bibliography.
Mrs. Walls September/October Learning the Web Vocabulary Web Sites Web Pages Web Browser.
Internet Browser Setting Nov SyncSCM Team. 1. Internet Explorer(9 or 10) 2. Google Chrome Agenda.
Vocabulary 3 Internet Vocabulary. internet A system that connects billions of computers around the world.
Presented by Luke St Jack!.  Web browsers a type of application that are capable of translating html data from websites and other sources into a readable.
Website Design, Development and Maintenance ONLY TAKE DOWN NOTES ON INDICATED SLIDES.
Vocabulary 2 Internet Vocabulary. online On the internet.
Thực hiện: D3 GVLT: BROWERS. Browser Compatibility I Check the compatibility II Tools III.
May 6, 2009 Browser Compatibility Testing Definition It is a non functional type of testing where web based applications are tested on various browsers(IE.
Patient Portal Website Patient Training Powered by the.
INTERNET VOCAB. WEB BROWSER An app for finding info on the web.
Internet Searching the World Wide Web. The Internet and the World Wide Web The Internet is a worldwide collection of networks that allows people to communicate.
Sajanee Halko, Jaayden Halko, Brett Masker & Jan Spyridakis Other contributing researchers: Elisabeth Cuddihy, Kate Mobrand, Sella Rush.
And Mobile Web Browsers
C.P. Patidar Meena Sharma Varsha Sharda
Detecting and Localizing Internationalization
Internet Search What you need to know!.
Julián ALARTE DAVID INSA JOSEP SILVA
Introduction to HTML.
Based on Menu Information
Quantifying the Fingerprintability of Browser Extensions
Web Browsers & Mobile Web Browsers.
Sonal Mahajan, Bailan Li, Pooyan Behnamghader, William G. J. Halfond
RE-Tree: An Efficient Index Structure for Regular Expressions
Objective % Explain concepts used to create websites.
Automated Identification of Cross-browser Issues
Left Click to view the next slide.
Automated Identification of Cross-browser Issues
Web Page Design CIS 300.
Research Lesson 1 URLs & Hyperlinks How to access the World Wide Web.
Research Lesson 1 URLs & Hyperlinks How to access the World Wide Web.
Objective Explain concepts used to create websites.
And Mobile Web Browsers
Internet Vocabulary Beth Felton McKelvey.
And Mobile Web Browsers
Lesson 3 Web Browsers.
ADTEL WEBSITE
Presentation transcript:

X-PERT: Accurate Identification of Cross-Browser Issues in Web Applications Shauvik Roy Choudhary, Mukul Prasad, Alessandro Orso Labs of America Partially supported by

Web Applications 2

3

4 Mozilla Firefox Internet Explorer

5 Mozilla Firefox Internet Explorer

6 Google Chrome

7 Apple Safari

8 Mozilla Firefox

9

10 Mozilla Firefox Internet Explorer

11 Mozilla Firefox Internet Explorer

Web Developer

Browser versions last year Source: StatCounter.com

Browser versions last year with at least 1% market share 150mn visits/month ( StatCounter.com)

Challenges Manual inspection is expensive DOM differs between browsers Mimic end user’s perception Produce readable, effective & actionable reports Engineering Issues… Modern apps have many dynamic screens

Detection of Cross-Browser Issues (XBI) Web Application Model Generation Model Comparison Error Report

Model Definition and Comparison WebDiff [ICSM’10] Roy Choudhary and Orso CrossCheck [ICST’12] Roy Choudhary, Prasad and Orso CrossT [ICSE’11] Mesbah and Prasad Screen Transition Graph Screen Model Screen image + geometry DOM Tree

Study of Real World Cross-Browser Issues (XBIs) Examined 100 websites Found 23 with XBIs XBI Types o Behavioral XBIs o Content XBIs o Structural XBIs 9% 22% 30% 57% Text Visual Random URL Generator

Limitations of existing techniques Miss Structural XBIs Focus on symptoms rather than causes o Duplicate reports o Low Precision

Comprehensive XBI Detection Behavioral XBIs Content XBIs Structural XBIs Text Visual

Example

Example

Example Behavior XBI 9% Behavior XBI 9%

Example Content XBI (Visual) – 30% Content XBI (Visual) – 30% Content XBI (Text) – 22% Content XBI (Text) – 22% Structural XBI 57% Structural XBI 57%

Comprehensive XBI Detection Behavioral XBIs Content XBIs Structural XBIs Text Visual

Comprehensive XBI Detection Behavioral XBIs Content XBIs Structural XBIs Text Visual Behavior check using Graph Isomorphism CrossCheck [ICST’12] Roy Choudhary, Prasad and Orso CrossT [ICSE’11] Mesbah and Prasad

Comprehensive XBI Detection Behavioral XBIs Content XBIs Structural XBIs Text Visual Text Content check using String equality WebDiff [ICSM’10] Roy Choudhary and Orso CrossCheck [ICST’12] Roy Choudhary, Prasad and Orso CrossT [ICSE’11] Mesbah and Prasad

Comprehensive XBI Detection Behavioral XBIs Content XBIs Structural XBIs Text Visual Visual Content check using Image Matching Computer Vision WebDiff [ICSM’10] Roy Choudhary and Orso CrossCheck [ICST’12] Roy Choudhary, Prasad and Orso

Detecting Structural XBIs Intuition: Disruption in the relative arrangement of web page elements leads to Structural XBIs Idea: Abstraction to represent relative arrangement and compare it to expose errors

Alignment Graph (AG) A graph capturing structural relationships between elements (rectangles) on the webpage An AG has: o Containment relationships o Alignment relationships o Attributes above right-align left-align

Step 1: AG Construction

Step 1: AG Construction a. Containment Relationship e contains e’ iff ( x 1 ≤ x 1 ’ ∧ y 1 ≤ y 1 ’ ∧ x 2 ≥ x 2 ’ ∧ y 2 ≥ y 2 ’ ), and if same bounds and XPath(e) ≤ XPath(e’) e e’

Step 1: AG Construction a. Containment Relationship

Step 1: AG Construction b. Alignment Relationship

Step 1: AG Construction c. Attributes Button 1 Button 2 What alignment attributes can we infer? Button 1 is on the left of Button 2 Button 1 and Button 2 have their tops aligned Button 1 and Button 2 have their bottoms aligned leftOf top-align bottom-align y 1 = y 1 ’y 2 = y 2 ’ x 2 < x 1 ’

Step 1: AG Construction c. Attributes Button 1 Button 2 leftOf top-align bottom-align

Step 2: Matching AGs

Text Visual Comprehensive XBI Detection Behavioral XBIs Content XBIs Structural XBIs Text Visual Report Generation Model Generation Behavior Checker Element Matcher Structure Checker Content Checker Model Comparison ✔ ✔ ✔

Empirical Evaluation Tool: X-PERT (Cross-Platform Error ReporTer) Research Questions: RQ1: Can X-PERT find XBIs in real web applications? RQ2: How does X-PERT compare to the state-of-art?

Experimental Protocol v14.0.1v9.0.9 v/s Ran X-PERT on Subject Applications Subjects + = XBIs (Ground Truth) Manual Check Error Reports Manual Check = False Positives & Negatives +

Subjects NameTypeStatesTransitions DOM Nodes (per screen) maxminaverage OrganizerProductivity GrantaBooksPublisher DesignTrustBusiness DivineLifeSpiritual SaiBabaReligious BreakawaySport ConferenceInformation FishermanRestaurant ValleyforgeLodge UniMelbUniversity KonquerorSoftware UBCClub BMVBSMinistry StarWarsMovie K elements Prior Art (6) Example and Survey (4) Random (4)

Effectiveness NAMEXBI BEHAVIORSTRUCTURE CONTENT TOTAL TEXTIMAGE TPFPTPFPTPFPTPFPTPFP Organizer GrantaBooks DesignTrust DivineLife SaiBaba Breakaway Conference Fisherman Valleyforge UniMelb Konqueror UBC BMVBS StarWars TOTAL RQ1: Can X-PERT find XBIs in real web applications? Answer: Yes RQ1: Can X-PERT find XBIs in real web applications? Answer: Yes

Improvement NAMEXBI X-PERTCROSSCHECK PrecFPReclDpPrecFPReclDp Organizer10100%0 080%2 13 GrantaBooks27100%0 096%1100%0 DesignTrust770%3 100 %05%12286%3 DivineLife1165%6 100 %029%2491%3 SaiBaba531%980%07%5380%10 Breakaway1383%277%113%4954%12 Conference7100% Fisherman571%2 100 %044%580%8 Valleyforge360%2 100 % 050%133%0 UniMelb267%1 100 % 07%27100%0 Konqueror0NA6 00%11NA0 UBC0NA0 00%1NA0 BMVBS1NA0 00%2 0 StarWars12100%0 010%9183%3 TOTAL10377% %132%38974%52 X-PERT Precision = 77% (45%  ) Recall = 95% (14%  ) RQ2: How does X-PERT compare to the state-of-art? Answer: X-PERT has better precision and recall RQ2: How does X-PERT compare to the state-of-art? Answer: X-PERT has better precision and recall

Experimental Data & Tool Release o Experiments (Crawl Data + Reports) o Layout testing algorithm implementation

Related Work o Industrial tools Test Suites for Web Browsers – Acid and test262 MS Expression Web, BrowserShots, BrowserStack Browsera, MogoTest, BrowserBite o Research techniques Eaton & Memon [ IJWET’07 ] Dallmeier, Burger, Orth & Zeller [ JSTools’12 ] 51

Contributions Empirical evaluation shows effectiveness New Structural XBI Detection Algorithm Comprehensive Technique to detect XBIs Study of Real World XBIs

Thank You Shauvik Roy Choudhary, Mukul Prasad, Alex Orso