Mobile Test Resuscitation

Mucho Hardware!

TEST CODE   |   FEATURE CODE

"Non-deterministic tests have two problems, firstly they are useless, secondly they are a virulent infection that can completely ruin your entire test suite."

- Martin Fowler, Chief Scientist, ThoughtWorks

Slow Feedback Loop

What's JavaScript?

bad tests can = worse than no tests

Who tests the tests?

"With end-to-end tests, you have to wait: first for the entire product to be built, then for it to be deployed, and finally for all end-to-end tests to run. When the tests do run, flaky tests tend to be a fact of life. And even if a test finds a bug, that bug could be anywhere in the product."

- Mike Wacker, Software Engineer, Google

API level tests

WASTE OF TIME!

other teams already test the API layers

XCTest

SNOOZE
U
LOSE

Mock all the things

PERFORMANCE

Obstacles

  • iOS restrictions
  • Legacy code
  • XMPP mocking
  • Developer buy-in

The Future