Automation Happy Hour 2: Zoom, cont...

In the second episode of Automation Happy Hour, Jonathan continues with Zoom. The intent is to code up a multi-device automation flow, but we never really make it past iOS...

Code samples for Automation Happy Hour are available at github.com/appium-pro/ahh

In this episode, the goal was to test an end-to-end meeting user flow, involving 2 participants. One participant starts the meeting on one device, and the other participant joins the meeting on the other device. I coded up the requirements as follows:

  1. ios - start a meeting
  2. ios - scrape the meeting credentials
  3. android - use credentials to join a meeting
  4. ios - confirm that android joined
  5. ios - end meeting
  6. android - verify meeting ended

It turns out that Zoom for iOS (which we picked as the platform to start the meeting) is a bit of a beast! I ran into a bunch of challenges:

  • The app opening different screens depending on its state
  • Elements being present but not clickable / interactable
  • A UI that disappears after a certain amount of time has passed
  • Accessibility IDs that aren't unique
  • Locators different from their Android counterparts
  • The forgetfulness of my own brain
  • The forgetfulness of my own brain (again)

In this happy hour (and a half) I wasn't able to get through all the goals, but you might find it interesting to see how I approached these different challenges. You might also find comfort in watching someone else forget things!