Contents

  • What is a Toast Message?
  • Drawbacks of Appium?
  • What is OCR?
  • What is Tesseract API?
  • How to integrate Tesseract API with Appium?

What is a Toast Message

A toast provides simple feedback about an operation in a small popup. It is displayed quickly and disappears after sometime.

blog5

Once you set an alarm, a success message appears at the bottom of the screen. In the above diagram the message – This alarm is set for 10 hours and 7 minutes from now. is an example of Toast Message.

 

Drawbacks of Appium

These toast messages cannot be automated by using Appium. Because, the Android uiautomatorviewer cannot recognize the toast messages.

 

What is OCR

Optical Character Recognition, or OCR, is a technology that enables you to convert different types of documents, such as scanned paper documents, PDF files or images captured by a digital camera into editable and searchable data.

So the only way to automate toast messages is take a screen shot with the toast message and use any text recognition library (OCR) in order to get the toast message text.

What is Tesseract API

We used Tesseract API for recognizing the text on a image. Tesseract works on Linux, Windows and Mac OS. One drawback with Tesseract is it cannot recognize the handwriting. As this drawback doesn’t hamper our task so we can go a head and use this API.

How to integrate Tesseract API with Appium

 

  1. Include the below dependency in your maven project.

2. Take a Screen shot of the page containing the toast message and place it in your hard disk. (Here I created a folder with name toastmessages and saved the image with name toastmessage1.png file.)

blog6

we need to validate the text – Added To Cart in the above toast message.

  1. Create another folder with name tessdata and place the ENG.traineddata file in that folder. This ENG.traineddata(dowload it from https://github.com/tesseract-ocr/tessdata) file contains the various fonts supported by Tesseract API. At present it can recognize upto 64 different fonts of English text.

Place the folder tessdata under class path of the project.

Use the below methods to work with tesseract.  

Methods:

 

Test

Output of the getToastMessage() method is

® [.1 Q â€œII/é‘: _.|| 88% I} 11:56 PM

e Q â€˜,5.’ s

Micromax 5005220MHD 127 cm ( 50) Full Q?

HD LED Television With 1 + 2 Year

Exte , 0

“Micromax 50052…” Added To Cart ‘

Rs.