SlideShare a Scribd company logo
WebDriver
Tech Talk @ Evozon
Intro.
What is WebDriver ?
WebDriver is a browser automation API.
Intro.
When to use WebDriver ?
Functional Testing tool.
Complex business logic
For applications that tend to grow in complexity over time.
Why automation ?
Quick reports
Quick feedback on failed deploys.
Regression suite
Benefits
Which are the supported browsers ?
Firefox – Supported
Chrome – Supported
Internet Explorer – Supported
Safari - Not supported
Benefits
Benefits
CI - aka Continuous Integration ?
Continuous Integration process:
Benefits
Development Deployment Regression Tests
(New application version)(Working cycle) (Application state report)
Continuous Integration
What can we test ?
We can't test everything…
mostly because of costs :)
We usually test functionality
Project description
An application usually contains heaps* of
pages and functionality
.
Pages
More
Pages... ...
Project structure
How do we structure our projects ?
Simple structure
Structure that can scale
Easy to understand and follow
Project structure
How do we structure our projects ?
Project Quick Peak ...
Project structure
How do we structure our projects ?
Page 1 Page 2 Page 3
Steps
Tests
Project structure
Breaking pages:
Header
Toolbar
Submit Form
--------------
-----
---------
-----------
------
Comments
Posts
Footer
HeaderPage
ToolbarPage
SubmitFormPage
Index.html
CommentsPage
PostsPage
FooterPage
pages.index
Project structure
A page...
public class SubmitFormPage extends PageObject{
public SubmitFormPage (WebDriver driver) {super(driver);}
@FindBy(id = "nameInputID")
public WebElement inputNameField;
public void inputName(String name){
inputNameField.sendKeys(name);
}
}
Questions...

More Related Content

What's hot

Mvc part 1
Mvc part 1Mvc part 1
Mvc part 1
Gandhi Ghanashyam
 
Asp.net Overview and Controllers
Asp.net Overview and ControllersAsp.net Overview and Controllers
Asp.net Overview and Controllers
Mustafa Saeed
 
Write cleaner, maintainable, and testable code in Android with MVVM
Write cleaner, maintainable, and testable code in Android with MVVMWrite cleaner, maintainable, and testable code in Android with MVVM
Write cleaner, maintainable, and testable code in Android with MVVM
Adil Mughal
 
Salesforce Apex Hours :- Introduction to lightning components
Salesforce Apex Hours :- Introduction to lightning componentsSalesforce Apex Hours :- Introduction to lightning components
Salesforce Apex Hours :- Introduction to lightning components
Amit Chaudhary
 
Salesforce Kerala developer user group meetup
Salesforce Kerala developer user group meetupSalesforce Kerala developer user group meetup
Salesforce Kerala developer user group meetup
Shivanath Devinarayanan
 
Web driver interface
Web driver interfaceWeb driver interface
Web driver interface
Ducat
 
HTML5 and jQuery Mobile
HTML5 and jQuery MobileHTML5 and jQuery Mobile
HTML5 and jQuery Mobile
Keir Bowden
 
Building Minimal Viable Product (MVP) with WordPress
Building Minimal Viable Product (MVP) with WordPressBuilding Minimal Viable Product (MVP) with WordPress
Building Minimal Viable Product (MVP) with WordPress
Amit Kumar Singh
 
How Progressive Web App Is The Future Of Web Development - An Infographic
How Progressive Web App Is The Future Of Web Development - An InfographicHow Progressive Web App Is The Future Of Web Development - An Infographic
How Progressive Web App Is The Future Of Web Development - An Infographic
WebGuru Infosystems Pvt. Ltd.
 
Vue storefront London PWA meetup
Vue storefront London PWA meetupVue storefront London PWA meetup
Vue storefront London PWA meetup
Filip Rakowski
 
Integrate Videos & Photos With Ease in ASP.NET
Integrate Videos & Photos With Ease in ASP.NETIntegrate Videos & Photos With Ease in ASP.NET
Integrate Videos & Photos With Ease in ASP.NET
Lohith Goudagere Nagaraj
 
Introduction to jQueryMobile
Introduction to jQueryMobileIntroduction to jQueryMobile
Introduction to jQueryMobile
Jeyakumaran Mayooresan
 
Alternate Development Techniques on WordPress
Alternate Development Techniques on WordPressAlternate Development Techniques on WordPress
Alternate Development Techniques on WordPress
Amit Kumar Singh
 
Mihai Tataran - Building web applications with HTML 5 and related technologies
Mihai Tataran - Building web applications with HTML 5 and related technologiesMihai Tataran - Building web applications with HTML 5 and related technologies
Mihai Tataran - Building web applications with HTML 5 and related technologies
ITSpark Community
 
What is Content Management System
What is Content Management SystemWhat is Content Management System
What is Content Management System
John Halsell
 
Automated UI Testing
Automated UI TestingAutomated UI Testing
Automated UI Testing
Robert MacLean
 
Angular 5,6,7
Angular 5,6,7Angular 5,6,7
Angular 5,6,7
snehalkamble29
 
Introducing Visual Studio Online
Introducing Visual Studio OnlineIntroducing Visual Studio Online
Introducing Visual Studio Online
Ed Blankenship
 
Benefits of developing a Single Page Web Applications using AngularJS
Benefits of developing a Single Page Web Applications using AngularJSBenefits of developing a Single Page Web Applications using AngularJS
Benefits of developing a Single Page Web Applications using AngularJS
KNOWARTH - Software Development Company
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
Padmaashree K
 

What's hot (20)

Mvc part 1
Mvc part 1Mvc part 1
Mvc part 1
 
Asp.net Overview and Controllers
Asp.net Overview and ControllersAsp.net Overview and Controllers
Asp.net Overview and Controllers
 
Write cleaner, maintainable, and testable code in Android with MVVM
Write cleaner, maintainable, and testable code in Android with MVVMWrite cleaner, maintainable, and testable code in Android with MVVM
Write cleaner, maintainable, and testable code in Android with MVVM
 
Salesforce Apex Hours :- Introduction to lightning components
Salesforce Apex Hours :- Introduction to lightning componentsSalesforce Apex Hours :- Introduction to lightning components
Salesforce Apex Hours :- Introduction to lightning components
 
Salesforce Kerala developer user group meetup
Salesforce Kerala developer user group meetupSalesforce Kerala developer user group meetup
Salesforce Kerala developer user group meetup
 
Web driver interface
Web driver interfaceWeb driver interface
Web driver interface
 
HTML5 and jQuery Mobile
HTML5 and jQuery MobileHTML5 and jQuery Mobile
HTML5 and jQuery Mobile
 
Building Minimal Viable Product (MVP) with WordPress
Building Minimal Viable Product (MVP) with WordPressBuilding Minimal Viable Product (MVP) with WordPress
Building Minimal Viable Product (MVP) with WordPress
 
How Progressive Web App Is The Future Of Web Development - An Infographic
How Progressive Web App Is The Future Of Web Development - An InfographicHow Progressive Web App Is The Future Of Web Development - An Infographic
How Progressive Web App Is The Future Of Web Development - An Infographic
 
Vue storefront London PWA meetup
Vue storefront London PWA meetupVue storefront London PWA meetup
Vue storefront London PWA meetup
 
Integrate Videos & Photos With Ease in ASP.NET
Integrate Videos & Photos With Ease in ASP.NETIntegrate Videos & Photos With Ease in ASP.NET
Integrate Videos & Photos With Ease in ASP.NET
 
Introduction to jQueryMobile
Introduction to jQueryMobileIntroduction to jQueryMobile
Introduction to jQueryMobile
 
Alternate Development Techniques on WordPress
Alternate Development Techniques on WordPressAlternate Development Techniques on WordPress
Alternate Development Techniques on WordPress
 
Mihai Tataran - Building web applications with HTML 5 and related technologies
Mihai Tataran - Building web applications with HTML 5 and related technologiesMihai Tataran - Building web applications with HTML 5 and related technologies
Mihai Tataran - Building web applications with HTML 5 and related technologies
 
What is Content Management System
What is Content Management SystemWhat is Content Management System
What is Content Management System
 
Automated UI Testing
Automated UI TestingAutomated UI Testing
Automated UI Testing
 
Angular 5,6,7
Angular 5,6,7Angular 5,6,7
Angular 5,6,7
 
Introducing Visual Studio Online
Introducing Visual Studio OnlineIntroducing Visual Studio Online
Introducing Visual Studio Online
 
Benefits of developing a Single Page Web Applications using AngularJS
Benefits of developing a Single Page Web Applications using AngularJSBenefits of developing a Single Page Web Applications using AngularJS
Benefits of developing a Single Page Web Applications using AngularJS
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 

Similar to Automation Testing Using WebDriver

Website Presentation
Website PresentationWebsite Presentation
Website Presentation
Md.Abu Taher (Rujel)
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
Keyur Shah
 
Sap Process Integration
Sap Process Integration Sap Process Integration
Sap Process Integration
Tauhidul Islam
 
CODE IGNITER
CODE IGNITERCODE IGNITER
CODE IGNITER
Yesha kapadia
 
Stepin evening presented
Stepin evening presentedStepin evening presented
Stepin evening presented
Vijayan Reddy
 
Relate UI Automation Performance
Relate UI Automation PerformanceRelate UI Automation Performance
Relate UI Automation Performance
Thoughtworks
 
Zibrasoft | Software QA Testing Company Inida
Zibrasoft | Software QA Testing Company InidaZibrasoft | Software QA Testing Company Inida
Zibrasoft | Software QA Testing Company Inida
ZibraSoft Technologies
 
Struts & hibernate ppt
Struts & hibernate pptStruts & hibernate ppt
Struts & hibernate ppt
Pankaj Patel
 
Relate UI automation & performance
Relate UI automation & performanceRelate UI automation & performance
Relate UI automation & performance
bhumika2108
 
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speechVue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Divante
 
SAP PI and SOA Overview
SAP PI and SOA OverviewSAP PI and SOA Overview
SAP PI and SOA Overview
Sascha Wenninger
 
Modern Web Applications
Modern Web ApplicationsModern Web Applications
Modern Web Applications
Ömer Göktuğ Poyraz
 
Browser core red bus presentation
Browser core red bus presentation Browser core red bus presentation
Browser core red bus presentation
redBusTech
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...
Mark Roden
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...
Mark Leusink
 
OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)
Folio3 Software
 
Top Automated UI Testing Tools 2023.pdf
Top Automated UI Testing Tools 2023.pdfTop Automated UI Testing Tools 2023.pdf
Top Automated UI Testing Tools 2023.pdf
pcloudy2
 
Costruire applicazioni multi-tenant e piattaforme SaaS in PHP con Innomatic
Costruire applicazioni multi-tenant e piattaforme SaaS in PHP con InnomaticCostruire applicazioni multi-tenant e piattaforme SaaS in PHP con Innomatic
Costruire applicazioni multi-tenant e piattaforme SaaS in PHP con Innomatic
Innoteam Srl
 
LvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design SystemLvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design System
Vlad Fedosov
 
Service Oriented UI Architecture in the world of web, desktop, & mobile appli...
Service Oriented UI Architecture in the world of web, desktop, & mobile appli...Service Oriented UI Architecture in the world of web, desktop, & mobile appli...
Service Oriented UI Architecture in the world of web, desktop, & mobile appli...
Axway Appcelerator
 

Similar to Automation Testing Using WebDriver (20)

Website Presentation
Website PresentationWebsite Presentation
Website Presentation
 
Accessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup WebinarAccessibility Testing - Using Asqatasun - Meetup Webinar
Accessibility Testing - Using Asqatasun - Meetup Webinar
 
Sap Process Integration
Sap Process Integration Sap Process Integration
Sap Process Integration
 
CODE IGNITER
CODE IGNITERCODE IGNITER
CODE IGNITER
 
Stepin evening presented
Stepin evening presentedStepin evening presented
Stepin evening presented
 
Relate UI Automation Performance
Relate UI Automation PerformanceRelate UI Automation Performance
Relate UI Automation Performance
 
Zibrasoft | Software QA Testing Company Inida
Zibrasoft | Software QA Testing Company InidaZibrasoft | Software QA Testing Company Inida
Zibrasoft | Software QA Testing Company Inida
 
Struts & hibernate ppt
Struts & hibernate pptStruts & hibernate ppt
Struts & hibernate ppt
 
Relate UI automation & performance
Relate UI automation & performanceRelate UI automation & performance
Relate UI automation & performance
 
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speechVue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
Vue Storefront - Progressive Web App for Magento (1.9, 2.x) - MM18DE speech
 
SAP PI and SOA Overview
SAP PI and SOA OverviewSAP PI and SOA Overview
SAP PI and SOA Overview
 
Modern Web Applications
Modern Web ApplicationsModern Web Applications
Modern Web Applications
 
Browser core red bus presentation
Browser core red bus presentation Browser core red bus presentation
Browser core red bus presentation
 
The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...The future of web development write once, run everywhere with angular.js and ...
The future of web development write once, run everywhere with angular.js and ...
 
The future of web development write once, run everywhere with angular js an...
The future of web development   write once, run everywhere with angular js an...The future of web development   write once, run everywhere with angular js an...
The future of web development write once, run everywhere with angular js an...
 
OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)OWIN (Open Web Interface for .NET)
OWIN (Open Web Interface for .NET)
 
Top Automated UI Testing Tools 2023.pdf
Top Automated UI Testing Tools 2023.pdfTop Automated UI Testing Tools 2023.pdf
Top Automated UI Testing Tools 2023.pdf
 
Costruire applicazioni multi-tenant e piattaforme SaaS in PHP con Innomatic
Costruire applicazioni multi-tenant e piattaforme SaaS in PHP con InnomaticCostruire applicazioni multi-tenant e piattaforme SaaS in PHP con Innomatic
Costruire applicazioni multi-tenant e piattaforme SaaS in PHP con Innomatic
 
LvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design SystemLvivCSS: Web Components as a foundation for Design System
LvivCSS: Web Components as a foundation for Design System
 
Service Oriented UI Architecture in the world of web, desktop, & mobile appli...
Service Oriented UI Architecture in the world of web, desktop, & mobile appli...Service Oriented UI Architecture in the world of web, desktop, & mobile appli...
Service Oriented UI Architecture in the world of web, desktop, & mobile appli...
 

Recently uploaded

openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Undress Baby
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
Hironori Washizaki
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
kalichargn70th171
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 

Recently uploaded (20)

openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
 
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 

Automation Testing Using WebDriver

Editor's Notes

  1. (WebDriver) that lets you mimic actions or interact with a web page. *API - Application programming interface - in term this means it is not language specific. You can write your code in the language of your choice.
  2. It is most commonly used as a Functional Testing tool. For applications with complex business logic, not necessarily large applications. For applications that tend to grow in complexity over time.
  3. Automation provides a quick report on the application state or broken flows. Quick feedback on failed deploys. Regression suite usually has around 100 or more tests covering most of the implemented functionality.
  4. Note: There are compatibility issues between browsers, thus meaning custom implementation for actions in certain browsers may be required.
  5. Continuous integration (CI) is a software engineering practice in which isolated changes are immediately tested and reported on when they are added to a larger code base. In our project setup, it is fully supported. Most CI tools like Jenkins, Hudson, Bamboo, etc. are supported. -(others: CruiseControl,  Teamcity  
  6. Part of the CI setup the functional tests may be started after each application deploy.
  7. The time it would take to automate everything is not time and cost effective. We also don’t test layouts or rendering. This can be achieved with other tools or through manual testing. We usually test functionality , the short list of which would be: application specific flows negative flows content validation known issues or Bugs in some cases services - Eg. email notifications Applications usually come with specifications, user flows – those are the main focus of automation.
  8. *Heaps - 1. A group of things placed or thrown, one on top of the other. 2. A great deal; a lot These “Heaps” of functionalities get broken down in user stories, which in term will get prioritized (by importance or severity) and then go into automation.
  9. We aim for a simple structure We need a structure that can scale and its Easy to understand and follow - We also need to correlate with the actual application layout for future reference. – (~Next Slide~)
  10. Projects are broken down in three major areas. Pages , Steps and Test Some other packages as requirements, resources and tools also live in the same project – but are not the focus for this talk
  11. We use 3 types of classes: Pages - html element mappings and basic actions Steps - groups of page actions organised in steps --- A step class can use multiple pages A page can be invoked in multiple steps Test - consecutive steps that are organised in application flows --- Tests will use only the steps that are needed to achieve the “user story” or the flow
  12. The Page class is not in a 1 to 1 relation with a webpage. pages are broken down by functionality. for example A header page may apply on multiple webPages so in turn is is mapped as a single entity with reusability in mind.
  13. This is how an actual “page” looks like. the webDriver is inherited from the PageObject. it contains an element mapping – the element is identified by id and a action is also defined for the element – inputName – which will send the provided keys to the element.
  14. ????