0

I am working on a retail based project. We have two UI. One is web portal where different types of vouchers can be created. These vouchers can be issued and redeemed from desktop application. The issued and redeemed voucher update details will be uploaded to web portal. I am using sikuli to automate desktop application. Can i do GUI testing between desktop and web using sikuli?

Thanks in advance.

2 Answers 2

2

As far as my investigation goes, testing end-to-end scenarios that involve both, we and desktop applications, Sikuli is the only option.

When making the decision there few limitation to keep in mind though:

  1. Sikuli tests will only work on the same resolution screen as the one the tests were been created on.
  2. You will need to have a physical computer switched on with a screen attached to it to work.

As it was mentioned in other post here, long scenarios with Sikuli can become brittle. So if you have an option to split your end-to-end scenarios into multiple standalone pieces, while using Selenium for the web part and Sikuli for the desktop app, that probably will be the best solution. Perhaps do some data preparation in one app and save data in a file, then run the other part and assert everything has worked as expected based on that text file.

Sign up to request clarification or add additional context in comments.

4 Comments

+1 for suggesting splits for Web part & desktop part.This seconds my way of approaching automation when it involves desktop, specially some native OS functionality.
yes i have done that already. i have prepared selenium tests for web and preparing desktop tests in sikuli. but can i check them together in sikuli? as details from my desktop application is being updated to portal.
@payaldhameliya I'm sorry but I am not sure I understand your question. I will still try to answer it though.. So theoretically, you can check anything with Sikuli as long as you can do it by identifying something on your screen. I would still use Selenium where possible as it tends to get less fragile. Hope that helps.
@EugeneS my question is i am creating some vouchers like gift card on my web portal, client will issue or redeem it at the time of payment using my desktop application. after issue or redemption there are some details like issue or redeem date, amounts, expiry date will be updated to portal for that particular voucher no. i want to test these update from desktop to web application.i have prepared automation testing for web application in selenium. but for desktop application , i am using sikuli. hope you understand
0

Base of sikuli is to search the UI controls on screen, based on screenshot. Also it provides Sikuli API for Java with which you can do a programming around the AUT.

To answer your question,

As long as it is GUI and it's expected screenshot can be taken, then Yes, you can use Sikuli to test Desktop UI & UI for the site opened in Browser. But testing Web UI with sikuli is quite hectic process as you may need to take screenshots of every testable controls. It will be more cumbersome if site is heavily loaded with images and input controls. We have selenium IDE/selenium webdriver to perform such testing. You can use Sikuli on the desktop side where autoIT may become heavy job and the UI is quite static.

3 Comments

Just to mention that Sikuli API is a separate project from Sikuli. Not sure how well supported either. It is possible to use SIkuli with Java directly.
@EugeneS : I am not clear with the statement, it is possible to use Sikuli with Java directly.
I just meant that you can use Sikuli itself with Java. Not just Python as many people think.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.