CrossCheck: Combining Crawling and Differencing to Better Detect Cross-browser Incompatibilities in Web Applications Shauvik Roy Choudhary, Mukul Prasad,

Slides:



Advertisements
Similar presentations
Applications of one-class classification
Advertisements

PhishZoo: Detecting Phishing Websites By Looking at Them
Shauvik Roy Choudhary, Alex Orso Georgia Institute of Tech nology.
Shauvik Roy Choudhary, Husayn Versee, and Alessandro Orso Georgia Institute of Technology Partially supported by the NSF awards CCF and CCF
CMo: When Less Is More Yevgen Borodin Jalal Mahmud I.V. Ramakrishnan Context-Directed Browsing for Mobiles.
Shauvik Roy Choudhary, Dan Zhao, Husayn Versee, and Alessandro Orso Georgia Institute of Technology.
Data Mining Methodology 1. Why have a Methodology  Don’t want to learn things that aren’t true May not represent any underlying reality ○ Spurious correlation.
Browserbite: Accurate Cross-Browser Testing via Machine Learning Over Image Features Nataliia Semenenko*, Tõnis Saar** and Marlon Dumas*
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
DSPIN: Detecting Automatically Spun Content on the Web Qing Zhang, David Y. Wang, Geoffrey M. Voelker University of California, San Diego 1.
X-PERT: Accurate Identification of Cross-Browser Issues in Web Applications Shauvik Roy Choudhary, Mukul Prasad, Alessandro Orso Labs of America Partially.
Automated Identification of Parameter Mismatches in Web Applications William G.J. Halfond and Alessandro Orso Georgia Institute of Technology.
1 Learning to Detect Objects in Images via a Sparse, Part-Based Representation S. Agarwal, A. Awan and D. Roth IEEE Transactions on Pattern Analysis and.
Page-level Template Detection via Isotonic Smoothing Deepayan ChakrabartiYahoo! Research Ravi KumarYahoo! Research Kunal PuneraUniv. of Texas at Austin.
Inspection Policies for Diagnostic Classification Brandon Blakeley Advisers: Dr. MK Jeong and Dr. Endre Boros.
Predicting Matchability - CVPR 2014 Paper -
Track, Trace & Control Solutions © 2010 Microscan Systems, Inc. Choosing the Right Machine Vision Applications Part 2 of a 3-part webinar series: Introduction.
Finding Bugs in Web Applications Using Dynamic Test Generation and Explicit-State Model Checking -Shreyas Ravindra.
Test Automation For Web-Based Applications Portnov Computer School Presenter: Ellie Skobel.
Root Cause Analysis for HTML Presentation Failures using Search-Based Techniques Sonal Mahajan, Bailan Li, William G.J. Halfond Department of Computer.
Intrusion Detection Jie Lin. Outline Introduction A Frame for Intrusion Detection System Intrusion Detection Techniques Ideas for Improving Intrusion.
Samuvel Johnson nd MCA B. Contents  Introduction to Real-time systems  Two main types of system  Testing real-time software  Difficulties.
Title Extraction from Bodies of HTML Documents and its Application to Web Page Retrieval Microsoft Research Asia Yunhua Hu, Guomao Xin, Ruihua Song, Guoping.
Visual-Similarity-Based Phishing Detection Eric Medvet, Engin Kirda, Christopher Kruegel SecureComm 2008 Sep.
Platform Support for Developing Analysis and Testing Plugins Shauvik Roy Choudhary with Jeremy Duvall, Wei Jin, Dan Zhao, Alessandro Orso School of Computer.
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.
Working with Objects Creating a Dynamic Web Page.
CITS1231 Web Technologies JavaScript and Document Object Model.
Cloak and Dagger: Dynamics of Web Search Cloaking David Y. Wang, Stefan Savage, and Geoffrey M. Voelker University of California, San Diego 左昌國 Seminar.
Bug Localization with Machine Learning Techniques Wujie Zheng
WebVizOr: A Fault Detection Visualization Tool for Web Applications Goal: Illustrate and evaluate the uses of WebVizOr, a new tool to aid web application.
Team C November 30, 2012 Major Document 5.  Create a document in a Microsoft Office.  You can create a document in either Microsoft Word, Microsoft.
Presenter: Shanshan Lu 03/04/2010
DHTML: Working with Objects Creating a Dynamic Web Page.
Testing and Maintaining a Web Site Presented by: Angelo Russo Student number: 10 Acknowledgement: This information is primarily gathered from: – Web Design,
Feature Detection in Ajax-enabled Web Applications Natalia Negara Nikolaos Tsantalis Eleni Stroulia 1 17th European Conference on Software Maintenance.
1 Pattern Recognition Pattern recognition is: 1. A research area in which patterns in data are found, recognized, discovered, …whatever. 2. A catchall.
X-PERT A Web Application Testing Tool for Cross-Browser Inconsistency Detection Shauvik Roy Choudhary, Mukul Prasad, Alessandro Orso Labs of America.
1 Collaborative Filtering & Content-Based Recommending CS 290N. T. Yang Slides based on R. Mooney at UT Austin.
1Ellen L. Walker Category Recognition Associating information extracted from images with categories (classes) of objects Requires prior knowledge about.
Package & Deploy. OBJECTIVES Package Deploy Way to package.
Learning to Detect Faces A Large-Scale Application of Machine Learning (This material is not in the text: for further information see the paper by P.
Image Classification over Visual Tree Jianping Fan Dept of Computer Science UNC-Charlotte, NC
GENDER AND AGE RECOGNITION FOR VIDEO ANALYTICS SOLUTION PRESENTED BY: SUBHASH REDDY JOLAPURAM.
1 Approximate XML Query Answers Presenter: Hongyu Guo Authors: N. polyzotis, M. Garofalakis, Y. Ioannidis.
Detecting Sequences and Cycles of Web Pages Narayan L. Bhamidipati and Sankar K. Pal Indian Statistical Institute Kolkata.
Accessing the Hidden Web Hidden Web vs. Surface Web Surface Web (Static or Visible Web): Accessible to the conventional search engines via hyperlinks.
References: [1] E. Tognoli, J. Lagarde, G.C. DeGuzman, J.A.S. Kelso (2006). The phi complex as a neuromarker of human social coordination. PNAS 104:
Don’t Follow me : Spam Detection in Twitter January 12, 2011 In-seok An SNU Internet Database Lab. Alex Hai Wang The Pensylvania State University International.
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.
Understanding Web-Based Digital Media Production Methods, Software, and Hardware Objective
A New Generation of Artificial Neural Networks.  Support Vector Machines (SVM) appeared in the early nineties in the COLT92 ACM Conference.  SVM have.
Unveiling Zeus Automated Classification of Malware Samples Abedelaziz Mohaisen Omar Alrawi Verisign Inc, VA, USA Verisign Labs, VA, USA
Learn Selenium Online – Selenium Automation Testing.
Best Way to Learn Selenium Course in Online. Looking to learn best testing tool? If your preference is selenium testing then your choice is perfect. The.
C.P. Patidar Meena Sharma Varsha Sharda
Selenium HP Web Test Tool Training
Detecting and Localizing Internationalization
Julián ALARTE DAVID INSA JOSEP SILVA
Based on Menu Information
Chapter 8 – Software Testing
Automated Pattern Based Mobile Testing
Automated Identification of Cross-browser Issues
Students: Meiling He Advisor: Prof. Brain Armstrong
Advanced Techniques for Automatic Web Filtering
Computers & Programming Languages
Advanced Techniques for Automatic Web Filtering
Automated Identification of Cross-browser Issues
AI Builder for Power Platform
Presentation transcript:

CrossCheck: Combining Crawling and Differencing to Better Detect Cross-browser Incompatibilities in Web Applications Shauvik Roy Choudhary, Mukul Prasad, Alex Orso Georgia Institute of Technology Fujitsu Labs of America

Move to the Web 2

Multitude of Browsing Environments 3

Georgia Tech Website Mozilla Firefox Internet Explorer 4

IEEE TSE Website 5

Granta Books Website 6 Internet Explorer Mozilla Firefox

Mimic end user’s perception Produce human Consumable reports Manual inspection is expensive Need automated classification ? Modern apps have many dynamic screens DOM differs between browsers 7 Ignore variable elements on webpage 15 Sep :15pm Work with browser security controls

Running Example 8

9

10

Running Example 11

Running Example 12

Running Example 13

Running Example 14 Missing screen transitions 1

Running Example 15 Missing shadow 2 Wrong count of items 3

Running Example 16

Running Example 17

A Tale of Two Techniques 18 WebDiff Screen-level differences (graph matching, computer vision) CrossT Trace-level differences (graph isomorphism)

Goal: To better detect both functional and visual XBIs by combining the two complementary techniques High level view of the approach Web Application CrossCheck Cross-browser Error Report 1. Model Generation 2. Model Comparison 3. Report Generation 19

Screen Transition Graph 1. Model Generation Web Application DOM Tree Screen image + geometries Ajax Crawler (Crawljax) Screen Model Screen image + geometries DOM Tree 20

2a. Trace Level Comparison STG Match Screen Transition Graphs from two browsers using graph isomorphism (both screens and transitions) Output: Pairs of matching screens  Perform Screen-level comparison Unmatched Screens  Report Trace-level issue Unmatched Transitions  Report Trace-level issue STG 21

2a. Trace Level Comparison S0S0 S1S1 S2S2 S1’S1’S2’S2’ 22 S0’S0’

2b. Screen Level Comparison Compare DOMs to find matching elements Use MatchIndex f (xPath, coords, zindex, visibility etc. ) Output: Pairs of matched DOM nodes (corr. screen elements)  for visual comparison Unmatched DOM nodes if any Given a pair of matched screens (from prev. step) 23 Match DOMs Corr. Screen elements

2b. Screen Level Comparison Like-colored (matched) screen-elements compared through visual comparison 24

Machine Learning based Classifier Machine Learning based Classifier YES NO Visual Comparison Extract Features Features Used: Size difference Position difference/ displacement Absolute size Text value difference (based on DOM)  2 –Image distance (between images of 2 elements)  ? Do these screen elements look the same ? 25

Machine Learning based Classifier Training the classifier (offline – single time) Feature Extraction False True Screens with (known) Cross-Browser Differences Set of screen-element comparison instances 26

3. Report Generation (Clustering) 27

Empirical Evaluation RQ1 (Effectiveness) Can CrossCheck identify different kinds of CBDs in real-world web applications and correlate them to identify XBIs? RQ2 (Improvement) How effective is CrossCheck when compared to CrossT and WebDiff? 28

Subjects: Experimental Setup Web AppURLType STDOM Nodes minmaxavg Restaurant Information Organizer Productivity GrantaBooks Publisher DesignTrust Business DivineLife Spiritual SaiBaba Religious Breakaway Sport

Procedure: 1.Used latest versions of Firefox (v7.0.1) and Internet Explorer (v9.0.3) 2.Ran CrossCheck on the subjects to perform the various phases of the technique 3.Manually checked results for false positives and negatives Experimental Setup 30

RQ1: Effectiveness ApplicationTracePositionSizeVisibilityTextAppearanceCBDsXBIs Restaurant Organizer GrantaBooks DesignTrust DivineLife SaiBaba Breakaway TOTAL

RQ1: Effectiveness ApplicationTracePositionSizeVisibilityTextAppearanceCBDsXBIs Restaurant Organizer GrantaBooks DesignTrust DivineLife SaiBaba Breakaway TOTAL

RQ2: Improvement Application CrossCheck CrossTWebDiff Rep.Conf.TraceScreenRep.Conf. Rep.Conf. Restaurant Organizer GrantaBooks DesignTrust DivineLife SaiBaba Breakaway TOTAL

RQ2: Improvement Application CrossCheck CrossTWebDiff Rep.Conf.TraceScreenRep.Conf. Rep.Conf. Restaurant Organizer GrantaBooks DesignTrust DivineLife SaiBaba Breakaway TOTAL

Empirical Evaluation ApplicationCrossCheckCrossTWebDiff Rep.Conf.TraceScreenRep.Conf. Rep.Conf. Restaurant Organizer GrantaBooks DesignTrust DivineLife SaiBaba Breakaway TOTAL CrossCheck detected more differences than WebDiff (62% more) and CrossT (84% more) CrossCheck reported fewer false positives than WebDiff (15% less) and CrossT (34% less)

Future Work Improved computer vision algorithms to reduce false positives and diminish noise sources 36 Perform user studies for feedback from real web developers to further improve our technique Study behavioral equivalence across different platforms, especially mobile

Related Work Industrial tools BrowserShots, Adobe Browser Lab, MS Expression Web Test Suites for Web Browsers – Acid and test262 Eaton & Memon [IJWET’07] Precursors to CrossCheck WebDiff: Roy Choudhary, Versee and Orso [ICSM’10] CrossT: Mesbah and Prasad [ICSE’11] 37

Contributions of CrossCheck 38 Machine-learning based automated detection Detects both visual and trace-level XBIs Empirical evaluation shows effectiveness Cluster CBDs into meaningful XBIs