Make Your UI Tests Resilient with the Next Generation of - - PDF document

make your ui tests resilient with the next generation of
SMART_READER_LITE
LIVE PREVIEW

Make Your UI Tests Resilient with the Next Generation of - - PDF document

T14 Test Automation Thursday, October 3rd, 2019 1:30 PM Make Your UI Tests Resilient with the Next Generation of Frameworks


slide-1
SLIDE 1

¡ ¡ T14 ¡

Test ¡Automation ¡ Thursday, ¡October ¡3rd, ¡2019 ¡1:30 ¡PM ¡ ¡ ¡ ¡ ¡

Make ¡Your ¡UI ¡Tests ¡Resilient ¡with ¡the ¡ Next ¡Generation ¡of ¡Frameworks ¡ ¡

Presented ¡by: ¡ ¡ ¡

¡ Satyajit ¡Malugu ¡

¡ ¡

Brought ¡to ¡you ¡by: ¡ ¡ ¡ ¡

¡

¡

¡ ¡

888-­‑-­‑-­‑268-­‑-­‑-­‑8770 ¡·√·√ ¡904-­‑-­‑-­‑278-­‑-­‑-­‑0524 ¡-­‑ ¡info@techwell.com ¡-­‑ ¡http://www.starwest.techwell.com/ ¡ ¡ ¡

¡

¡ ¡ ¡

¡

slide-2
SLIDE 2

Satyajit ¡Malugu ¡

¡ Satyajit ¡Malugu ¡is ¡a ¡test ¡automation ¡engineer ¡with ¡over ¡10 ¡years ¡of ¡experience. ¡He ¡ specializes ¡in ¡Android ¡and ¡iOS ¡mobile ¡test ¡automation, ¡and ¡has ¡helped ¡companies ¡ including ¡Urbanspoon, ¡Godaddy, ¡and ¡SoFi ¡plan ¡and ¡execute ¡on ¡mobile ¡test ¡strategy. ¡ He ¡is ¡eager ¡to ¡learn ¡and ¡to ¡share ¡his ¡learnings ¡as ¡a ¡speaker ¡at ¡industry ¡testing ¡

  • conferences. ¡He ¡also ¡blogs ¡occasionally ¡at ¡mobiletest.engineer. ¡ ¡

¡ ¡ ¡

slide-3
SLIDE 3

MAKE YOUR UI TESTS RESILIENT WITH THE NEXT GENERATION OF FRAMEWORKS

BY SATYAJIT MALUGU SENIOR ENGINEER, SOFI

slide-4
SLIDE 4

BIGGEST PROBLEM WITH UI TEST AUTOMATION

slide-5
SLIDE 5

WHY IS IT FLAKY

  • Classic E2E test have too many variables
  • Network
  • Data
  • 3rd party SDKs
  • Complicated application logic
  • We don’t know for sure when SUT is ready
  • Lack of control on SUT

System Under Test

slide-6
SLIDE 6

HOW DO YOU ADDRESS FLAKINESS

SLEEP WAIT PRAY

slide-7
SLIDE 7

BUT ITS NOT ENOUGH

NOT RELIABLE MAKES AUTOMATION SLOW DIAGNOSING THE PROBLEM TAKES LONGER

slide-8
SLIDE 8

GREY BOX VS BLACK BOX

slide-9
SLIDE 9

IS THIS BLASPHEMY?

  • Can a puny test look inside the sacred walls of the SUT?
  • Yes, if that creates more useful tests
slide-10
SLIDE 10

SYNCHRONIZATION

Bringing the SUT to a ready state before performing any testing

  • perations on it
slide-11
SLIDE 11

ESPRESSO

  • Mature, de-facto Android test

automation framework from Google

  • Very fast and highly reliable
  • Synchronizes the app with test actions
  • Network, UI loaders, background tasks

and custom tasks can all be synchronized

slide-12
SLIDE 12

HELLO WORLD ESPRESSO

slide-13
SLIDE 13

ESPRESSO IDLING RESOURCES

An advanced framework support for async operations Provides fine grained control in tests Makes tests much more robust

slide-14
SLIDE 14

DEMO

slide-15
SLIDE 15

CYPRESS.IO

  • Non-selenium web automation tool
  • Runs within the JavaScript engine of the

browser

  • All in one JS tool with extensive tools for

debugging like timetravel

slide-16
SLIDE 16

CYPRESS DEMO

slide-17
SLIDE 17

EARLGREY

  • Very similar to espresso but for iOS
  • Synchronization at UI level, network, and

in custom events

  • Can live side by side with default

XCUITests

slide-18
SLIDE 18

EARLGREY DEMO

slide-19
SLIDE 19

WHAT'S THE TRADEOFF

Fidelity Reliability Unit tests Espresso, Earlgrey Cypress Selenium, Appium

slide-20
SLIDE 20

TEST AUTOMATION PYRAMID

Black box Tests

Grey Box UI tests API/Integration tests Unit tests

slide-21
SLIDE 21

TAKEAWAYS

Think beyond selenium and appium Add grey box tools to your test automation toolbox Synchronization

slide-22
SLIDE 22

QUESTIONS