Sikuli Tool (Automate Anything You See on Screen)
Mayur Khairnar
Mayur Khairnar
Senior Software Engineer at GS Lab ,Skills - Java | Selenium | Rest assured | Mongo DB | My Sql | Mvn | Git |Rest API | Scrum Certified | AWS | GCP | Jenkin | java Script | GEN AI |Azure Dev ops | |Hl7 |FIHR-Healthcare
- Sikuli automates anything you see on the screen using the image recognition method to identify GUI elements. The sikuli script allows users to automate GUI interaction by using screenshots.
Short Introduction
- Sikuli is a tool to automate graphical user interfaces (GUI) using “Visual Image Match” method. In Sikuli, all the web elements should be taken as an image and stored inside the project. Sikuli will trigger GUI interactions based on the image visual match, the image which we have passed as the parameter along with all methods.
- Sikuli can be very much useful to automate flash objects (which do not have ID or name). It can be useful in the situation, where we have a stable GUI (i.e. GUI components not changing).
- Even Window based applications can also be automated using Sikuli. Sikuli provides very friendly Sikuli-script.jar, which can be easily used together with Selenium WebDriver. We can even automate Adobe Video/Audio player, Flash Games on the website using Sikuli. With simple API, it makes coding easier.
We can use practically
- Sikuli can be used to automate Flash Objects / Flash Websites.
- It can be useful to automate Window based application. We can automate, what we are seeing on the screen.
- It provides, simple API. i.e. all methods can be accessed using screen class object.
- It can be easily integrated with Selenium and all other tools.
- Using Sikuli we can automate desktop applications.
- Most of the automation testing tools will not support flash object automation (E.g. Selenium). Sikuli provides extensive support to automate flash objects.
- It uses powerful “Visual Match” mechanism to automate desktop & flash objects.
Benefits
- Open source Tool.
- One of the biggest advantages of Sikuli is that it can easily automate Flash objects.
- It makes easy to automate windows application.
- When you’re testing an application under development and you don’t know the ID/name of the elements, then you can go with Sikuli. It will check the appearance of the image and if match found, it will interact with the image accordingly.
Prerequisites:
Before getting started, we need to download and install the following software:
- Any screenshot capturing tool (E.g. DuckCapture, or qSnap)
- JDK
- Eclipse (detailed steps here to install JDK and Eclipse)