Learning Appium Visual Testing on TAU

Learning Appium with Visual Testing — Prerequisites

Learning Appium Testing With A Demo App

driver.findElementByImage(templateImage);

Setting Up Your Test Device as an MJPEG Server

Example Test Code

Visual Testing with OpenCV

  • Either number cannot be entered in the expected numeric fields
  • The numeric entry fields can receive numbers but the button click has no effect
  • Data entry and the button click works but the presented response does not match the expected sum.
  • Number fields cannot be distinguished on a page
  • The button cannot be distinguished on a page

Testing with Appium and OpenCV

  • Declare the difference a bug and pass the information back to developers
  • Declare the difference as intentional and point future tests to the most recent capture, which becomes the new baseline.

Real-World Visual Tests with OpenCV

Reviewing the Appium OpenCV Test Results

Appium with Applitools for Visual Testing

  • OpenCV can be challenging to install
  • With OpenCV, you need to manage your own baselines
  • Self-Managing images — you also manage compare images
  • Image compare errors — you will have reported failures that are not failures
  • No support for full-screen comparisons with scrolling screens — something we hadn’t yet covered, but you must manually scroll and capture screens and sync them up. Yuck.
  • You must maintain the image comparison code, which will require work from release to release.

Looking at Applitools Results

Advanced Features — Learning Appium with Applitools

eyes.setForceFullPageScreenshot(true);

Conclusions

For More Information

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store