Open Source Test Automation: Riding the Second Wave

Similar documents
The Software Delivery Experts. Agile, DevOps & QA Conference

About Us. Services CONSULTING OUTSOURCING TRAINING MENTORING STAFF AUGMENTATION 9/9/2016

Syllabus Technosoft Academy. Course Syllabus. 1 P a g e

But before understanding the Selenium WebDriver concept, we need to know about the Selenium first.

Selenium Workshop. Removing the Mystery from Open Source Test Automation. Presented By Chris Petrov, PMP Leverage Point Corporation

Selenium. Duration: 50 hrs. Introduction to Automation. o Automating web application. o Automation challenges. o Automation life cycle

EFFECTIVE TESTING OF RICH INTERNET APPLICATIONS

(Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn? New Batches Info

Class 1 Introduction to Selenium, Software Test Life Cycle.

Strategies for Selecting the Right Open Source Framework for Cross- Browser Testing

Building a Customized Test Automation Framework Using Open Source Tools

End-to-End Agile Testing using Incremental Approach for a Leading EIM Solution Provider ATTENTION. ALWAYS.

CHICAGO. How to Tackle Open Source Test Automation in Incredible Ways. Renaissance Hotel 1 West Wacker Drive Chicago IL April 18th April 22th

STQA Mini Project No. 2

Selenium Testing Course Content

VIEW POINT. Choosing the right automation tool and framework is critical to project success. Harsh Bajaj, Technical Test Lead ECSIVS, Infosys

VietSoftware International Inc. Software Testing Competence

SOLVING THE MOBILE TESTING CONUNDRUM

Guide to Test Automation Tools

TEST AUTOMATION. Excel Global Solutions Inc. All Rights Reserved.

Selenium Webdriver Github

Software Testing

Сравнительный анализ инструментов Автоматизации Desktop AUT. Anton Semenchenko

SELENIUM. SELENIUM COMPONENTS Selenium IDE Selenium RC Selenium Web Driver Selenium Grid

ActiveNET Enterprise Solution Company

SELENIUM TRAINING COURSE CONTENT

TESTING TRENDS IN 2015: A SURVEY OF SOFTWARE PROFESSIONALS

Been testing software for over 10 years Started out as a Manual Tester Moved to Automation testing Now leading teams, defining quality in

A Study on Various Testing tools and Testing Strategies

(Complete Package) We are ready to serve Latest Testing Trends, Are you ready to learn? New Batches Info

Selecting a Selenium Grid Infrastructure in an enterprise

Selenium Course Content

Watir-Webdriver Cucumber Automation Framework Setup Guide

OSSW ICOSST 2009, Al-Khawarizmi Institute of Computer Science University of Engineering and Technology, Lahore

The age of automation is going to be the age of 'do it yourself. - Marshall McLuhan

Selenium vs UFT: Which is Better for Your Mobile Testing Strategy?

13 th Annual International Software Testing Conference in India 2013

PERSPECTIVE. Best Practices in Automation Testing of Mobile Applications. Abstract

Manual Testing. Software Development Life Cycle. Verification. Mobile Testing

Selenium Training. Training Topics

Mind Q Systems Private Limited

QMS ISO 9001:2015 CERTIFIED COMPANY Software Testing TRAINING.

TESTING TRENDS IN 2016: A SURVEY OF SOFTWARE PROFESSIONALS

AN ISO 9001:2008 CERTIFIED COMPANY. Software Testing TRAINING.

AMAR PURI. au.linkedin.com/in/iamarpuri 2/40 station Street, Burwood 3125 Victoria, Australia Mobile:

Boulder Software Testing and QA meetup August 15 th Sponsors. - TestFramework.io (Food and Drinks) - Intelligent Office Westminster (Location)

SeeTest Quality Assurance Platform SeeTestAutomation

Comparative Study of Software Automation Testing Tools: OpenScript and Selenium

Strategies for Selecting the Right Open Source Framework for Cross-Browser Testing

webdriver selenium 08FE064A22BF82F5A04B63153DCF68BB Webdriver Selenium 1 / 6

Mind Q Systems Private Limited

Test Automation Practice STC 2012

Selenium Testing Training

Better late than never

Introduction to Automation. What is automation testing Advantages of Automation Testing How to learn any automation tool Types of Automation tools

Open2Test Test Automation Framework for Selenium Web Driver FAQ

Turbo boost your digital app test automation with Jenkins

Learning Objectives of CP-SAT v 1.31

How Manual Testers can execute Test Automation. White Papers. Muthiah Director of Testing. Expedux on How Manual Testers

MICROSOFT AND SAUCE LABS FOR MODERN SOFTWARE DELIVERY

Our digital team worked within an agile methodology framework using Scrum, Kanban and the Target Process agile tool.

Software Continuous Integration & Delivery INCREASING SOFTWARE DEVELOPMENT AGILITY TO SPEED TIME TO MARKET

"MODULAR TEST CASE DESIGN:THE BUILDING BLOCKS

International Journal of Advance Engineering and Research Development. Proof of concept (Poc) selenium web driver based Automation framework

Automated Security Scanning in Payment Industry

PERSPECTIVE. End-to-end test automation A behaviordriven and tool-agnostic approach. Abstract

A Tale of Continuous Testing

_ Success Story. PedidosYa Uses Automated Checks to Ensure Quality User Experiences

LogiGear Overview. Bruce Ekins LogiGear Colorado Phone Mobile LogiGear Corporation 1

RubyMine, the most advanced Ruby and Rails IDE

Selenium Online Training Brochure

A Guided Tour of Test Automation

WHAT S NEW IN SELENIUM IDE 3.1?

SELENIUM - REMOTE CONTROL

A Comparative Study of Automated Software Testing Tools

AUTOMATED TEST SYSTEM DEVELOPMENT FROM SCRATCH: THE MAIN PROBLEMS AND THEIR SOLUTIONS. Lilia Sapurina

Implemented Test Automation Framework for the World s Largest Learning Company ATTENTION. ALWAYS.

Sample Copy. Not For Distribution.

HP APPs v.12 Solutions for Dev-Ops

Jimi Odeyemi. Which? CONTACT INFO. Developer in Test. Senior Developer in Test (Ruby & Javascript)

Ride the wave of automation to survive the digital transformation storm. December, 2017

Java Programming Basics

Lean Functional Testing

Maja Schreiner. 9th Lean, Agile & Scrum Conference 2017

SeU Certified Selenium Engineer (CSE) Syllabus

MANUAL+ SELENIUM CURRICULUM

Technology. Business Objectives & Challenges. Overview. Technical Solution

SeU Certified Selenium Engineer (CSE) Syllabus

H elping you choose the right automation testing tool

MAKING THE MOVE TO AUTOMATED TESTING

Integration Test Plan

Asst. Professor, Dept. of MCA, Siddaganga Institute of Technology, Tumakuru, Karnataka

Topic 16: Validation. CITS3403 Agile Web Development. Express, Angular and Node, Chapter 11

Introduction: Manual Testing :

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

Behaviour Driven Development with Java. Nikolay Vasilev 15 July 2011

3 Continuous Integration 3. Automated system finding bugs is better than people

Test Driven Development and Refactoring. CSC 440/540: Software Engineering Slide #1

Case Study. Quality Assurance, QA Automation, Manual Testing, WebDriver, Java, Cloud Technologies, Wearables

End-to-end testing with Selenium + Nightwatch.js

Transcription:

K2 Keynote 5/4/16 10:00 Open Source Test Automation: Riding the Second Wave Presented by: David Dang Zenergy Technologies Brought to you by: 350 Corporate Way, Suite 400, Orange Park, FL 32073 888- - - 268- - - 8770 904- - - 278- - - 0524 - info@techwell.com - http://www.stareast.techwell.com/

David Dang Zenergy Technologies For more than seventeen years, David Dang has been a leader in the test automation industry. As VP of automated solutions for Greensboro, NC- based Zenergy Technologies, David spearheads the development of advanced frameworks that emphasize reusability and reduce maintenance efforts. He is an expert in all major commercial automation tools as well as open source tools such as Selenium and Jenkins. On the mobile front, David uses advanced concepts to design optimal frameworks using mobile automation toolsets including Perfecto and Appium. In addition to his high- level consulting engagements for Zenergyâ s clients, David is in high demand as a presenter at major software quality assurance and testing conferences. Read more about David and Zenergy at zenergytechnologies.com.

A Testing Partner You Can Trust Open Source Test Automation: Riding the Second Wave StarEast 2016 Presented By: David Dang

Overview What is an open source test automation framework/tool? Why is it gaining in popularity? First wave of open source frameworks/tools Current open source frameworks/tools Strategies for success Should you catch the second wave? Q & A

What is Open Source? Software for which the original source code is made freely available and may be redistributed and modified Open source code is meant to be shared within the community. Enhancements, bug fixes, branching of the code are made by the community Currently on www.opensourcetesting.org/functional.php, there are around 135 open source test automation tools/frameworks

Why is Open Source Test Automation Gaining Popularity? FREE! Companies have to do more with less More applications are being converted to web-based Development teams are pushing for open source test automation Industry trends include more open source in all areas (Eclipse, Java, Jenkins, OpenStack, Drupel, etc.)

First Wave of Open Source Test Automation Tools/Frameworks FitNesse: Operates below the user interface level. The user provides various inputs to the application and determines if the correct results are returned Ruby Watir: Ruby libraries used to automate web browsers. It allows users to automate clicks, fill in forms, press buttons, etc. Selenium RC: Writes automated web application UI tests. RC comes in two parts: server acts as an HTTP proxy for web, and client libraries interact with the web elements

Why the First Wave Tapered Off Tools were too fragmented, difficult to integrate into complete solutions. Level of instrumentation increased the technical challenge and decreased reliability Learning curve tended to be higher due to overly complex and less refined solutions IT landscape wasn t ready to embrace open source at the time

Why the First Wave Tapered Off FitNesse Does not run at the UI level; runs at the source code level Fixtures must directly access the source code Watir Only available for Ruby Each browser had a different library Selenium RC: Required heavy instrumentation Had a large, clunky API Effectiveness and reliability limited by use of Javascript injection

Current Open Source Test Automation Tools/Frameworks Selenium WebDriver: Drives a browser directly using its built in support for automation Cucumber: Runs automated acceptance tests written in a behaviordriven development (BDD) style. It uses Ruby to create step definition Robot Framework: Generic test automation framework based on keyword-driven testing approach. The core framework is implemented using Python

Sample of Selenium WebDriver

Sample of Cucumber

Sample of Robot Framework

Why Second Wave Tools are More Popular WebDriver laid foundation for numerous additional tools Increased support from well-known organizations WebDriver Developed by Thought Works Microsoft is developing a driver for their new Edge browser W3C has adopted it as the standard for browser automation Appium Sauce Labs Supports popular methodologies (Ex. Cucumber BDD) Cleaner abstractions and more concise APIs Less instrumentation required Better integration

Selenium RC vs Selenium WebDriver: Architecture Selenium RC Selenium RC Server Web Browser Test Code (e.g. Java, C#, Python, etc.) 1 Browser Launcher 2 Selenium Core 3 HTTP Proxy 4 Application Client 5 Selenium WebDriver Application Server Test Code (e.g. Java, C#, Python, etc.) Selenium WebDriver Web Browser (IE, Firefox, Chrome, etc.) Application Server

Selenium RC vs Selenium WebDriver: API Selenium RC Selenium WebDriver

WebDriver: The Foundation of the Second Wave As the industry standard tool for browser automation, countless tools are being created that extend or integrate with Selenium WebDriver Selenium WebDriver Application Under Test Tools like Appium and Protractor extend WebDriver for use in other technologies Tools like Cucumber integrate with WebDriver so it can be used with methodologies such as BDD

Selenium vs Packaged Tools: Feature Comparison Feature Packaged Tools Selenium Environment Integrated Development IDE (Eclipse, IntelliJ, RubyMine) Browser Compatibility Language support Limited (e.g., Firefox, IE, Chrome) Limited (e.g., VBScript only or.net only) Firefox, IE, Chrome, Safari, Opera, Edge, HtmlUnit, PhantomJS, and others Java, Javascript, C#, Python, Ruby, and others Reporting Included Separate package (ReportNG, Allure) or custom Test Management Integrated Custom

Selenium vs Packaged Tools: Feature Comparison Feature Packaged Tools Selenium Continuous Integration Integrated Separate package (Jenkins, Bamboo) Support 800 number The Community Object Management Included Separate package or custom Test Control Included Separate package (TestNG, phpunit, RSpec)

Strategies for Success People Requires more technical resources Resources must be comfortable with object-oriented programming Resources must understand framework/tool configuration and environment setup Resources must be able to diagnose and fix technical issues without vendor support May have to identify and even fix bugs in the tool May need to contribute to the community with new features May need to work more closely with development team

Strategies for Success Technology Open source requires more time and effort to get started and maintain No official support, only the community Components are not built-in; they must use other libraries or be developed from scratch Some technologies are not well supported by open source tools Some technologies have features that lack support from otherwise useful open source tools

Strategies for Success Process Requires more dedicated resources Tool should fit into your existing process For e.g., if you are a.net shop, you will often find less of a learning curve with a tool that offers.net as an option A tool like Cucumber will have a greater return if it is adopted early in the SDLC Requires a detailed plan for implementation and maintenance Framework will be required including standards and page object models

Framework Development Process Gather Information Architecture Design Core Framework Implementation Ongoing Development Ongoing Maintenance

Should You Catch the Second Wave? People Is your team comfortable with object-oriented programming? Are they comfortable dealing with technical challenges with minimal support? Are they able to contribute to the tool with bug fixes and enhancements? Do you have a plan in place for training and mentoring?

Should You Catch the Second Wave? Process Do you have the resources to dedicate toward ensuring automation is successful? Do you have a plan for creating a stable, maintainable framework? Does open source make sense from a budget standpoint? Is open source a good fit for your overall IT strategy?

Should you Catch the Second Wave? Technology Have you chosen a tool that is appropriate for your platform? How active is the community? Is there somewhere to turn for help? Is the tool updated frequently and responsive to platform changes? Does investing in open source fit into your organization s technology road map? Are you comfortable supporting multiple tools sets?

Summary WebDriver is the foundation of the current wave of open source automation People, process and technology are the keys to success Moving to open source is not a decision to take lightly

Questions?