Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Loading time testing of web games – set-up, execution and visualization of results @ TestingStage '18

Loading time testing of web games – set-up, execution and visualization of results @ TestingStage '18

Slides from my talk at TestingStage '18 which is biggest testing conference in Ukraine.

Andrejs Kalnačs

April 13, 2018
Tweet

More Decks by Andrejs Kalnačs

Other Decks in Programming

Transcript

  1. Loading time testing of web games – set-up, execution and

    visualization of results Andrejs Kalnačs 13th April 2018
  2. who am i 2 Lead Software Developer in Test at

    Evolution Gaming 10 years of industry experience in QA Evolution Gaming, Nokia, Accenture, Nokia Siemens Networks Java, Groovy, Bash Riga Testing Automation Club meet-ups co- organiser @TesterFromRiga
  3. Evolution Gaming 3 The World leader in live dealer gaming

    3 development locations – Riga, Amsterdam, Tallinn
  4. Use case of Evolution Gaming 9 20+ different games 3

    test environments 2 browser cache states
  5. Front end performance tests 11 Front end loading time tests

    Front end action timing tests Front end frame rate tests
  6. Custom metric collection from client 14 Loading time Intermediate loading

    metrics Navigation Timing Metrics Proprietary API Log server
  7. OWASP ZAP proxy 16 HTTPS support WebSocket support API Open

    Source Cross platform: Linux, Mac, Windows HAR
  8. Bandwidth throttling 19 Virtual or physical machine with two network

    interfaces Linux tc tcconfig tcset --device eth1 --rate 800k --direction outgoing tcset --device eth0 --rate 800k --direction incoming
  9. Bandwidth throttling 20 Virtual or physical machine with two network

    interfaces Linux tc tcconfig tcset --device eth1 --rate 800k --delay 40ms \ --direction outgoing tcset --device eth0 --rate 800k --delay 40ms \ --direction incoming
  10. Local desktop & device farm 22 Support, maintenance & update

    of infrastructure, hardware & software Stability of devices Complexity of iOS testing automation
  11. Execution from CI server 23 Selenium Hub Appium iOS node

    Appium Android node Proxy Bandwidth throttler Docker host
  12. Why? 26 Show stakeholders how good or bad user experience

    is Compare your products Understand how new feature is affecting performance Visualise regression
  13. 29

  14. 30

  15. Reference 35 https://github.com/andrejska/simplest-test-dashboard https://github.com/evolution-gaming/js-benchmark Related talks: Adding Performance Assertion to

    Standard Functional Testing (Marcel Verkerk, The Selenium Conf 2017) Web App Performance Testing Using WebDriver (Michael Kleptikov, The Selenium Conf 2012)