SlideShare a Scribd company logo
1 of 23
Download to read offline
What's new in selenium 4
Presented by : Ankur Thakur
QA Consultant
Lack of etiquette and manners is a huge turn off.
KnolX Etiquettes
Punctuality
Respect Knolx session timings,
you are requested not to join
sessions after a 5 minutes
threshold post the session start
time.
Feedback
Make sure to submit a
constructive feedback for all
sessions as it is very helpful for
the presenter.
Mute
Please keep your window on
mute.
Avoid Disturbance
Avoid leaving your window
unmuted after asking a question
Our Agenda
01 Small introduction : Selenium
03
Selenium 3 Vs. Selenium 4 Architecture
04
Selenium Vs. Cypress
05
New features in Selenium 4
Demo
02
What is selenium?
● Selenium is a free (open-source) automated testing framework used to
validate web applications.
● It can be used across different browsers and platforms.
● We can use multiple programming languages like Java, C#, Python etc to
write Selenium Test Scripts.
● It can be integrated with tools such as TestNG, JUnit and also with Maven
and Jenkins for achieving CI/CD.
Selenium 3 Vs. Selenium 4 Architecture
Selenium 3 Architecture
Selenium 4 Architecture
Selenium Vs. Cypress
● Selenium uses multiple programming languages like Java, C#, Python etc
to write Test Scripts.
● Cypress is a purely JavaScript-based front end testing tool built for the
modern web.
● Selenium supports Chrome, IE, Safari, Edge, Firefox, Opera web browsers.
● Cypress supports Chrome, Edge, Firefox(beta), Electron web browsers.
● Selenium supports multiple frameworks based on specific programming
languages. (For e.g: JUnit for Java, Cucumber for JavaScript, etc.)
● Cypress only supports Supports only Mocha JS.
Selenium Vs. Cypress
● Setting up Selenium is a bit challenging as it requires downloading
browser-specific drivers and needs to be updated if we update our
browsers.
● Setting up Cypress is simple. No dependencies or additional driver
downloads are required.
New features in Selenium 4
● Relative Locators
● Handling Multiple windows and Tabs
● Partial screenshots
● Capturing Height and Width of WebElement (UX validation)
● Chrome DevTools
● W3C WebDriver Protocol
Relative Locators
● Locators are used to uniquely identify web elements on a webpage.
● Locators are difficult to maintain.
● Relative locators are easy to use and implement.
● The main advantage of relative locators is finding elements which are
difficult to locate i.e elements with no unique attributes which helps us
to uniquely identify them.
● Ex-
driver.findElement(withTagName("textBox").above(locatorOfSubmitBut
ton))
Types of Relative Locators
● above() - Used to locate an element just above the specified element
● below() - Used to locate the an element just below the specified
element
● toLeftOf() - Used to locate the an element located on the left of a
specified element
● toRightOf() - Used to locate the an element located on the right of a
specified element
● near() - By default, it is used to locate an element at 50 pixels distant
from a specified element.
Handling Multiple Windows and Tabs
● Handling and opening new tabs or windows is now possible in
selenium.
● We can open new tabs, open links according to our requirement and
switch between them as well.
● This can be done with the newWindow() method.
● This helps us in certain situations where we need to automate multiple
tabs or multiple windows in a single test case.
Handling Multiple Windows and Tabs
WebDriver driver = new ChromeDriver();
driver.switchTo().newWindow(WindowType.TAB);
Partial screenshots
● We can now take partial screenshots of the web elements.
● This can be done with the getScreenshotAs() method.
● The screenshot is automatically stored in the project’s root level.
● This is mainly helpful in debugging failed tests. Using the screenshots
we can identify where and why our tests are failing.
Partial screenshots
File screenshotFile = userName.getScreenshotAs(OutputType.FILE);
FileUtils.copyFile((File) screenshotFile, new File("userNameScreenshot.png"));
Capturing Height and Width of WebElement
(UX validation)
● We can now use selenium for UX validation.
● We can capture height and width of web elements.
● This can be used to validate size of the elements without manually
fetching the details.
● This can be done with the getRect().getHeight() and
getRect().getWidth() method.
● This is helpful in validating certain scenarios where we need to verify
that the elements are according to the requirements or not.
Capturing Height and Width of WebElement
(UX validation)
System.out.println(userName.getRect().getHeight());
System.out.println(userName.getRect().getWidth());
Chrome DevTools
● Chrome DevTools or Developer tools are inbuilt in chrome web browser.
● DevTools can help us track what’s going on in the browser and diagnose
any problems.
● DevTools capabilities include:
○ Inspecting Network Activity
○ Handling Developer Options
○ Viewing the DOM
○ Measuring Performance
W3C WebDriver Protocol
● W3C webDriver protocol now allows the client and server to interact with
each other without JSON wire protocol over HTTP.
● JSON wire protocol over HTTP converts Selenium code to be converted in
JSON format and send it to browser drivers.
● Now the Client and server communicates directly without this protocol.
Demo
Q&A
Thank You

More Related Content

What's hot

What's hot (20)

Automation Testing by Selenium Web Driver
Automation Testing by Selenium Web DriverAutomation Testing by Selenium Web Driver
Automation Testing by Selenium Web Driver
 
Introduction to Selenium Web Driver
Introduction to Selenium Web DriverIntroduction to Selenium Web Driver
Introduction to Selenium Web Driver
 
QA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. SeleniumQA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. Selenium
 
Automation Testing using Selenium
Automation Testing using SeleniumAutomation Testing using Selenium
Automation Testing using Selenium
 
Selenium WebDriver with C#
Selenium WebDriver with C#Selenium WebDriver with C#
Selenium WebDriver with C#
 
Data driven Automation Framework with Selenium
Data driven Automation Framework with Selenium Data driven Automation Framework with Selenium
Data driven Automation Framework with Selenium
 
Flutter
FlutterFlutter
Flutter
 
Automation - web testing with selenium
Automation - web testing with seleniumAutomation - web testing with selenium
Automation - web testing with selenium
 
Selenium
SeleniumSelenium
Selenium
 
An overview of selenium webdriver
An overview of selenium webdriverAn overview of selenium webdriver
An overview of selenium webdriver
 
Introduction to Robot Framework
Introduction to Robot FrameworkIntroduction to Robot Framework
Introduction to Robot Framework
 
Unit Testing in Angular
Unit Testing in AngularUnit Testing in Angular
Unit Testing in Angular
 
Selenium test automation
Selenium test automationSelenium test automation
Selenium test automation
 
Selenium WebDriver
Selenium WebDriverSelenium WebDriver
Selenium WebDriver
 
test_automation_POC
test_automation_POCtest_automation_POC
test_automation_POC
 
Selenium
SeleniumSelenium
Selenium
 
Test automation using selenium
Test automation using seleniumTest automation using selenium
Test automation using selenium
 
Selenium- A Software Testing Tool
Selenium- A Software Testing ToolSelenium- A Software Testing Tool
Selenium- A Software Testing Tool
 
Python selenium
Python seleniumPython selenium
Python selenium
 
Selenium Concepts
Selenium ConceptsSelenium Concepts
Selenium Concepts
 

Similar to What's new in selenium 4

Test Automation Using Selenium
Test Automation Using SeleniumTest Automation Using Selenium
Test Automation Using Selenium
Nikhil Kapoor
 

Similar to What's new in selenium 4 (20)

Selenium - Introduction
Selenium - IntroductionSelenium - Introduction
Selenium - Introduction
 
Selenium.pptx
Selenium.pptxSelenium.pptx
Selenium.pptx
 
Selenium training in chennai
Selenium training in chennaiSelenium training in chennai
Selenium training in chennai
 
Selenium Training in Chennai
Selenium Training in ChennaiSelenium Training in Chennai
Selenium Training in Chennai
 
Selenium
SeleniumSelenium
Selenium
 
Selenium training
Selenium trainingSelenium training
Selenium training
 
Slides for Automation Testing or End to End testing
Slides for Automation Testing or End to End testingSlides for Automation Testing or End to End testing
Slides for Automation Testing or End to End testing
 
Mastering Test Automation: How To Use Selenium Successfully
Mastering Test Automation: How To Use Selenium SuccessfullyMastering Test Automation: How To Use Selenium Successfully
Mastering Test Automation: How To Use Selenium Successfully
 
Selenium.pptx
Selenium.pptxSelenium.pptx
Selenium.pptx
 
selenium-webdriver-interview-questions.pdf
selenium-webdriver-interview-questions.pdfselenium-webdriver-interview-questions.pdf
selenium-webdriver-interview-questions.pdf
 
Selenium Introduction and IDE
Selenium Introduction and IDESelenium Introduction and IDE
Selenium Introduction and IDE
 
Integrating Selenium testing infrastructure into Scala Project
Integrating Selenium testing infrastructure into Scala ProjectIntegrating Selenium testing infrastructure into Scala Project
Integrating Selenium testing infrastructure into Scala Project
 
Selenium using C# by Yogesh Kumar
Selenium using C# by  Yogesh KumarSelenium using C# by  Yogesh Kumar
Selenium using C# by Yogesh Kumar
 
Introduction to selenium
Introduction to seleniumIntroduction to selenium
Introduction to selenium
 
Selenium
SeleniumSelenium
Selenium
 
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdfLesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
 
Test Automation Using Selenium
Test Automation Using SeleniumTest Automation Using Selenium
Test Automation Using Selenium
 
DSL, Page Object и WebDriver – путь к надежным функциональным тестам
DSL, Page Object и WebDriver – путь к надежным функциональным тестамDSL, Page Object и WebDriver – путь к надежным функциональным тестам
DSL, Page Object и WebDriver – путь к надежным функциональным тестам
 
DSL, Page Object and WebDriver – the path to reliable functional tests.pptx
DSL, Page Object and WebDriver – the path to reliable functional tests.pptxDSL, Page Object and WebDriver – the path to reliable functional tests.pptx
DSL, Page Object and WebDriver – the path to reliable functional tests.pptx
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
 

More from Knoldus Inc.

More from Knoldus Inc. (20)

Supply chain security with Kubeclarity.pptx
Supply chain security with Kubeclarity.pptxSupply chain security with Kubeclarity.pptx
Supply chain security with Kubeclarity.pptx
 
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML ParsingMastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
 
Akka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On IntroductionAkka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On Introduction
 
Entity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptxEntity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptx
 
Introduction to Redis and its features.pptx
Introduction to Redis and its features.pptxIntroduction to Redis and its features.pptx
Introduction to Redis and its features.pptx
 
GraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdfGraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdf
 
NuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptxNuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptx
 
Data Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable TestingData Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable Testing
 
K8sGPTThe AI​ way to diagnose Kubernetes
K8sGPTThe AI​ way to diagnose KubernetesK8sGPTThe AI​ way to diagnose Kubernetes
K8sGPTThe AI​ way to diagnose Kubernetes
 
Introduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptxIntroduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptx
 
Robusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptxRobusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptx
 
Optimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptxOptimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptx
 
Azure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptxAzure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptx
 
CQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptxCQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptx
 
ETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake PresentationETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake Presentation
 
Scripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics PresentationScripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics Presentation
 
Getting started with dotnet core Web APIs
Getting started with dotnet core Web APIsGetting started with dotnet core Web APIs
Getting started with dotnet core Web APIs
 
Introduction To Rust part II Presentation
Introduction To Rust part II PresentationIntroduction To Rust part II Presentation
Introduction To Rust part II Presentation
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Configuring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRAConfiguring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRA
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

What's new in selenium 4

  • 1. What's new in selenium 4 Presented by : Ankur Thakur QA Consultant
  • 2. Lack of etiquette and manners is a huge turn off. KnolX Etiquettes Punctuality Respect Knolx session timings, you are requested not to join sessions after a 5 minutes threshold post the session start time. Feedback Make sure to submit a constructive feedback for all sessions as it is very helpful for the presenter. Mute Please keep your window on mute. Avoid Disturbance Avoid leaving your window unmuted after asking a question
  • 3. Our Agenda 01 Small introduction : Selenium 03 Selenium 3 Vs. Selenium 4 Architecture 04 Selenium Vs. Cypress 05 New features in Selenium 4 Demo 02
  • 4. What is selenium? ● Selenium is a free (open-source) automated testing framework used to validate web applications. ● It can be used across different browsers and platforms. ● We can use multiple programming languages like Java, C#, Python etc to write Selenium Test Scripts. ● It can be integrated with tools such as TestNG, JUnit and also with Maven and Jenkins for achieving CI/CD.
  • 5. Selenium 3 Vs. Selenium 4 Architecture
  • 8. Selenium Vs. Cypress ● Selenium uses multiple programming languages like Java, C#, Python etc to write Test Scripts. ● Cypress is a purely JavaScript-based front end testing tool built for the modern web. ● Selenium supports Chrome, IE, Safari, Edge, Firefox, Opera web browsers. ● Cypress supports Chrome, Edge, Firefox(beta), Electron web browsers. ● Selenium supports multiple frameworks based on specific programming languages. (For e.g: JUnit for Java, Cucumber for JavaScript, etc.) ● Cypress only supports Supports only Mocha JS.
  • 9. Selenium Vs. Cypress ● Setting up Selenium is a bit challenging as it requires downloading browser-specific drivers and needs to be updated if we update our browsers. ● Setting up Cypress is simple. No dependencies or additional driver downloads are required.
  • 10. New features in Selenium 4 ● Relative Locators ● Handling Multiple windows and Tabs ● Partial screenshots ● Capturing Height and Width of WebElement (UX validation) ● Chrome DevTools ● W3C WebDriver Protocol
  • 11. Relative Locators ● Locators are used to uniquely identify web elements on a webpage. ● Locators are difficult to maintain. ● Relative locators are easy to use and implement. ● The main advantage of relative locators is finding elements which are difficult to locate i.e elements with no unique attributes which helps us to uniquely identify them. ● Ex- driver.findElement(withTagName("textBox").above(locatorOfSubmitBut ton))
  • 12. Types of Relative Locators ● above() - Used to locate an element just above the specified element ● below() - Used to locate the an element just below the specified element ● toLeftOf() - Used to locate the an element located on the left of a specified element ● toRightOf() - Used to locate the an element located on the right of a specified element ● near() - By default, it is used to locate an element at 50 pixels distant from a specified element.
  • 13. Handling Multiple Windows and Tabs ● Handling and opening new tabs or windows is now possible in selenium. ● We can open new tabs, open links according to our requirement and switch between them as well. ● This can be done with the newWindow() method. ● This helps us in certain situations where we need to automate multiple tabs or multiple windows in a single test case.
  • 14. Handling Multiple Windows and Tabs WebDriver driver = new ChromeDriver(); driver.switchTo().newWindow(WindowType.TAB);
  • 15. Partial screenshots ● We can now take partial screenshots of the web elements. ● This can be done with the getScreenshotAs() method. ● The screenshot is automatically stored in the project’s root level. ● This is mainly helpful in debugging failed tests. Using the screenshots we can identify where and why our tests are failing.
  • 16. Partial screenshots File screenshotFile = userName.getScreenshotAs(OutputType.FILE); FileUtils.copyFile((File) screenshotFile, new File("userNameScreenshot.png"));
  • 17. Capturing Height and Width of WebElement (UX validation) ● We can now use selenium for UX validation. ● We can capture height and width of web elements. ● This can be used to validate size of the elements without manually fetching the details. ● This can be done with the getRect().getHeight() and getRect().getWidth() method. ● This is helpful in validating certain scenarios where we need to verify that the elements are according to the requirements or not.
  • 18. Capturing Height and Width of WebElement (UX validation) System.out.println(userName.getRect().getHeight()); System.out.println(userName.getRect().getWidth());
  • 19. Chrome DevTools ● Chrome DevTools or Developer tools are inbuilt in chrome web browser. ● DevTools can help us track what’s going on in the browser and diagnose any problems. ● DevTools capabilities include: ○ Inspecting Network Activity ○ Handling Developer Options ○ Viewing the DOM ○ Measuring Performance
  • 20. W3C WebDriver Protocol ● W3C webDriver protocol now allows the client and server to interact with each other without JSON wire protocol over HTTP. ● JSON wire protocol over HTTP converts Selenium code to be converted in JSON format and send it to browser drivers. ● Now the Client and server communicates directly without this protocol.
  • 21. Demo
  • 22. Q&A