49
Sikuli- Slides Khalid Alharbi Sikuli Lab

Sikuli Slides

Embed Size (px)

DESCRIPTION

Sikuli-Slides is a visual automation tool that enables users to automate and test Graphical User Interfaces (GUIs) using presentation slides. slides.sikuli.org

Citation preview

Page 1: Sikuli Slides

Sikuli-SlidesKhalid AlharbiSikuli Lab

Page 2: Sikuli Slides

Outline

• Introduction.• What’s Sikuli.• What’s Sikuli-Slides.• Sikuli-Slides for automated GUI testing.• Sikuli-Slides for interactive tutorials.• Conclusions.

Page 3: Sikuli Slides

GUI Automation

Page 4: Sikuli Slides

GUI Testing

Click 400, 300Type “Alan”

Click ‘first_name’Type “Alan”

Page 5: Sikuli Slides

What’s Sikuli?

Page 6: Sikuli Slides

How Sikuli works?

Page 7: Sikuli Slides

How Sikuli works?

Page 8: Sikuli Slides

Example 1GUI Automation

Page 9: Sikuli Slides

Example 2 GUI Testing

Page 10: Sikuli Slides

Why Sikuli?

• Uses Computer Vision.• No scripting API support or source code

access.• Interacts with anything you see on the

screen.• OCR support.• Works on Web-based UIs.• Works on virtual machines and remote

desktops

Page 11: Sikuli Slides

Sikuli Project

• Sikuli Script• Sikuli Java API• Sikuli Slides

Page 12: Sikuli Slides

Sikuli script

Page 13: Sikuli Slides

Sikuli Java API

Page 14: Sikuli Slides

Sikuli-Slides

Page 15: Sikuli Slides

Sikuli-Slides

• Automate and test GUIs by using screenshots and annotating them.

• Make visual automation accessible to everyone.

• Use a tool that most users already know how to use.

• Reinventing Computer-based tutoring.

Page 16: Sikuli Slides

Motivation

• PowerPoint is already a popular tool for creating test cases.

• Online tutorials that include annotated screenshots.

Page 17: Sikuli Slides

How to tell computers how to interact with applications?

Page 18: Sikuli Slides
Page 19: Sikuli Slides

How to tell users how to use applications?

Page 20: Sikuli Slides
Page 21: Sikuli Slides
Page 22: Sikuli Slides

Why PowerPoint

• Most users already know how to use PowerPoint.

• Office Open XML file format a.k.a OOXML.• DrawingML• Shapes, pictures, etc.

• Data Interoperability.

Page 23: Sikuli Slides

System Architecture

Document Parser Visual

Automation Processor

Java API

C++ Engine

OpenCVjava.awt.Robot

PowerPoint

Document (.pptx file)

Page 24: Sikuli Slides

How to represent user input actions?

Page 25: Sikuli Slides

Action Shape

Left click Rectangle

Right click Oval

Double click Frame

Keyboard typing Text Box

Open default browser Cloud

Drag and drop Rounded Rectangle connected by an arrow pointing to the drag and drop direction.

Text ……..www.sikuli.or

g

Page 26: Sikuli Slides

Demo

Page 27: Sikuli Slides

But using special shapes is bad!

Page 28: Sikuli Slides

Click

Page 29: Sikuli Slides

Click

Page 30: Sikuli Slides

Demo

Page 31: Sikuli Slides

How to identify identical targets?

Page 32: Sikuli Slides

Click

Page 33: Sikuli Slides

Click

Page 34: Sikuli Slides

Click

Page 35: Sikuli Slides

Click

Page 36: Sikuli Slides

Click

Page 37: Sikuli Slides

Click

Right

Top

Bottom

Left

Page 38: Sikuli Slides

Demo

Page 39: Sikuli Slides

Sikuli Slides Applications

• GUI Testing• Tutorials

Page 40: Sikuli Slides

How to test a GUI in sikuli-slides?

Sikuli-Slides makes GUI testing accessible to all QA engineers.

GUI Testing

Page 41: Sikuli Slides

Demo

Page 42: Sikuli Slides

How to learn about a software?

Tutorials

Page 43: Sikuli Slides

Sikuli Slides can run live interactive tutorials

Page 44: Sikuli Slides

But where’s the audio?

Page 45: Sikuli Slides

Adding audio or narration

• How to add audio narrations to the slides and sync the audio with the GUI input action to add more interactive experience when running the slides?

• How to annotate the screen with text so users can layer the screen with informative text that explains what’s running on the screen?

Page 46: Sikuli Slides

Demo

Page 47: Sikuli Slides

Where are we now?

• Support three modes in which you can run presentation slides in:• Action mode. • Tutorial mode.• Development mode.

Page 48: Sikuli Slides

Conclusions

• Sikuli-Slides:• Uses Computer Vision.• Can run presentation slides on

Windows/Mac/Linux.• Makes visual automation accessible to

everyone.• Features a new way to create computer based

tutorials.

Page 49: Sikuli Slides

Thanks!

• http://code.google.com/p/sikuli-api/wiki/SikuliSlides

• Or just google “sikuli slides”

• slides.sikuli.org