Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Microsoft power point automation-opensourcetestingtools_matrix-1


Published on

כנס אוטומציה מוצלח

  • Be the first to comment

  • Be the first to like this

Microsoft power point automation-opensourcetestingtools_matrix-1

  1. 1. Open Source Automation tools overview Lior Kinsbruner February 2011 RSA
  2. 2. • RSA company overview • Automation Challenges • RSA In-Use tools • Introduction to JSYSTEM • Introduction to SeleniumTable 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. 3. RSA in a nutshell JRSA, 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 solutionsand services to over 90% of the Fortune 500qLine of products in IL: q3DS qAAOP qAAH qIDV qFraud Action qCRE 3
  4. 4. Why use automation tools? • Time consuming ü Speed • Low reliability ü Repeatability • Human resources ü Programming • Inconsistent capabilities ü Coverage ü Reliability ü Reusability 4
  5. 5. ChallengesMultiple environments and platforms• OS• DBs• Application ServersFrequent changes in SUT – quick response required!Working with various technologies• Web Services – SOAP• Java API• Web applications• CLI 5
  6. 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. 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.þ 7
  8. 8. Automation life cycle 8 8
  9. 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 SeleniumcommandsØDebug and set breakpointsØSave tests as HTML, Java, Ruby scripts, orany 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. 10. Selenium Featuresü Supports a variety of browsersü Runs on multiple platformsü Supports Flex and Flashü Record & Export variety of languages 10
  11. 11. Selenium Add-ons and TipsWorking 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 expressionsFirefox Add-on/s:• Selenium IDE -• XPATH checker -• Firebug & IE Developer toolbar -• Javascript debugger - 11
  12. 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: 12
  13. 13. Introduction to AutoITAutoIt v3 is a freeware BASIC-like scripting language designed forautomating the Windows GUI and general scripting. It uses a combinationof simulated keystrokes, mouse movement and window/controlmanipulation 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 13
  14. 14. Introduction to FIT and FitnesseThe fully integrated standalone wiki, and acceptance testing frameworküFitNesse is a wiki, which is a style of web server that allows any visitor tomake 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 FitHTML tables.•FIT - See it in action soon….•FitNesse (run it using java -jar fitnesse.jar –p 8080)http://localhost:8080/FitTest?test 14
  15. 15. Introduction to JEMMYüFree, open source testing toolkit for Swing/JFC applications, supported bythe developers of the NetBeans IDEJEMMY 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 APIJEMMY ààà See it in action J 15
  16. 16. How they all work together?• Test plan and test labs - QC• Execution and Reporting - Jsystem• Defect tracking - JIRA• Continuous Integration •Hudson - •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 - •Manages a projects 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. 17. Automation process in RSA from A-Z 17
  18. 18. 18