← Back to team overview

sikuli-driver team mailing list archive

[Question #200437]: Non-visual ways to assert program state

 

New question #200437 on Sikuli:
https://answers.launchpad.net/sikuli/+question/200437

I'm wondering if people have found ways to "assert" that their program ran properly without using Sikuli's visual pattern matching.

The pattern matching is amazing and great, but as we all know it is slower and less robust than other methods. 

We get around this on the user input side by using keyboard shortcuts whenever possible. However, I'm not sure how the program can say "Yes, that worked" without using Sikuli's visual system. My colleague mentioned using "named pipes" to pass a message...

As an example. 
HOW WE DO IT NOW (less robust):
1) Open the GUI.
2) Click "View" --> "Mode" --> "Edit Mode"
3) Assert that an image of the windows title matches a picture of "Edit Mode" text.
* This method is plagued by problems of windows themes changing, different fonts, other windows jumping in front, etc.

HOW WE'D LIKE TO DO IT (more robust)
1) Open the GUI via command-line.
2) Keystrokes: Alt, 'V', 'M', 'E'.
3) Assert that program just passed a message like "NOW IN EDIT MODE" to Sikuli.

Step #3 is the one that has me stuck. I'm happy to sprinkle these kinds of messages in my program (which is written in Python/TraitsUI/PyQt, if it matters), to make testing more robust. But, I'm not sure how to communicate the messages.

Or, am I just going about this the wrong way?

-- 
You received this question notification because you are a member of
Sikuli Drivers, which is an answer contact for Sikuli.