SlideShare a Scribd company logo
DevOps Certification Training
Software and Automation Testing Framework
Learning Objectives
By the end of this lesson, you will be able to:
Describe the automation testing process
Describe the Selenium WebDriver architecture
Install Selenium WebDriver, and write the first test case
Implement TestNG in Eclipse
Implement continuous integration with Selenium and Jenkins
Introduction to Automation Testing
What Is Automation Testing?
Automation testing is a method in software testing that uses special software tools to control the
execution of tests and compares the actual test results with the expected results. It requires very less
human intervention.
Automation Testing Process
Automation
Testing Life
Cycle
Determine
the scope of
Automation
Test
Automation
Tool
Selection
Introduce
Automated
Test
Approach
Test Planning,
Design, and
Development
Test Execution
and
Management
Test Review
and
Evaluation
What Is Selenium?
• It is open-source, portable framework used to automate web applications testing.
• It is highly flexible when it comes to testing functional and regression test cases.
• It also supports cross browsing, where the test cases run across various platforms simultaneously.
• It also helps in creating robust, browser-based regression automation suites and perform test case
execution.
Why Selenium?
Browsers
Programming
Languages
OS Platforms
Advantages of Selenium
Language and Framework Support
Multi-Browser Support
Ease of Implementation
Parallel Test Execution and Fast Speed
Less Hardware Usage and Constant Updates
Selenium Architecture and its Components
Selenium WebDriver Architecture
Selenium Components
Selenium RC
Selenium IDE
Selenium
WebDriver
Selenium Grid
Selenium IDE
• IDE (Integrated Development Environment) is a Firefox plugin and is one
of the simplest frameworks in the Selenium Suite.
• It allows us to record and playback the scripts.
• If you wish to create scripts using Selenium the IDE, you should use
Selenium RC or Selenium WebDriver to write advanced and robust test
cases.
Selenium RC
• Also known as Selenium 1.
• Main Selenium project for a long time before the WebDriver merge
brought up Selenium 2.
• Relies on JavaScript for automation.
• Supports Ruby, PHP, Python, Perl, C#, Java, Javascript. It supports all the
browsers currently available.
• RC is now officially deprecated.
Selenium WebDriver
• It is a browser automation framework that accepts commands and
sends them to a browser.
• Implemented through a browser-specific driver.
• Communicates with the browser and controls it.
• Supports various programming languages like – Java, C#, PHP, Python,
Perl, Ruby, and Javascript.
Selenium Grid
• It is a tool which is used together with Selenium RC.
• It is used to run tests on different systems against different browsers in
parallel.
• Which implies – running multiple tests at the same time against different
systems running different browsers and operating systems.
Prerequisites for Selenium
Java 1.8
and
above or
Python
Eclipse for
JEE
developers
Selenium
3.0
Browser
Drivers
Write the First Test Case
Create a project
in Eclipse
Create a class
file
Configure the
build path, add
Selenium jars
Add the path of
browser driver
Save the file
Run the
program
Write the first
test case
Selenium WebDriver Installation and Integration in Eclipse
Problem Statement:
You have been asked to install and integrate Selenium WebDriver.
Duration: 15 Min.
Assisted Practice: Guidelines
Steps to Perform:
1. Download and setup Selenium server
2. Downloading ChromeDriver
3. Integrating selenium to Eclipse
What Is A Web Element?
● Anything that is present on the web
page is a WebElement such as text
box, button, etc. It represents an
HTML element.
● Selenium WebDriver encapsulates a
simple form element as an object of
the WebElement
Running the First Selenium Test Case
Problem Statement:
You have been asked to execute a first test case in Selenium.
Duration: 15 Min.
Assisted Practice: Guidelines
Steps to Perform:
1. Configure Selenium in Eclipse
2. Run the first test case
Selenium TestNG Framework
Introduction to TestNG
• TestNG stands for Test Next Generation and is an open-source test automation framework,
inspired by JUnit and NUnit.
• It provides functionality like test annotations, grouping, prioritization, parameterization, and
sequencing techniques in the code
• It provides detailed test reports.
Features of TestNG
• It generates the report in a format that includes several executed test cases, number of
failed test cases, and test cases that have been skipped.
• Multiple test cases can be grouped easily by converting them into a TestNG.xml file. Here,
you can set the priorities to execute the test cases.
• Using TestNG, you can execute multiple test cases on multiple browsers.
• The testing framework can be easily integrated with tools like Maven, Jenkins, etc.
Setting Up TestNG in Eclipse
Problem Statement:
You have been asked to setup and configure TestNG framework on your system.
Duration: 15 Min.
Assisted Practice: Guidelines
Steps to Perform:
1. Download and set up TestNG
2. Integrate TestNG in Eclipse
Testing the Automation Script
Problem Statement:
You have been asked to test the automation script using TestNG.
Duration: 15 Min.
Assisted Practice: Guidelines
Steps to Perform:
1. Configure TestNG in Eclipse
2. Test the automation script
Selenium Integration with Jenkins
Why Jenkins for Test Automation?
Jenkins is a popular Continuous Integration orchestration tool. It provides numerous plugins
for integration with multiple test automation tools and frameworks into the test pipeline. When
it comes to test automation, Jenkins provides plugins that help run test suites, gather and
display the results, and provide details on failed test cases.
Why Jenkins for Test Automation?
Runs Automated Test Suites:
● Jenkins provides plugins for various test frameworks like Selenium, Cucumber, and
Appium, Robot framework.
● These can be integrated into CI pipelines to run automated tests for every build.
Summarizes the results:
● Most plugins also summarize the test results and display them as an HTML output.
Why Jenkins for Test Automation?
Provides Trends
Jenkins keeps track of results and displays them as a trend graph. This offers a better view
of how the tests have fared in the past.
Displays Test Failure Results
Test results are tabulated, and the failures are logged with the test results.
Adding Selenium Plugin to Jenkins
Problem Statement:
You have been asked to add the selenium plugin to Jenkins tool.
Duration: 15 Min.
Assisted Practice: Guidelines
Steps to Perform:
1. Login to Jenkins Dashboard
2. Add Selenium plugin to Jenkins
Key Takeaways
Selenium is a testing tool for automation testing of web applications.
Selenium supports various programming languages, operating,
system and browsers
TestNG generates the report in a format that includes several
executed test cases, number of failed test cases, and test cases that
have been skipped.
Jenkins provides numerous plugins for integration with
multiple test automation tools and frameworks into the test
pipeline.
Project Agenda: As a DevOps engineer, you are required to perform
continuous integration with Selenium and TestNG in Jenkins.
Description: Testing is an integral part of SDLC and Agile. It is necessary to
test every tool before getting into production environment to ensure that the
tool functions as desired. To do so, it is necessary to integrate a tool with
Jenkins in DevOps life cycle.
Continuous Integration with Selenium in Jenkins
Lesson-End Project

More Related Content

Similar to Lesson_06_Software_and_Automation_Testing_Frameworks.pdf

Selenium Introduction
Selenium IntroductionSelenium Introduction
Selenium Introduction
Mayur Khairnar
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
DevDay.org
 
Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...
Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...
Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...
pCloudy
 
test-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptxtest-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptx
SyedZaeem9
 
Python selenium
Python seleniumPython selenium
Python selenium
Ducat
 
Selenium (1)
Selenium (1)Selenium (1)
Selenium (1)
onlinemindq
 
What is Selenium Introduction to Selenium Testing.pptx
What is Selenium Introduction to Selenium Testing.pptxWhat is Selenium Introduction to Selenium Testing.pptx
What is Selenium Introduction to Selenium Testing.pptx
Syntax Technologies
 
QSpiders - Automation using Selenium
QSpiders - Automation using SeleniumQSpiders - Automation using Selenium
QSpiders - Automation using Selenium
Qspiders - Software Testing Training Institute
 
What is Selenium Testing.pdf
What is Selenium Testing.pdfWhat is Selenium Testing.pdf
What is Selenium Testing.pdf
AnanthReddy38
 
Selenium Presentation at Engineering Colleges
Selenium Presentation at Engineering CollegesSelenium Presentation at Engineering Colleges
Selenium Presentation at Engineering Colleges
Vijay Rangaiah
 
Reasons behind selenium automation testing popularity
Reasons behind selenium automation testing popularityReasons behind selenium automation testing popularity
Reasons behind selenium automation testing popularity
Ray Business Technologies
 
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfPros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
kalichargn70th171
 
Software Testing Tools Training
Software Testing Tools TrainingSoftware Testing Tools Training
Software Testing Tools Training
QEdge Tech
 
Test Automation Using Selenium
Test Automation Using SeleniumTest Automation Using Selenium
Test Automation Using Selenium
Nikhil Kapoor
 
What is Selenium Automation Testing.pdf
What is Selenium Automation Testing.pdfWhat is Selenium Automation Testing.pdf
What is Selenium Automation Testing.pdf
AnanthReddy38
 
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
Simplilearn
 
Selenium Testing: A Comprehensive Guide to Automated Web Testing
Selenium Testing: A Comprehensive Guide to Automated Web TestingSelenium Testing: A Comprehensive Guide to Automated Web Testing
Selenium Testing: A Comprehensive Guide to Automated Web Testing
pCloudy
 

Similar to Lesson_06_Software_and_Automation_Testing_Frameworks.pdf (20)

Sel
SelSel
Sel
 
Selenium Introduction
Selenium IntroductionSelenium Introduction
Selenium Introduction
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
 
Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...
Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...
Best Unit Testing Frameworks to Automate your Desktop Web Testing using Selen...
 
test-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptxtest-automation-selenium-160216124839.pptx
test-automation-selenium-160216124839.pptx
 
Python selenium
Python seleniumPython selenium
Python selenium
 
Selenium (1)
Selenium (1)Selenium (1)
Selenium (1)
 
What is Selenium Introduction to Selenium Testing.pptx
What is Selenium Introduction to Selenium Testing.pptxWhat is Selenium Introduction to Selenium Testing.pptx
What is Selenium Introduction to Selenium Testing.pptx
 
QSpiders - Automation using Selenium
QSpiders - Automation using SeleniumQSpiders - Automation using Selenium
QSpiders - Automation using Selenium
 
What is Selenium Testing.pdf
What is Selenium Testing.pdfWhat is Selenium Testing.pdf
What is Selenium Testing.pdf
 
Selenium Presentation at Engineering Colleges
Selenium Presentation at Engineering CollegesSelenium Presentation at Engineering Colleges
Selenium Presentation at Engineering Colleges
 
Reasons behind selenium automation testing popularity
Reasons behind selenium automation testing popularityReasons behind selenium automation testing popularity
Reasons behind selenium automation testing popularity
 
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfPros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
 
Selenium
SeleniumSelenium
Selenium
 
Software Testing Tools Training
Software Testing Tools TrainingSoftware Testing Tools Training
Software Testing Tools Training
 
Test Automation Using Selenium
Test Automation Using SeleniumTest Automation Using Selenium
Test Automation Using Selenium
 
What is Selenium Automation Testing.pdf
What is Selenium Automation Testing.pdfWhat is Selenium Automation Testing.pdf
What is Selenium Automation Testing.pdf
 
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
 
Selenium Testing: A Comprehensive Guide to Automated Web Testing
Selenium Testing: A Comprehensive Guide to Automated Web TestingSelenium Testing: A Comprehensive Guide to Automated Web Testing
Selenium Testing: A Comprehensive Guide to Automated Web Testing
 
Selenium Primer
Selenium PrimerSelenium Primer
Selenium Primer
 

Recently uploaded

TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
Tier1 app
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
Jelle | Nordend
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Anthony Dahanne
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
Ortus Solutions, Corp
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
kalichargn70th171
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
Sharepoint Designs
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
Tendenci - The Open Source AMS (Association Management Software)
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
MayankTawar1
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
Peter Caitens
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 

Recently uploaded (20)

TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024BoxLang: Review our Visionary Licenses of 2024
BoxLang: Review our Visionary Licenses of 2024
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
A Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdfA Comprehensive Look at Generative AI in Retail App Testing.pdf
A Comprehensive Look at Generative AI in Retail App Testing.pdf
 
Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024Explore Modern SharePoint Templates for 2024
Explore Modern SharePoint Templates for 2024
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 

Lesson_06_Software_and_Automation_Testing_Frameworks.pdf

  • 2. Software and Automation Testing Framework
  • 3. Learning Objectives By the end of this lesson, you will be able to: Describe the automation testing process Describe the Selenium WebDriver architecture Install Selenium WebDriver, and write the first test case Implement TestNG in Eclipse Implement continuous integration with Selenium and Jenkins
  • 5. What Is Automation Testing? Automation testing is a method in software testing that uses special software tools to control the execution of tests and compares the actual test results with the expected results. It requires very less human intervention.
  • 6. Automation Testing Process Automation Testing Life Cycle Determine the scope of Automation Test Automation Tool Selection Introduce Automated Test Approach Test Planning, Design, and Development Test Execution and Management Test Review and Evaluation
  • 7. What Is Selenium? • It is open-source, portable framework used to automate web applications testing. • It is highly flexible when it comes to testing functional and regression test cases. • It also supports cross browsing, where the test cases run across various platforms simultaneously. • It also helps in creating robust, browser-based regression automation suites and perform test case execution.
  • 9. Advantages of Selenium Language and Framework Support Multi-Browser Support Ease of Implementation Parallel Test Execution and Fast Speed Less Hardware Usage and Constant Updates
  • 10. Selenium Architecture and its Components
  • 12. Selenium Components Selenium RC Selenium IDE Selenium WebDriver Selenium Grid
  • 13. Selenium IDE • IDE (Integrated Development Environment) is a Firefox plugin and is one of the simplest frameworks in the Selenium Suite. • It allows us to record and playback the scripts. • If you wish to create scripts using Selenium the IDE, you should use Selenium RC or Selenium WebDriver to write advanced and robust test cases.
  • 14. Selenium RC • Also known as Selenium 1. • Main Selenium project for a long time before the WebDriver merge brought up Selenium 2. • Relies on JavaScript for automation. • Supports Ruby, PHP, Python, Perl, C#, Java, Javascript. It supports all the browsers currently available. • RC is now officially deprecated.
  • 15. Selenium WebDriver • It is a browser automation framework that accepts commands and sends them to a browser. • Implemented through a browser-specific driver. • Communicates with the browser and controls it. • Supports various programming languages like – Java, C#, PHP, Python, Perl, Ruby, and Javascript.
  • 16. Selenium Grid • It is a tool which is used together with Selenium RC. • It is used to run tests on different systems against different browsers in parallel. • Which implies – running multiple tests at the same time against different systems running different browsers and operating systems.
  • 17. Prerequisites for Selenium Java 1.8 and above or Python Eclipse for JEE developers Selenium 3.0 Browser Drivers
  • 18. Write the First Test Case Create a project in Eclipse Create a class file Configure the build path, add Selenium jars Add the path of browser driver Save the file Run the program Write the first test case
  • 19. Selenium WebDriver Installation and Integration in Eclipse Problem Statement: You have been asked to install and integrate Selenium WebDriver. Duration: 15 Min.
  • 20. Assisted Practice: Guidelines Steps to Perform: 1. Download and setup Selenium server 2. Downloading ChromeDriver 3. Integrating selenium to Eclipse
  • 21. What Is A Web Element? ● Anything that is present on the web page is a WebElement such as text box, button, etc. It represents an HTML element. ● Selenium WebDriver encapsulates a simple form element as an object of the WebElement
  • 22. Running the First Selenium Test Case Problem Statement: You have been asked to execute a first test case in Selenium. Duration: 15 Min.
  • 23. Assisted Practice: Guidelines Steps to Perform: 1. Configure Selenium in Eclipse 2. Run the first test case
  • 25. Introduction to TestNG • TestNG stands for Test Next Generation and is an open-source test automation framework, inspired by JUnit and NUnit. • It provides functionality like test annotations, grouping, prioritization, parameterization, and sequencing techniques in the code • It provides detailed test reports.
  • 26. Features of TestNG • It generates the report in a format that includes several executed test cases, number of failed test cases, and test cases that have been skipped. • Multiple test cases can be grouped easily by converting them into a TestNG.xml file. Here, you can set the priorities to execute the test cases. • Using TestNG, you can execute multiple test cases on multiple browsers. • The testing framework can be easily integrated with tools like Maven, Jenkins, etc.
  • 27. Setting Up TestNG in Eclipse Problem Statement: You have been asked to setup and configure TestNG framework on your system. Duration: 15 Min.
  • 28. Assisted Practice: Guidelines Steps to Perform: 1. Download and set up TestNG 2. Integrate TestNG in Eclipse
  • 29. Testing the Automation Script Problem Statement: You have been asked to test the automation script using TestNG. Duration: 15 Min.
  • 30. Assisted Practice: Guidelines Steps to Perform: 1. Configure TestNG in Eclipse 2. Test the automation script
  • 32. Why Jenkins for Test Automation? Jenkins is a popular Continuous Integration orchestration tool. It provides numerous plugins for integration with multiple test automation tools and frameworks into the test pipeline. When it comes to test automation, Jenkins provides plugins that help run test suites, gather and display the results, and provide details on failed test cases.
  • 33. Why Jenkins for Test Automation? Runs Automated Test Suites: ● Jenkins provides plugins for various test frameworks like Selenium, Cucumber, and Appium, Robot framework. ● These can be integrated into CI pipelines to run automated tests for every build. Summarizes the results: ● Most plugins also summarize the test results and display them as an HTML output.
  • 34. Why Jenkins for Test Automation? Provides Trends Jenkins keeps track of results and displays them as a trend graph. This offers a better view of how the tests have fared in the past. Displays Test Failure Results Test results are tabulated, and the failures are logged with the test results.
  • 35. Adding Selenium Plugin to Jenkins Problem Statement: You have been asked to add the selenium plugin to Jenkins tool. Duration: 15 Min.
  • 36. Assisted Practice: Guidelines Steps to Perform: 1. Login to Jenkins Dashboard 2. Add Selenium plugin to Jenkins
  • 37. Key Takeaways Selenium is a testing tool for automation testing of web applications. Selenium supports various programming languages, operating, system and browsers TestNG generates the report in a format that includes several executed test cases, number of failed test cases, and test cases that have been skipped. Jenkins provides numerous plugins for integration with multiple test automation tools and frameworks into the test pipeline.
  • 38. Project Agenda: As a DevOps engineer, you are required to perform continuous integration with Selenium and TestNG in Jenkins. Description: Testing is an integral part of SDLC and Agile. It is necessary to test every tool before getting into production environment to ensure that the tool functions as desired. To do so, it is necessary to integrate a tool with Jenkins in DevOps life cycle. Continuous Integration with Selenium in Jenkins Lesson-End Project