SlideShare ist ein Scribd-Unternehmen logo
1 von 52
Downloaden Sie, um offline zu lesen
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 1/52
A behind­the­scenes look at cross­
browser testing with WebDriver
Adrian Bateman
Microsoft Edge
@adrianba
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 2/52
Customer called; says the site doesn't
work in their browser.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 3/52
And your boss says this project needs to
work in IE8.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 4/52
Trying to understand how your code was
supposed to work.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 5/52
Why? Just why?
window.mobileCheck = function() { var check = false;
(function(a){if(/(android|bbd+|meego).+mobile|avantgo|bada/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|
kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)/|plucker|pocket|psp|series(4|
symbian|treo|up.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1‐6]i|770s|
abac|ac(er|oo|s‐)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|‐m|r |s )|avan|be(ck|ll|nq)|
bl(ac|az)|br(e|v)w|bumb|bw‐(n|u)|c55/|capi|ccwa|cdm‐|cell|chtm|cldc|cmd‐|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc‐s|devi|dica
do(c|p)o|ds(12|‐d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4‐7]0|os|wa|ze)|fetc|fly(‐|_)|g1 u|g560|gene|gf‐5|g‐mo|go(.w|o
un)|haie|hcit|hd‐(m|p|t)|hei‐|hi(pt|ta)|hp( i|ip)|hs‐c|ht(c(‐| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i‐(20|go|ma)|i230|iac( |‐|/
idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |/)|klon|kpt |kwc‐|kyo(c|k)|le(no|xi)|lg( g|/(k|
54|‐[a‐w])|libw|lynx|m1‐w|m3ga|m50/|ma(te|ui|xo)|mc(01|21|ca)|m‐cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(‐| |o
mt(50|p1|v )|mwbp|mywa|n10[0‐2]|n20[2‐3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)‐|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(t
owg1|p800|pan(a|d|t)|pdxg|pg(13|‐([1‐8]|c))|phil|pire|pl(ay|uc)|pn‐2|po(ck|rt|se)|prox|psio|pt‐g|qa‐a|qc(07|12|21|32|60|
i‐)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55/|sa(ge|ma|mm|ms|ny|va)|sc(01|h‐|oo|p‐)|sdk/|se(c(‐|0|1)|47|mc|nd|ri)|sgh‐|s
(‐|m)|sk‐0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h‐|v‐|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|a(gt|lk)|tcl‐|tdg‐|t
tim‐|t‐mo|to(pl|sh)|ts(70|m‐|m3|m5)|tx‐9|up(.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0‐3]|‐v)|vm40|voda|vulc|vx(
61|70|80|81|83|85|98)|w3c(‐| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas‐|your|zeto|zte‐/i.test(a.substr(0,4))) check = tr
(navigator.userAgent||navigator.vendor||window.opera); return check; }
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 6/52
The best "write once, run everywhere"
platform so far
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 7/52
But far from perfect...
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 8/52
Report cross­browser site issues at
WebCompat.com
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 9/52
Can't you just all use WebKit?
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 10/52
The web is so successful and powerful
because it isn't controlled by one group,
project, or organisation.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 11/52
As web developers, we do need to test
in different browsers.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 12/52
"But testing is so expensive!"
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 13/52
Introducing Selenium
Selenium is an open source project providing a suite
of tools to automate web browsers across many
platforms.
http://seleniumhq.org/
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 14/52
Selenium WebDriver
A remote control interface to instruct the behaviour
of web browsers.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 15/52
The WebDriver specification is
standardised by a group at W3C.
http://www.w3.org/testing/browser/
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 16/52
By many of the largest browser vendors,
who are making it a native part of their
browser.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 17/52
And by some of the largest sites on the
web, who use it for their testing.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 18/52
Simple code example
IWebDriver driver = new XXXDriver(); // e.g. FirefoxDriver
// Navigate to start page
driver.Navigate().GoToUrl("http://www.bing.com/");
// Clear input box and type search
driver.FindElement(By.Id("sb_form_q")).Clear();
driver.FindElement(By.Id("sb_form_q")).SendKeys("dogs");
// Click search button
driver.FindElement(By.Id("sb_form_go")).Click();
// Find the result we want and click it
driver.FindElement(By.LinkText("Images")).Click();
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 19/52
Simple. Just write code.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 20/52
Installing the Selenium IDE
http://docs.seleniumhq.org/download/
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 21/52
Selenium IDE
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 22/52
Recording a test
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 23/52
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 24/52
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 25/52
Replaying the test
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 26/52
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 27/52
Exporting the test
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 28/52
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 29/52
What about other browsers?
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 30/52
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 31/52
Support for WebDriver in Microsoft Edge
Release version of Web Driver ("Current Branch")
 
Preview version of Web Driver (Windows Insiders)
http://aka.ms/webdriver
http://aka.ms/webdriver­preview
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 32/52
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 33/52
Strategies for testing
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 34/52
Comprehensive example
[Test]
public void AsALoggedUserIamAbleToAdd10ProductsAndSubmitOrder()
{
    var signInPage = InitialPage.NavigateTo<SignInPage>();
    signInPage.EnterEmail("jd@test.com");
    signInPage.EnterPassword("1qaz");
    var page = signInPage.ClickLogin();
    page.Should().BeOfType<HomePage>();
    var homePage = page.As<HomePage>();
    var targetDetailsPage = homePage.ClickFirstProduct();
    targetDetailsPage.Title.Should().Be("Product Details");
    var detailsPage = targetDetailsPage.As<ProductDetailsPage>();
    detailsPage.SetQuantity(10);
    detailsPage.Total.Should().Be(150);
    var targetDeliveryDetailsPage = detailsPage.ClickOrderNow();
    targetDeliveryDetailsPage.Title.Should().Be("Product Delivery");
    targetDeliveryDetailsPage.Should().BeOfType<PhysicalDeliveryDetailsPage>();
    var deliveryDetailsPage = targetDeliveryDetailsPage.
      As<PhysicalDeliveryDetailsPage>();
    deliveryDetailsPage.FillForm(new DeliveryPhysicalModel()
    {
        CompanyName = "Contoso",
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 35/52
WebDriver Architecture
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 36/52
WebDriver Architecture
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 37/52
New session
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 38/52
Navigate
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 39/52
Finding an element
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 40/52
Finding an element
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 41/52
Send keys
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 42/52
Finding a link with text
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 43/52
Clicking a link
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 44/52
Ending a session
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 45/52
Shutdown
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 46/52
Testing in the cloud
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 47/52
Getting stuff done
The more we worked on WebDriver we realised that
it isn't just for testing.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 48/52
Using WebDriver to help with bug triage
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 49/52
Here's the deal
We're going to continue working hard to make
browsers more interoperable.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 50/52
Your role
Find a testing framework that you like and use it.
Keep us honest. Tell us when things are broken.
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 51/52
Microsoft Edge support for WebDriver
WebDriver status page:
http://aka.ms/webdriver­status
10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver
file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 52/52
Thank you!
or
Slides:
@MSEdgeDev @adrianba
http://aka.ms/webdriver­fowa

Weitere ähnliche Inhalte

Ähnlich wie A behind the-scenes look at cross-browser testing with web driver, Adrian Bateman

2011 08-24 mobile web app
2011 08-24  mobile web app2011 08-24  mobile web app
2011 08-24 mobile web appSholto Maud
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Web browser and Security Threats
Web browser and Security ThreatsWeb browser and Security Threats
Web browser and Security ThreatsHTS Hosting
 
Opera and the Open Web platform
Opera and the Open Web platformOpera and the Open Web platform
Opera and the Open Web platformAndreas Bovens
 
Return Of The Browser Wars Ajax World West2007
Return Of The Browser Wars Ajax World West2007Return Of The Browser Wars Ajax World West2007
Return Of The Browser Wars Ajax World West2007John Eckman
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Responsive Images and Video
Responsive Images and VideoResponsive Images and Video
Responsive Images and VideoJason Grigsby
 
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0Amir Zmora
 
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdfFront-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdfApplitools
 
Measuring web performance
Measuring web performanceMeasuring web performance
Measuring web performancePatrick Meenan
 
Your Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at ScaleYour Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at ScaleSauce Labs
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Http/2 - What's it all about?
Http/2  - What's it all about?Http/2  - What's it all about?
Http/2 - What's it all about?Andy Davies
 
Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...
Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...
Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...camp_drupal_ua
 
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)Nicholas Zakas
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)Nicholas Zakas
 
FEDM Meetup: Introducing Mojito
FEDM Meetup: Introducing MojitoFEDM Meetup: Introducing Mojito
FEDM Meetup: Introducing MojitoCaridy Patino
 

Ähnlich wie A behind the-scenes look at cross-browser testing with web driver, Adrian Bateman (20)

2011 08-24 mobile web app
2011 08-24  mobile web app2011 08-24  mobile web app
2011 08-24 mobile web app
 
Ch21 system administration
Ch21 system administration Ch21 system administration
Ch21 system administration
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
 
Web browser and Security Threats
Web browser and Security ThreatsWeb browser and Security Threats
Web browser and Security Threats
 
Opera and the Open Web platform
Opera and the Open Web platformOpera and the Open Web platform
Opera and the Open Web platform
 
Return Of The Browser Wars Ajax World West2007
Return Of The Browser Wars Ajax World West2007Return Of The Browser Wars Ajax World West2007
Return Of The Browser Wars Ajax World West2007
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
 
Browser Based Performance Testing and Tuning
Browser Based Performance Testing and TuningBrowser Based Performance Testing and Tuning
Browser Based Performance Testing and Tuning
 
Responsive Images and Video
Responsive Images and VideoResponsive Images and Video
Responsive Images and Video
 
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
WebRTC Standards & Implementation Q&A - getDisplayMedia 1.0
 
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdfFront-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
Front-End Test Fest Keynote: The State of the Union for Front End Testing.pdf
 
Measuring web performance
Measuring web performanceMeasuring web performance
Measuring web performance
 
Your Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at ScaleYour Framework for Success: introduction to JavaScript Testing at Scale
Your Framework for Success: introduction to JavaScript Testing at Scale
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design
 
Http/2 - What's it all about?
Http/2  - What's it all about?Http/2  - What's it all about?
Http/2 - What's it all about?
 
Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...
Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...
Vadim Mirgorod.Best practices for cross browser compatibility of drupal websi...
 
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
 
Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
 
Browsers
BrowsersBrowsers
Browsers
 
FEDM Meetup: Introducing Mojito
FEDM Meetup: Introducing MojitoFEDM Meetup: Introducing Mojito
FEDM Meetup: Introducing Mojito
 

Mehr von Future Insights

The Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'SheaThe Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'SheaFuture Insights
 
Pretty pictures - Brandon Satrom
Pretty pictures - Brandon SatromPretty pictures - Brandon Satrom
Pretty pictures - Brandon SatromFuture Insights
 
Putting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-GuerraPutting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-GuerraFuture Insights
 
Surviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDMSurviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDMFuture Insights
 
Exploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny TongExploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny TongFuture Insights
 
A Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher MurphyA Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher MurphyFuture Insights
 
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff JahnHorizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff JahnFuture Insights
 
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...Future Insights
 
Front End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon DeanerFront End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon DeanerFuture Insights
 
Structuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean LorenzStructuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean LorenzFuture Insights
 
Cinematic UX, Brad Weaver
Cinematic UX, Brad WeaverCinematic UX, Brad Weaver
Cinematic UX, Brad WeaverFuture Insights
 
The Future is Modular, Jonathan Snook
The Future is Modular, Jonathan SnookThe Future is Modular, Jonathan Snook
The Future is Modular, Jonathan SnookFuture Insights
 
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie RewisDesigning an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie RewisFuture Insights
 
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison AsuncionAccessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison AsuncionFuture Insights
 
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...Future Insights
 
Designing for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew ZusmanDesigning for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew ZusmanFuture Insights
 
Beyond Measure, Erika Hall
Beyond Measure, Erika HallBeyond Measure, Erika Hall
Beyond Measure, Erika HallFuture Insights
 
Real Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur ThorleifssonReal Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur ThorleifssonFuture Insights
 
Ok Computer. Peter Gasston
Ok Computer. Peter GasstonOk Computer. Peter Gasston
Ok Computer. Peter GasstonFuture Insights
 
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi KayaDigital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi KayaFuture Insights
 

Mehr von Future Insights (20)

The Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'SheaThe Human Body in the IoT. Tim Cannon + Ryan O'Shea
The Human Body in the IoT. Tim Cannon + Ryan O'Shea
 
Pretty pictures - Brandon Satrom
Pretty pictures - Brandon SatromPretty pictures - Brandon Satrom
Pretty pictures - Brandon Satrom
 
Putting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-GuerraPutting real time into practice - Saul Diez-Guerra
Putting real time into practice - Saul Diez-Guerra
 
Surviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDMSurviving the enterprise storm - @RianVDM
Surviving the enterprise storm - @RianVDM
 
Exploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny TongExploring Open Date with BigQuery: Jenny Tong
Exploring Open Date with BigQuery: Jenny Tong
 
A Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher MurphyA Universal Theory of Everything, Christopher Murphy
A Universal Theory of Everything, Christopher Murphy
 
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff JahnHorizon Interactive Awards, Mike Sauce & Jeff Jahn
Horizon Interactive Awards, Mike Sauce & Jeff Jahn
 
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
Reading Your Users’ Minds: Empiricism, Design, and Human Behavior, Shane F. B...
 
Front End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon DeanerFront End Development Transformation at Scale, Damon Deaner
Front End Development Transformation at Scale, Damon Deaner
 
Structuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean LorenzStructuring Data from Unstructured Things. Sean Lorenz
Structuring Data from Unstructured Things. Sean Lorenz
 
Cinematic UX, Brad Weaver
Cinematic UX, Brad WeaverCinematic UX, Brad Weaver
Cinematic UX, Brad Weaver
 
The Future is Modular, Jonathan Snook
The Future is Modular, Jonathan SnookThe Future is Modular, Jonathan Snook
The Future is Modular, Jonathan Snook
 
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie RewisDesigning an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
 
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison AsuncionAccessibility Is More Than What Lies In The Code, Jennison Asuncion
Accessibility Is More Than What Lies In The Code, Jennison Asuncion
 
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
Sunny with a Chance of Innovation: A How-To for Product Managers and Designer...
 
Designing for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew ZusmanDesigning for Dyslexia, Andrew Zusman
Designing for Dyslexia, Andrew Zusman
 
Beyond Measure, Erika Hall
Beyond Measure, Erika HallBeyond Measure, Erika Hall
Beyond Measure, Erika Hall
 
Real Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur ThorleifssonReal Artists Ship, Haraldur Thorleifsson
Real Artists Ship, Haraldur Thorleifsson
 
Ok Computer. Peter Gasston
Ok Computer. Peter GasstonOk Computer. Peter Gasston
Ok Computer. Peter Gasston
 
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi KayaDigital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
Digital Manuscripts Toolkit, using IIIF and JavaScript. Monica Messaggi Kaya
 

Kürzlich hochgeladen

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 

Kürzlich hochgeladen (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

A behind the-scenes look at cross-browser testing with web driver, Adrian Bateman

  • 1. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 1/52 A behind­the­scenes look at cross­ browser testing with WebDriver Adrian Bateman Microsoft Edge @adrianba
  • 2. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 2/52 Customer called; says the site doesn't work in their browser.
  • 3. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 3/52 And your boss says this project needs to work in IE8.
  • 4. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 4/52 Trying to understand how your code was supposed to work.
  • 5. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 5/52 Why? Just why? window.mobileCheck = function() { var check = false; (function(a){if(/(android|bbd+|meego).+mobile|avantgo|bada/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone| kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)/|plucker|pocket|psp|series(4| symbian|treo|up.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1‐6]i|770s| abac|ac(er|oo|s‐)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|‐m|r |s )|avan|be(ck|ll|nq)| bl(ac|az)|br(e|v)w|bumb|bw‐(n|u)|c55/|capi|ccwa|cdm‐|cell|chtm|cldc|cmd‐|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc‐s|devi|dica do(c|p)o|ds(12|‐d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4‐7]0|os|wa|ze)|fetc|fly(‐|_)|g1 u|g560|gene|gf‐5|g‐mo|go(.w|o un)|haie|hcit|hd‐(m|p|t)|hei‐|hi(pt|ta)|hp( i|ip)|hs‐c|ht(c(‐| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i‐(20|go|ma)|i230|iac( |‐|/ idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |/)|klon|kpt |kwc‐|kyo(c|k)|le(no|xi)|lg( g|/(k| 54|‐[a‐w])|libw|lynx|m1‐w|m3ga|m50/|ma(te|ui|xo)|mc(01|21|ca)|m‐cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(‐| |o mt(50|p1|v )|mwbp|mywa|n10[0‐2]|n20[2‐3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)‐|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(t owg1|p800|pan(a|d|t)|pdxg|pg(13|‐([1‐8]|c))|phil|pire|pl(ay|uc)|pn‐2|po(ck|rt|se)|prox|psio|pt‐g|qa‐a|qc(07|12|21|32|60| i‐)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55/|sa(ge|ma|mm|ms|ny|va)|sc(01|h‐|oo|p‐)|sdk/|se(c(‐|0|1)|47|mc|nd|ri)|sgh‐|s (‐|m)|sk‐0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h‐|v‐|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|a(gt|lk)|tcl‐|tdg‐|t tim‐|t‐mo|to(pl|sh)|ts(70|m‐|m3|m5)|tx‐9|up(.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0‐3]|‐v)|vm40|voda|vulc|vx( 61|70|80|81|83|85|98)|w3c(‐| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas‐|your|zeto|zte‐/i.test(a.substr(0,4))) check = tr (navigator.userAgent||navigator.vendor||window.opera); return check; }
  • 6. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 6/52 The best "write once, run everywhere" platform so far
  • 7. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 7/52 But far from perfect...
  • 8. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 8/52 Report cross­browser site issues at WebCompat.com
  • 9. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 9/52 Can't you just all use WebKit?
  • 10. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 10/52 The web is so successful and powerful because it isn't controlled by one group, project, or organisation.
  • 11. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 11/52 As web developers, we do need to test in different browsers.
  • 12. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 12/52 "But testing is so expensive!"
  • 13. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 13/52 Introducing Selenium Selenium is an open source project providing a suite of tools to automate web browsers across many platforms. http://seleniumhq.org/
  • 14. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 14/52 Selenium WebDriver A remote control interface to instruct the behaviour of web browsers.
  • 15. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 15/52 The WebDriver specification is standardised by a group at W3C. http://www.w3.org/testing/browser/
  • 16. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 16/52 By many of the largest browser vendors, who are making it a native part of their browser.
  • 17. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 17/52 And by some of the largest sites on the web, who use it for their testing.
  • 18. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 18/52 Simple code example IWebDriver driver = new XXXDriver(); // e.g. FirefoxDriver // Navigate to start page driver.Navigate().GoToUrl("http://www.bing.com/"); // Clear input box and type search driver.FindElement(By.Id("sb_form_q")).Clear(); driver.FindElement(By.Id("sb_form_q")).SendKeys("dogs"); // Click search button driver.FindElement(By.Id("sb_form_go")).Click(); // Find the result we want and click it driver.FindElement(By.LinkText("Images")).Click();
  • 19. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 19/52 Simple. Just write code.
  • 20. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 20/52 Installing the Selenium IDE http://docs.seleniumhq.org/download/
  • 21. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 21/52 Selenium IDE
  • 22. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 22/52 Recording a test
  • 23. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 23/52
  • 24. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 24/52
  • 25. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 25/52 Replaying the test
  • 26. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 26/52
  • 27. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 27/52 Exporting the test
  • 28. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 28/52
  • 29. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 29/52 What about other browsers?
  • 30. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 30/52
  • 31. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 31/52 Support for WebDriver in Microsoft Edge Release version of Web Driver ("Current Branch")   Preview version of Web Driver (Windows Insiders) http://aka.ms/webdriver http://aka.ms/webdriver­preview
  • 32. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 32/52
  • 33. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 33/52 Strategies for testing
  • 34. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 34/52 Comprehensive example [Test] public void AsALoggedUserIamAbleToAdd10ProductsAndSubmitOrder() {     var signInPage = InitialPage.NavigateTo<SignInPage>();     signInPage.EnterEmail("jd@test.com");     signInPage.EnterPassword("1qaz");     var page = signInPage.ClickLogin();     page.Should().BeOfType<HomePage>();     var homePage = page.As<HomePage>();     var targetDetailsPage = homePage.ClickFirstProduct();     targetDetailsPage.Title.Should().Be("Product Details");     var detailsPage = targetDetailsPage.As<ProductDetailsPage>();     detailsPage.SetQuantity(10);     detailsPage.Total.Should().Be(150);     var targetDeliveryDetailsPage = detailsPage.ClickOrderNow();     targetDeliveryDetailsPage.Title.Should().Be("Product Delivery");     targetDeliveryDetailsPage.Should().BeOfType<PhysicalDeliveryDetailsPage>();     var deliveryDetailsPage = targetDeliveryDetailsPage.       As<PhysicalDeliveryDetailsPage>();     deliveryDetailsPage.FillForm(new DeliveryPhysicalModel()     {         CompanyName = "Contoso",
  • 35. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 35/52 WebDriver Architecture
  • 36. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 36/52 WebDriver Architecture
  • 37. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 37/52 New session
  • 38. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 38/52 Navigate
  • 39. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 39/52 Finding an element
  • 40. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 40/52 Finding an element
  • 41. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 41/52 Send keys
  • 42. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 42/52 Finding a link with text
  • 43. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 43/52 Clicking a link
  • 44. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 44/52 Ending a session
  • 45. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 45/52 Shutdown
  • 46. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 46/52 Testing in the cloud
  • 47. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 47/52 Getting stuff done The more we worked on WebDriver we realised that it isn't just for testing.
  • 48. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 48/52 Using WebDriver to help with bug triage
  • 49. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 49/52 Here's the deal We're going to continue working hard to make browsers more interoperable.
  • 50. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 50/52 Your role Find a testing framework that you like and use it. Keep us honest. Tell us when things are broken.
  • 51. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 51/52 Microsoft Edge support for WebDriver WebDriver status page: http://aka.ms/webdriver­status
  • 52. 10/7/2015 A behind-the-scenes look at cross-browser testing with WebDriver file:///Users/thoule/Desktop/A%20behind-the-scenes%20look%20at%20cross-browser%20testing%20with%20WebDriver.html#/ 52/52 Thank you! or Slides: @MSEdgeDev @adrianba http://aka.ms/webdriver­fowa