SlideShare a Scribd company logo
Open Source Automation tools
                  overview
                 Lior Kinsbruner
                  February 2011

                           RSA
• RSA company overview

                        • Automation Challenges

                        • RSA In-Use tools

                             • Introduction to JSYSTEM

                             • Introduction to Selenium
Table of Contents            • Introduction to BadBoy

                             •Introduction to AutoIT

                             • Introduction to FIT

                             • Introduction to JEMMY

                        • How they all work together?

                        •Automation process in RSA

                        • DEMO

                        • Q&A




                    2
RSA in a nutshell J


RSA, The Security Division of EMC, provides Secure Data, Compliance,
SIM, SEM, SIEM, PCI, Consumer Identity, Two-Factor Authentication,
Custom Applications, Consulting, Assessment, and other security solutions
and services to over 90% of the Fortune 500

qLine of products in IL:
   q3DS
   qAAOP
   qAAH
   qIDV
   qFraud Action
   qCRE




                                    3
Why use automation tools?




                        • Time consuming        ü Speed
                         • Low reliability   ü Repeatability
                       • Human resources     ü Programming
                          • Inconsistent        capabilities
                                              ü Coverage
                                              ü Reliability
                                              ü Reusability



                                 4
Challenges

Multiple environments and platforms
•   OS
•   DBs
•   Application Servers

Frequent changes in SUT – quick response required!
Working with various technologies
•   Web Services – SOAP
•   Java API
•   Web applications
•   CLI



                           5
Guidelines for choosing our automation framework

•Data driven capabilities a
•Support for Client-Server and Web based applications a
•Platform/OS independent a
•Reporting capabilities a
•Email notification support a
•Ease of use a
•Documentation a
•Forums exposure a
•Ease of debugging and logging a
•Version control integration a
•Cost a

•Disadvantages:

    •Requires development skills for framework implementation and structural changes X

    •Bug tracking integration support X requires in-house coding

    •Product support – Open source tool…you implement your feature requests OR pay for
    outsourcing to do that for you… X




                                                  6
Introduction to JSYSTEM

þ JSystem is a framework for writing and running automated
    tests. The Jsystem Automation Framework is written in Java
    and based on open source java projects and custom code.




þ   http://www.jsystemtest.org/

                                  7
Automation life cycle




                            8
                        8
Introduction to SELENIUM

ØWeb testing framework
ØRuns in a browser
ØHTML & Javascript
ØOpen source
Ø:‫כתובת האתר הרשמי‬
http://seleniumhq.org
ØEasy record and playback
ØIntelligent field selection will use IDs,
names, or XPATH as needed
ØAuto-complete for all common Selenium
commands
ØDebug and set breakpoints
ØSave tests as HTML, Java, Ruby scripts, or
any other format


                Web 1.0                                Web 2.0
            Static content                         Dynamic content
                  HTML                            AJAX, FLEX, FLASH
         Company oriented                         Community oriented
              Web forms                            Web applications
                Explorer                      Firefox, Opera, Chrome
                                              9
Selenium Features

ü Supports a variety of browsers



ü Runs on multiple platforms



ü Supports Flex and Flash



ü Record & Export variety of languages




                                   10
Selenium Add-ons and Tips
Working with XPATH tips:
•Don’t use things that might change:
     •Div
     •Table cells
     •Language specific elements
•Use IDs
•Notice search speed when using long XPATH expressions
Firefox Add-on/s:

• Selenium IDE - http://seleniumhq.org

• XPATH checker - http://slesinsky.org/brian/code/xpath_checker.html

• Firebug & IE Developer toolbar - http://getfirebug.com

• Javascript debugger -https://addons.mozilla.org/en-US/firefox/addon/216




                                          11
Introduction to BadBoy

  Freeware tool which helps Web Application automation testing with Record & Replay
  capabilities.
  Some of the tools capabilities:
   •   Reports – Clear display of where failures are as well as values of variables when they occurred
   •   Log Views – A viewer for log files.
   •   AJAX Form Population - Form Populators which send DOM events for better AJAX playback
   •   Error Handlers and Retries - You can configure how Badboy responds to items that fail,
       including retrying them.
   •   External JavaScript Files - You can include JScript items that load scripts from external files
   •   Waitable Assertions - You can configure Assertions to wait a period of time for conditions to
       become true.
   •   Manual Review Support – You can add manual review checkpoints to your scripts for pages
       that should be inspected manually after a script has run
   •   Documentation Export – You can save a complete outline of your script including
       documentation in HTML format




•Official Web Site: http://www.badboy.com.au/

                                                   12
Introduction to AutoIT

AutoIt v3 is a freeware BASIC-like scripting language designed for
automating the Windows GUI and general scripting. It uses a combination
of simulated keystrokes, mouse movement and window/control
manipulation in order to automate tasks
•Easy to learn BASIC-like syntax
•Simulate keystrokes and mouse movements
•Manipulate windows and processes
•Interact with all standard windows controls
•Scripts can be compiled into standalone executables
•Create Graphical User Interfaces (GUIs)
•Regular expressions
•Directly call external DLL and Windows API functions
•Detailed help file and large community-based support forums
•Compatible with Windows 2000 / XP / 2003 / Vista / 2008 / Windows 7 / 2008 R2
•Unicode and x64 support


http://www.autoitscript.com/site/autoit/
                                       13
Introduction to FIT and Fitnesse

The fully integrated standalone wiki, and acceptance testing framework
üFitNesse is a wiki, which is a style of web server that allows any visitor to
make any edits, including changing existing pages and creating new pages.
ü serves us in :
 It
     üDefining Acceptance Tests
     üRun those tests and see the results
ü – is the engine that actually processes each FitNesse test table.
 FIT
ü provides easy way to write ‘executable’ acceptance tests using simple
 Fit
HTML tables.
•FIT - See it in action soon….
•FitNesse (run it using java -jar fitnesse.jar –p 8080)
http://localhost:8080/FitTest?test




                                       14
Introduction to JEMMY

üFree, open source testing toolkit for Swing/JFC applications, supported by
the developers of the NetBeans IDE
JEMMY Main objectives:
§Java library used to create UI automated tests
§Provides support covering all Swing components
§Can be easily extended for custom component support
§Two modes of action reproducing (Robot and event dispatching)
     §Pre/post verification methods
§When test fails? – Jemmy exceptions and timeouts
 JEMMY Operators:
 §Find a window – JFrameOperator, JDialogOperator
 §Find a component inside container
        §by text
        §By index
        §by component name
        §using Component-Chooser
 §Interact with component
 §simulate user actions
 §call component API


JEMMY       ààà See it in action J
                                                15
How they all work together?

• Test plan and test labs - QC
• Execution and Reporting - Jsystem
• Defect tracking - JIRA
• Continuous Integration
    •Hudson - http://hudson-ci.org/
       •Provides an easy-to-use so-called continuous integration system,
       making it easier for developers to integrate changes to the project
       •Monitoring executions of externally-run jobs
       •Reports build results and sends alerts on failures of build using
       Email/RSS
   •MAVEN - http://maven.apache.org/
       •Manages a project's build, reporting and documentation
       •Handle resources repositories and projects dependencies.
       •Assists with testing
       •Runs web applications
       •Produce reports on projects
       •Any number of other tasks provided by plug-ins.

                                      16
Automation process in RSA from A-Z




                      17
18

More Related Content

What's hot (20)

PDF
Behaviour testing for single-page applications and API’s
Andrew Kirkpatrick
 
PPT
Java introduction
logeswarisaravanan
 
PDF
eSoftHead - groupware solution
Nguyen Hai
 
DOC
Mayur_Resume (2) (1)
mayur gogawale
 
PPTX
MWLUG 2015 - An Introduction to MVC
Ulrich Krause
 
PDF
CLA Summit 2013: Connecting LabVIEW to Everything Else
JKI
 
PDF
Introduction to Continuous Integration
Hùng Nguyễn Huy
 
PDF
What's New in NetBeans IDE 7.x
Geertjan Wielenga
 
PPTX
Wintellect - Devscovery - Portable Class Library
Jeremy Likness
 
PPTX
Build software like a bag of marbles, not a castle of LEGO®
Hannes Lowette
 
PPTX
Build Time Hacking
Mohammed Tanveer
 
PPTX
La vita nella corsia di sorpasso; A tutta velocità, XPages!
Ulrich Krause
 
PPTX
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!
Imaginet
 
PDF
Attacks on SAP Mobile
Positive Hack Days
 
PDF
Calling all modularity solutions
Sangjin Lee
 
PPTX
Best Practices for JSF, Gameduell 2013
Edward Burns
 
PDF
NIWeek 2012: Fire and Forget / Bulletproof Builds Using Continuous Integratio...
JKI
 
PDF
JDD2015: Java Everywhere Again—with DukeScript - Jaroslav Tulach
PROIDEA
 
PPTX
Continuous delivery applied (DC CI User Group)
Mike McGarr
 
PDF
OpenTuesday: Die Selenium-Toolfamilie und ihr Einsatz im Web- und Mobile-Auto...
Digicomp Academy AG
 
Behaviour testing for single-page applications and API’s
Andrew Kirkpatrick
 
Java introduction
logeswarisaravanan
 
eSoftHead - groupware solution
Nguyen Hai
 
Mayur_Resume (2) (1)
mayur gogawale
 
MWLUG 2015 - An Introduction to MVC
Ulrich Krause
 
CLA Summit 2013: Connecting LabVIEW to Everything Else
JKI
 
Introduction to Continuous Integration
Hùng Nguyễn Huy
 
What's New in NetBeans IDE 7.x
Geertjan Wielenga
 
Wintellect - Devscovery - Portable Class Library
Jeremy Likness
 
Build software like a bag of marbles, not a castle of LEGO®
Hannes Lowette
 
Build Time Hacking
Mohammed Tanveer
 
La vita nella corsia di sorpasso; A tutta velocità, XPages!
Ulrich Krause
 
Upgrading to Team Foundation Server (TFS) 2012 – What You Need to Know!
Imaginet
 
Attacks on SAP Mobile
Positive Hack Days
 
Calling all modularity solutions
Sangjin Lee
 
Best Practices for JSF, Gameduell 2013
Edward Burns
 
NIWeek 2012: Fire and Forget / Bulletproof Builds Using Continuous Integratio...
JKI
 
JDD2015: Java Everywhere Again—with DukeScript - Jaroslav Tulach
PROIDEA
 
Continuous delivery applied (DC CI User Group)
Mike McGarr
 
OpenTuesday: Die Selenium-Toolfamilie und ihr Einsatz im Web- und Mobile-Auto...
Digicomp Academy AG
 

Viewers also liked (20)

DOCX
PM quality management
Bagus Wahyu
 
PDF
Drupal fit treadmill presentation
Steven Rifkin
 
PPTX
Str8ts: Solution to Weekly Extreme Str8ts #31
SlowThinker
 
PDF
15 August 2012 1ABCT Weekly News Update
Noel Waterman
 
PDF
16 May 2012 1HBCT Weekly News Update
Noel Waterman
 
PPT
T pryor a day in the life
tpryorp3
 
PPTX
презентация Microsoft office power point
amalik111
 
PPT
Understanding Places 09
keneustadt
 
PPTX
Year 1 Intro to CTO Workshop 2014 - BHSEC Queens, March 2014
bhsecqueensmanhattan
 
PDF
Lido floorplans
Matt Collinge
 
PDF
99 04 mustang accent light install
mcqueenpker
 
PPT
Asian Drama Project
notamuggle93
 
PPTX
More awesome than ea
Ruth Deller
 
PDF
Oct 26, 12 November Network Slides
Noel Waterman
 
PPT
A day in the life
sgarrettp7
 
PDF
MARCH 2012 1 EN MONTHLY NEWSLETTER
Noel Waterman
 
PPTX
2011
Niina Kesämaa
 
PDF
Philippines FDA Bio Efficacy Result
entogenex
 
PDF
Feb 2012 1 ID Fort Riley Monthly Newsletter
Noel Waterman
 
PDF
Modified India
Nimal Namboodiripad
 
PM quality management
Bagus Wahyu
 
Drupal fit treadmill presentation
Steven Rifkin
 
Str8ts: Solution to Weekly Extreme Str8ts #31
SlowThinker
 
15 August 2012 1ABCT Weekly News Update
Noel Waterman
 
16 May 2012 1HBCT Weekly News Update
Noel Waterman
 
T pryor a day in the life
tpryorp3
 
презентация Microsoft office power point
amalik111
 
Understanding Places 09
keneustadt
 
Year 1 Intro to CTO Workshop 2014 - BHSEC Queens, March 2014
bhsecqueensmanhattan
 
Lido floorplans
Matt Collinge
 
99 04 mustang accent light install
mcqueenpker
 
Asian Drama Project
notamuggle93
 
More awesome than ea
Ruth Deller
 
Oct 26, 12 November Network Slides
Noel Waterman
 
A day in the life
sgarrettp7
 
MARCH 2012 1 EN MONTHLY NEWSLETTER
Noel Waterman
 
Philippines FDA Bio Efficacy Result
entogenex
 
Feb 2012 1 ID Fort Riley Monthly Newsletter
Noel Waterman
 
Modified India
Nimal Namboodiripad
 
Ad

Similar to Microsoft power point automation-opensourcetestingtools_matrix-1 (20)

KEY
Website Testing Practices
deseomar
 
PDF
Introduction to Test Automation
Pekka Klärck
 
PDF
Web Test Automation Framework - IndicThreads Conference
IndicThreads
 
PDF
SVCC 2011 - 0 - 60: QA Automation @ Box
Peter White
 
DOCX
summary
ANSHU GOYAL
 
PPTX
Web Testing
muhamedwaseem09
 
PPTX
Automated integration tests for ajax applications (с. карпушин, auriga)
Mobile Developer Day
 
PDF
Introduction to Test Automation - Technology and Tools
KMS Technology
 
PPTX
Automating functional testing of Flex applications.
Gokuldas Pillai
 
PPTX
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
hemasubbu08
 
PPTX
unit-5 SPM.pptx
ssuser92282c
 
PPTX
Automation
Mphasis
 
PDF
Ijetcas14 413
Iasir Journals
 
PPTX
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
DevDay Da Nang
 
KEY
In-house web automation?
Adam Christian
 
PDF
automation framework
ANSHU GOYAL
 
PPT
Data driven automation testing of web applications using selenium
anandseelan
 
PPTX
#ATAGTR2020 Presentation - Universal Test Automation Framework
Agile Testing Alliance
 
PDF
Test automation - Building effective solutions
Artem Nagornyi
 
PDF
Open Source Software Testing Tools
Varuna Harshana
 
Website Testing Practices
deseomar
 
Introduction to Test Automation
Pekka Klärck
 
Web Test Automation Framework - IndicThreads Conference
IndicThreads
 
SVCC 2011 - 0 - 60: QA Automation @ Box
Peter White
 
summary
ANSHU GOYAL
 
Web Testing
muhamedwaseem09
 
Automated integration tests for ajax applications (с. карпушин, auriga)
Mobile Developer Day
 
Introduction to Test Automation - Technology and Tools
KMS Technology
 
Automating functional testing of Flex applications.
Gokuldas Pillai
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
hemasubbu08
 
unit-5 SPM.pptx
ssuser92282c
 
Automation
Mphasis
 
Ijetcas14 413
Iasir Journals
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
DevDay Da Nang
 
In-house web automation?
Adam Christian
 
automation framework
ANSHU GOYAL
 
Data driven automation testing of web applications using selenium
anandseelan
 
#ATAGTR2020 Presentation - Universal Test Automation Framework
Agile Testing Alliance
 
Test automation - Building effective solutions
Artem Nagornyi
 
Open Source Software Testing Tools
Varuna Harshana
 
Ad

Microsoft power point automation-opensourcetestingtools_matrix-1

  • 1. Open Source Automation tools overview Lior Kinsbruner February 2011 RSA
  • 2. • RSA company overview • Automation Challenges • RSA In-Use tools • Introduction to JSYSTEM • Introduction to Selenium Table of Contents • Introduction to BadBoy •Introduction to AutoIT • Introduction to FIT • Introduction to JEMMY • How they all work together? •Automation process in RSA • DEMO • Q&A 2
  • 3. RSA in a nutshell J RSA, The Security Division of EMC, provides Secure Data, Compliance, SIM, SEM, SIEM, PCI, Consumer Identity, Two-Factor Authentication, Custom Applications, Consulting, Assessment, and other security solutions and services to over 90% of the Fortune 500 qLine of products in IL: q3DS qAAOP qAAH qIDV qFraud Action qCRE 3
  • 4. Why use automation tools? • Time consuming ü Speed • Low reliability ü Repeatability • Human resources ü Programming • Inconsistent capabilities ü Coverage ü Reliability ü Reusability 4
  • 5. Challenges Multiple environments and platforms • OS • DBs • Application Servers Frequent changes in SUT – quick response required! Working with various technologies • Web Services – SOAP • Java API • Web applications • CLI 5
  • 6. Guidelines for choosing our automation framework •Data driven capabilities a •Support for Client-Server and Web based applications a •Platform/OS independent a •Reporting capabilities a •Email notification support a •Ease of use a •Documentation a •Forums exposure a •Ease of debugging and logging a •Version control integration a •Cost a •Disadvantages: •Requires development skills for framework implementation and structural changes X •Bug tracking integration support X requires in-house coding •Product support – Open source tool…you implement your feature requests OR pay for outsourcing to do that for you… X 6
  • 7. Introduction to JSYSTEM þ JSystem is a framework for writing and running automated tests. The Jsystem Automation Framework is written in Java and based on open source java projects and custom code. þ http://www.jsystemtest.org/ 7
  • 9. Introduction to SELENIUM ØWeb testing framework ØRuns in a browser ØHTML & Javascript ØOpen source Ø:‫כתובת האתר הרשמי‬ http://seleniumhq.org ØEasy record and playback ØIntelligent field selection will use IDs, names, or XPATH as needed ØAuto-complete for all common Selenium commands ØDebug and set breakpoints ØSave tests as HTML, Java, Ruby scripts, or any other format Web 1.0 Web 2.0 Static content Dynamic content HTML AJAX, FLEX, FLASH Company oriented Community oriented Web forms Web applications Explorer Firefox, Opera, Chrome 9
  • 10. Selenium Features ü Supports a variety of browsers ü Runs on multiple platforms ü Supports Flex and Flash ü Record & Export variety of languages 10
  • 11. Selenium Add-ons and Tips Working with XPATH tips: •Don’t use things that might change: •Div •Table cells •Language specific elements •Use IDs •Notice search speed when using long XPATH expressions Firefox Add-on/s: • Selenium IDE - http://seleniumhq.org • XPATH checker - http://slesinsky.org/brian/code/xpath_checker.html • Firebug & IE Developer toolbar - http://getfirebug.com • Javascript debugger -https://addons.mozilla.org/en-US/firefox/addon/216 11
  • 12. Introduction to BadBoy Freeware tool which helps Web Application automation testing with Record & Replay capabilities. Some of the tools capabilities: • Reports – Clear display of where failures are as well as values of variables when they occurred • Log Views – A viewer for log files. • AJAX Form Population - Form Populators which send DOM events for better AJAX playback • Error Handlers and Retries - You can configure how Badboy responds to items that fail, including retrying them. • External JavaScript Files - You can include JScript items that load scripts from external files • Waitable Assertions - You can configure Assertions to wait a period of time for conditions to become true. • Manual Review Support – You can add manual review checkpoints to your scripts for pages that should be inspected manually after a script has run • Documentation Export – You can save a complete outline of your script including documentation in HTML format •Official Web Site: http://www.badboy.com.au/ 12
  • 13. Introduction to AutoIT AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation in order to automate tasks •Easy to learn BASIC-like syntax •Simulate keystrokes and mouse movements •Manipulate windows and processes •Interact with all standard windows controls •Scripts can be compiled into standalone executables •Create Graphical User Interfaces (GUIs) •Regular expressions •Directly call external DLL and Windows API functions •Detailed help file and large community-based support forums •Compatible with Windows 2000 / XP / 2003 / Vista / 2008 / Windows 7 / 2008 R2 •Unicode and x64 support http://www.autoitscript.com/site/autoit/ 13
  • 14. Introduction to FIT and Fitnesse The fully integrated standalone wiki, and acceptance testing framework üFitNesse is a wiki, which is a style of web server that allows any visitor to make any edits, including changing existing pages and creating new pages. ü serves us in : It üDefining Acceptance Tests üRun those tests and see the results ü – is the engine that actually processes each FitNesse test table. FIT ü provides easy way to write ‘executable’ acceptance tests using simple Fit HTML tables. •FIT - See it in action soon…. •FitNesse (run it using java -jar fitnesse.jar –p 8080) http://localhost:8080/FitTest?test 14
  • 15. Introduction to JEMMY üFree, open source testing toolkit for Swing/JFC applications, supported by the developers of the NetBeans IDE JEMMY Main objectives: §Java library used to create UI automated tests §Provides support covering all Swing components §Can be easily extended for custom component support §Two modes of action reproducing (Robot and event dispatching) §Pre/post verification methods §When test fails? – Jemmy exceptions and timeouts JEMMY Operators: §Find a window – JFrameOperator, JDialogOperator §Find a component inside container §by text §By index §by component name §using Component-Chooser §Interact with component §simulate user actions §call component API JEMMY ààà See it in action J 15
  • 16. How they all work together? • Test plan and test labs - QC • Execution and Reporting - Jsystem • Defect tracking - JIRA • Continuous Integration •Hudson - http://hudson-ci.org/ •Provides an easy-to-use so-called continuous integration system, making it easier for developers to integrate changes to the project •Monitoring executions of externally-run jobs •Reports build results and sends alerts on failures of build using Email/RSS •MAVEN - http://maven.apache.org/ •Manages a project's build, reporting and documentation •Handle resources repositories and projects dependencies. •Assists with testing •Runs web applications •Produce reports on projects •Any number of other tasks provided by plug-ins. 16
  • 17. Automation process in RSA from A-Z 17
  • 18. 18