Browser Compatibility Testing Risk Analysis Learn the art of trimming browsers from a browser compatibility test list by knowing your users, understanding how the browser works, OS & browser facts versus misconceptions, and grouping browsers by common component versions to remove redundancy. Presented By: Brent Strange Agenda • • • • • • • • • • Browser History Who are your users? Understand The Browser Understand how browsers differ Using the Browser Cheat Sheet Your turn… A Challenge Browser fact vs. fiction So what is a browser compatibility defect? Manage Risk Questions The History Browser Statistics Browser Version Market Share (01/2008) 4% 3% 1% 1% 16% Internet Explorer 7.0 43% Internet Explorer 6.0 Firefox 2.0 32% Safari 3.0 Other Safari 41 Opera 9.x Source: marketshare.com The Task At Hand I want you to test our site with FireFox 1.0 – 2.0 by the end of day! ..b.. b.. but that’s over 20 released versions… How Do You Tackle Testing This? The Browser Dissected Layout Engine Shell Features JavaScript Engine Plugins Component: Layout Engine Layout Engine HTML CSS DOM Component: Shell Features Shell Features HTTP Security Cache Component: JavaScript Engine JavaScript Engine DOM Interaction Detect User Actions OS Ties Component: Plugins Plugins Flash Java ActiveX Component Differences Internet Explorer •Layout Engine: Trident •JavaScript Engine: JScript FireFox •Layout Engine: Gecko •JavaScript Engine: SpiderMonkey Netscape •Layout Engine: Gecko •JavaScript Engine: SpiderMonkey Opera •Layout Engine: Presto •JavaScript Engine: linear_b, futhark Safari •Layout Engine: KHTML •JavaScript Engine: WebKit (Webcore & JavaScriptCore) The Browser Cheat Sheet Removing Browser Redundancy FireFox 2.0.0.5 FireFox 2.0.0.11 FireFox 2.0.0 FireFox 2.0.0.11 Removing OS Redundancy IE 6 IE 6 Win2000 WinXP IE 6 Ser 2003 IE 6 WinXP Determine the Test Matrix Understand the Components JavaScript? Plugins? Rendering? Shell? Analyze the Risk Cheat Sheet Group and/or Discard Test Back to: The Task At Hand I want you to test our site with FireFox 1.0 – 2.0 by the end of day! End of day?! Hah... I’ll have it done in 2 hours. Challenge: One small change? I only changed 1 line of JavaScript code Response.Write( Math.Round(3.1415) ); to Response.Write( Math.PI ); Determine the Test Matrix Understand the Change JavaScript, Layout Analyze the Risk Cheat Sheet Group and/or Discard Test Browser Fact vs. Fiction Find Browser Compatibility Defects So…what is a browser compatibility defect? Manage Risk • Set Expectations o Define Browser Assumptions o Define OS Assumptions • Define the browser list to be tested • Defend your strategy with facts Questions About Download this presentation and handouts at: http://QAInsight.net