SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Growing Trends Of Open
Source UI Frameworks
A Quick Introduction
• DanielGiordano
• MarketingManager,CrossBrowserTesting
1
UI Testing Frameworks
Today’s Agenda
• WhatDoWeMeanByAutomationFrameworks
• DifferentTypesOfFrameworks
• SelectingTheRightFramework
• PopularBrowserTestingFrameworks
• NightWatchDemo
UI Testing Frameworks
Page
Proprietary & ConfidentialUI Testing Frameworks
Test Frameworks In SDLC
Requirements Tests Defects
What We Expect Configuration & Test
Definition Sets Environments
Actual Test Results
What is a Test Automation
Framework?
UI Testing Frameworks
Page
Proprietary & ConfidentialUI Testing Frameworks
What is a Test Automation Framework?
It’sasetofrules,tools,andspecificationsthatprovidesupportandeaseoftestingforaparticularproductorapplication.
Many times a test framework is responsible for:
Definingandassertingexpectations
Drivingthetestinteractiontheapplication
Executingthetest
Reportingontests
Page
Proprietary & ConfidentialUI Testing Frameworks
A Framework Is Not A “Shortcut”
Yes it is.
“If what we test is changing, our assertions
should change.”
“If the HTML changes, our Page Objects
should change.”
“If our environments need to change, then our
driver .config file needs to change.
Don’t confuse “Types” of testing
with “Tools” of testing.
UI Testing Frameworks
Page
Proprietary & ConfidentialUI Testing Frameworks
Adding Up An Automation Framework
Assertions
Assertionshelpusmakesuretests
returnexpectedresults.
// Chai expect
expect(foo).to.be.a('string')
expect(foo).to.equal('bar')
Test Runners
Controlsandinteractswithbrowsers
toexecuteframework
.url('http://www.github.com')
.waitForElementVisible('body', 1000)
.setValue('form[action="/search"]
input[name="q"]', 'nightwatch')
.keys(browser.Keys.ENTER)
Test Framework
Aframeworkgivesourteststructure
andcommonsyntax.
describe('#save()', function() {
it('should save without
error', function(done)
}
Page
Proprietary & ConfidentialUI Testing Frameworks
Types Of Automated Testing
End to End TestingUnit Testing
• Smallpiecesofcodetestingsinglefunctions
• Think“noneedforaURLtotest”
• Thinklarger interactionsthatmimichumans
• Testingseveral”unittests”strungtogether
 ”Log In” Button Clicks
Or
 “2+2=4”
 CrossBrowserTesting.com loads
 Click “Log In” Button
 Fill in Username
 Fill in Password
 Click “Log In” Button
Page
Proprietary & ConfidentialUI Testing Frameworks
Unit Testing E2EAutomation
AssertionsRunner
NightWatchJS
WebDriver.IO
Casper.JS
Mocha,
Jasmine
Should
Frameworks
Chai
Siz
e of
= Popularity
Protractor
Page
Proprietary & ConfidentialUI Testing Frameworks
Why Are JavaScript Frameworks So Popular?
Because JavaScript is the language of the web.
Page
Proprietary & ConfidentialUI Testing Frameworks
Downloads of Popular JS Frameworks
Page
Proprietary & Confidential
Let’s Compare Two
UnitTesting Frameworks
UI Testing Frameworks
Mocha Jasmine
Assertion Library Has none out of box. Choose between
Chai, should, better-expect, expect.js
expect(calculator.add(1, 4)).to.equal(5);
Comes out of the box.
expect(calculator.add(1, 4)).toEqual(5);
Spies Has none out of box. Uses Sinon Comes out of the box.
Asynch Testing Does it really well Does it really well in 2.X
BDD/TDD Yes, both. Yes, both.
Community Really active community since it’s the hot
stock on the street.
Older, more mature documentation and
community base
Page
Proprietary & ConfidentialUI Testing Frameworks
Let’s Compare Three
E2E Testing
Nightwatch Protractor WebDriver.IO
Specialty Easy, out of the box set up Angular testing Customization
Architecture Custom implementation of W3C
webdriver JSON wire protocol
Selenium Wrapper Custom implementation of W3C
webdriver JSON wire protocol
Assertion Library Mocha, Its Own Chai, Jasmine, Mocha Chai, Jasmine, Mocha
Parallel Testing Yes Yes Yes
POM Support Yes Yes Yes
Page
Proprietary & ConfidentialUI Testing Frameworks
Critera For Selection
 End to End Capabilities
 Assertions
 BDD/TDD Friendly
 Tool Documentation
 Visual Testing
 CI Integrations
 Dev Language
 App Language
 CloudSupport
Community Size
Style Fit
Technical Fit
Why Run Your Tests In The Cloud
Using CrossBrowserTesting?
UI Testing Frameworks
Page
Proprietary & ConfidentialUI Testing Frameworks
Running In The Cloud
CrossBrowserTesting’s Device Cloud
SeleniumorAppiumscriptsgetcreated
andexecutedasnormal,withonlyafew
changestothecode.
Seleniumsendscommandstoour
browsersandmobiledevicesandwesend
thetestresultsbacktotheuser.
Page
Proprietary & Confidential
19
Selenium Training
Test Coverage Speed No Hassle Cost
Page
Proprietary & Confidential
Test Coverage
20
Selenium Training
• AllMajor Operating Systems
• Windows XP, 7, 8, 10
• Mac 10.3-10.7
• Ubuntu
• 1500+ DesktopBrowsers
• Chrome, Firefox, Safari, Edge, IE 6-11
• RealAndroid & iOS
• iPhone 5, 5 Plus, 6, 6 Plus,7
• iPadPro, Mini, Air2
• Nexus6, 6p, 7, 9
• GalaxyS5, S6, S7
Page
Proprietary & Confidential
Speed
Selenium Training
Test 2Test 2Test 2
Test 3 Test 3 Test 3
When we run automated tests
sequentially we are limited in how
many we can execute in a short period
of time.
Test 1Test 1 Test 1
Test 1
Test 1
Test 1
Test 2
Test 2
Test 2
Test 3
Test 3
Test 3
With parallel test
execution we can test
many cases and
browsers at once.
21
Page
Proprietary & Confidential
Hassle Free
22
Selenium Training
Page
Proprietary & Confidential
Cost
23
That is twentythousand dollars worth
of hardwarein one time.These
phones have atwo yearlife-cycle.
CrossBrowserTesting Introduction
What Does It Look
Like?
UI Testing Frameworks
Page
Proprietary & ConfidentialUI Testing Frameworks
Page
Proprietary & ConfidentialUI Testing Frameworks
Page
Proprietary & ConfidentialUI Testing Frameworks
Test Automation Frameworks In SDLC
Requirements Tests Defects
What We Expect Configuration & Test
Definition Sets Environments
Actual Test Results
Assertions Test Results
Style Cloud
Frameworks
Github.com/crossbrowsertesting
Allofourexamplesandtutorials.
UI Testing Frameworks
Questions?
UI Testing Frameworks
Thank you!
Subtitle

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Run Selenium Tests With Microsoft Test Manager
Run Selenium Tests With Microsoft Test ManagerRun Selenium Tests With Microsoft Test Manager
Run Selenium Tests With Microsoft Test Manager
 
Selenium Tips & Tricks
Selenium Tips & TricksSelenium Tips & Tricks
Selenium Tips & Tricks
 
Getting Started with Selenium
Getting Started with SeleniumGetting Started with Selenium
Getting Started with Selenium
 
Watir
WatirWatir
Watir
 
Selenium
SeleniumSelenium
Selenium
 
Automation using Javascript
Automation using JavascriptAutomation using Javascript
Automation using Javascript
 
Cross-Browser-Testing with Protractor & Browserstack
Cross-Browser-Testing with Protractor & BrowserstackCross-Browser-Testing with Protractor & Browserstack
Cross-Browser-Testing with Protractor & Browserstack
 
Testing with Jenkins, Selenium and Continuous Deployment
Testing with Jenkins, Selenium and Continuous DeploymentTesting with Jenkins, Selenium and Continuous Deployment
Testing with Jenkins, Selenium and Continuous Deployment
 
Agile test-management-test-rail-lastest
Agile test-management-test-rail-lastestAgile test-management-test-rail-lastest
Agile test-management-test-rail-lastest
 
Selenium Interview Questions and Answers For Freshers And Experienced | Edureka
Selenium Interview Questions and Answers For Freshers And Experienced | EdurekaSelenium Interview Questions and Answers For Freshers And Experienced | Edureka
Selenium Interview Questions and Answers For Freshers And Experienced | Edureka
 
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
 
Automated Testing using JavaScript
Automated Testing using JavaScriptAutomated Testing using JavaScript
Automated Testing using JavaScript
 
What's new in selenium 4
What's new in selenium 4What's new in selenium 4
What's new in selenium 4
 
Test Automation Frameworks Using Selenium | Edureka
Test Automation Frameworks Using Selenium | EdurekaTest Automation Frameworks Using Selenium | Edureka
Test Automation Frameworks Using Selenium | Edureka
 
Cross Browser Testing with Cypress
Cross Browser Testing with CypressCross Browser Testing with Cypress
Cross Browser Testing with Cypress
 
Testing Salesforce at Cloud Scale
Testing Salesforce at Cloud ScaleTesting Salesforce at Cloud Scale
Testing Salesforce at Cloud Scale
 
How ANDROID TESTING changed how we think about Death - Second Edition
How ANDROID TESTING changed how we think about Death - Second EditionHow ANDROID TESTING changed how we think about Death - Second Edition
How ANDROID TESTING changed how we think about Death - Second Edition
 
Selenium Architecture
Selenium ArchitectureSelenium Architecture
Selenium Architecture
 
A Look into Automated Web UI Test
A Look into Automated Web UI TestA Look into Automated Web UI Test
A Look into Automated Web UI Test
 
Best java automation training institute in Bangalore - Selenium Labs
Best java automation training institute in Bangalore - Selenium Labs Best java automation training institute in Bangalore - Selenium Labs
Best java automation training institute in Bangalore - Selenium Labs
 

Ähnlich wie Growing Trends of Open Source UI Frameworks

Agile Testing at eBay
Agile Testing at eBayAgile Testing at eBay
Agile Testing at eBay
Dominik Dary
 
Sweta_Tarekar_Resume
Sweta_Tarekar_ResumeSweta_Tarekar_Resume
Sweta_Tarekar_Resume
sweta tarekar
 
Enhancing Website and Application Testing with Java Scrapers.pdf
Enhancing Website and Application Testing with Java Scrapers.pdfEnhancing Website and Application Testing with Java Scrapers.pdf
Enhancing Website and Application Testing with Java Scrapers.pdf
AnanthReddy38
 

Ähnlich wie Growing Trends of Open Source UI Frameworks (20)

Web Test Automation Framework - IndicThreads Conference
Web Test Automation Framework  - IndicThreads ConferenceWeb Test Automation Framework  - IndicThreads Conference
Web Test Automation Framework - IndicThreads Conference
 
Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development Webinar: Automate Your Environment Provisioning for Mobile App Development
Webinar: Automate Your Environment Provisioning for Mobile App Development
 
Colorful world-of-visual-automation-testing-latest
Colorful world-of-visual-automation-testing-latestColorful world-of-visual-automation-testing-latest
Colorful world-of-visual-automation-testing-latest
 
Agile Testing at eBay
Agile Testing at eBayAgile Testing at eBay
Agile Testing at eBay
 
Microsoft power point automation-opensourcetestingtools_matrix-1
Microsoft power point   automation-opensourcetestingtools_matrix-1Microsoft power point   automation-opensourcetestingtools_matrix-1
Microsoft power point automation-opensourcetestingtools_matrix-1
 
Microsoft power point automation-opensourcetestingtools_matrix-1
Microsoft power point   automation-opensourcetestingtools_matrix-1Microsoft power point   automation-opensourcetestingtools_matrix-1
Microsoft power point automation-opensourcetestingtools_matrix-1
 
Software Testing Tools Training
Software Testing Tools TrainingSoftware Testing Tools Training
Software Testing Tools Training
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
Modern e2e-testing-for-complex-web-applications-with-cypressio
Modern e2e-testing-for-complex-web-applications-with-cypressioModern e2e-testing-for-complex-web-applications-with-cypressio
Modern e2e-testing-for-complex-web-applications-with-cypressio
 
Introduction To Cypress | Differences Between Cypress & Selenium
Introduction To Cypress | Differences Between Cypress & SeleniumIntroduction To Cypress | Differences Between Cypress & Selenium
Introduction To Cypress | Differences Between Cypress & Selenium
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
Sweta_Tarekar_Resume
Sweta_Tarekar_ResumeSweta_Tarekar_Resume
Sweta_Tarekar_Resume
 
Sauce Labs+Applitools - Automated Visual Testing in the Cloud
Sauce Labs+Applitools - Automated Visual Testing in the CloudSauce Labs+Applitools - Automated Visual Testing in the Cloud
Sauce Labs+Applitools - Automated Visual Testing in the Cloud
 
Enhancing Website and Application Testing with Java Scrapers.pdf
Enhancing Website and Application Testing with Java Scrapers.pdfEnhancing Website and Application Testing with Java Scrapers.pdf
Enhancing Website and Application Testing with Java Scrapers.pdf
 
Selenium Introduction and IDE
Selenium Introduction and IDESelenium Introduction and IDE
Selenium Introduction and IDE
 
Coding Naked
Coding NakedCoding Naked
Coding Naked
 
Mastering Cross-Browser Test Automation With Cypress and Selenium
Mastering Cross-Browser Test Automation With Cypress and SeleniumMastering Cross-Browser Test Automation With Cypress and Selenium
Mastering Cross-Browser Test Automation With Cypress and Selenium
 
10 Useful Testing Tools for Open Source Projects @ TuxCon 2015
10 Useful Testing Tools for Open Source Projects @ TuxCon 201510 Useful Testing Tools for Open Source Projects @ TuxCon 2015
10 Useful Testing Tools for Open Source Projects @ TuxCon 2015
 
33rd degree
33rd degree33rd degree
33rd degree
 

Mehr von SmartBear

Mehr von SmartBear (20)

Enforcing Your Organization's API Design Standards with SwaggerHub
Enforcing Your Organization's API Design Standards with SwaggerHubEnforcing Your Organization's API Design Standards with SwaggerHub
Enforcing Your Organization's API Design Standards with SwaggerHub
 
Introducing OpenAPI Version 3.1
Introducing OpenAPI Version 3.1Introducing OpenAPI Version 3.1
Introducing OpenAPI Version 3.1
 
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
 
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
 
How LISI Automotive Accelerated Application Delivery with SwaggerHub
How LISI Automotive Accelerated Application Delivery with SwaggerHubHow LISI Automotive Accelerated Application Delivery with SwaggerHub
How LISI Automotive Accelerated Application Delivery with SwaggerHub
 
Standardising APIs: Powering the Platform Economy in Financial Services
Standardising APIs: Powering the Platform Economy in Financial ServicesStandardising APIs: Powering the Platform Economy in Financial Services
Standardising APIs: Powering the Platform Economy in Financial Services
 
Getting Started with API Standardization in SwaggerHub
Getting Started with API Standardization in SwaggerHubGetting Started with API Standardization in SwaggerHub
Getting Started with API Standardization in SwaggerHub
 
Adopting a Design-First Approach to API Development with SwaggerHub
Adopting a Design-First Approach to API Development with SwaggerHubAdopting a Design-First Approach to API Development with SwaggerHub
Adopting a Design-First Approach to API Development with SwaggerHub
 
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
 
Effective API Lifecycle Management
Effective API Lifecycle Management Effective API Lifecycle Management
Effective API Lifecycle Management
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
 
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
 
Artificial intelligence for faster and smarter software testing - Galway Mee...
Artificial intelligence for faster and smarter software testing  - Galway Mee...Artificial intelligence for faster and smarter software testing  - Galway Mee...
Artificial intelligence for faster and smarter software testing - Galway Mee...
 
Successfully Implementing BDD in an Agile World
Successfully Implementing BDD in an Agile WorldSuccessfully Implementing BDD in an Agile World
Successfully Implementing BDD in an Agile World
 
The Best Kept Secrets of Code Review | SmartBear Webinar
The Best Kept Secrets of Code Review | SmartBear WebinarThe Best Kept Secrets of Code Review | SmartBear Webinar
The Best Kept Secrets of Code Review | SmartBear Webinar
 
How Capital One Scaled API Design to Deliver New Products Faster
How Capital One Scaled API Design to Deliver New Products FasterHow Capital One Scaled API Design to Deliver New Products Faster
How Capital One Scaled API Design to Deliver New Products Faster
 
Testing Without a GUI Using TestComplete
 Testing Without a GUI Using TestComplete Testing Without a GUI Using TestComplete
Testing Without a GUI Using TestComplete
 
Hidden Treasure - TestComplete Script Extensions
Hidden Treasure - TestComplete Script ExtensionsHidden Treasure - TestComplete Script Extensions
Hidden Treasure - TestComplete Script Extensions
 
How Bdd Can Save Agile
 How Bdd Can Save Agile How Bdd Can Save Agile
How Bdd Can Save Agile
 
API Automation and TDD to Implement Master Data Survivorship Rules
API Automation and TDD to Implement Master Data Survivorship RulesAPI Automation and TDD to Implement Master Data Survivorship Rules
API Automation and TDD to Implement Master Data Survivorship Rules
 

Kürzlich hochgeladen

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Kürzlich hochgeladen (20)

HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 

Growing Trends of Open Source UI Frameworks

  • 1. Growing Trends Of Open Source UI Frameworks
  • 2. A Quick Introduction • DanielGiordano • MarketingManager,CrossBrowserTesting 1 UI Testing Frameworks
  • 3. Today’s Agenda • WhatDoWeMeanByAutomationFrameworks • DifferentTypesOfFrameworks • SelectingTheRightFramework • PopularBrowserTestingFrameworks • NightWatchDemo UI Testing Frameworks
  • 4. Page Proprietary & ConfidentialUI Testing Frameworks Test Frameworks In SDLC Requirements Tests Defects What We Expect Configuration & Test Definition Sets Environments Actual Test Results
  • 5. What is a Test Automation Framework? UI Testing Frameworks
  • 6. Page Proprietary & ConfidentialUI Testing Frameworks What is a Test Automation Framework? It’sasetofrules,tools,andspecificationsthatprovidesupportandeaseoftestingforaparticularproductorapplication. Many times a test framework is responsible for: Definingandassertingexpectations Drivingthetestinteractiontheapplication Executingthetest Reportingontests
  • 7. Page Proprietary & ConfidentialUI Testing Frameworks A Framework Is Not A “Shortcut” Yes it is. “If what we test is changing, our assertions should change.” “If the HTML changes, our Page Objects should change.” “If our environments need to change, then our driver .config file needs to change.
  • 8. Don’t confuse “Types” of testing with “Tools” of testing. UI Testing Frameworks
  • 9. Page Proprietary & ConfidentialUI Testing Frameworks Adding Up An Automation Framework Assertions Assertionshelpusmakesuretests returnexpectedresults. // Chai expect expect(foo).to.be.a('string') expect(foo).to.equal('bar') Test Runners Controlsandinteractswithbrowsers toexecuteframework .url('http://www.github.com') .waitForElementVisible('body', 1000) .setValue('form[action="/search"] input[name="q"]', 'nightwatch') .keys(browser.Keys.ENTER) Test Framework Aframeworkgivesourteststructure andcommonsyntax. describe('#save()', function() { it('should save without error', function(done) }
  • 10. Page Proprietary & ConfidentialUI Testing Frameworks Types Of Automated Testing End to End TestingUnit Testing • Smallpiecesofcodetestingsinglefunctions • Think“noneedforaURLtotest” • Thinklarger interactionsthatmimichumans • Testingseveral”unittests”strungtogether  ”Log In” Button Clicks Or  “2+2=4”  CrossBrowserTesting.com loads  Click “Log In” Button  Fill in Username  Fill in Password  Click “Log In” Button
  • 11. Page Proprietary & ConfidentialUI Testing Frameworks Unit Testing E2EAutomation AssertionsRunner NightWatchJS WebDriver.IO Casper.JS Mocha, Jasmine Should Frameworks Chai Siz e of = Popularity Protractor
  • 12. Page Proprietary & ConfidentialUI Testing Frameworks Why Are JavaScript Frameworks So Popular? Because JavaScript is the language of the web.
  • 13. Page Proprietary & ConfidentialUI Testing Frameworks Downloads of Popular JS Frameworks
  • 14. Page Proprietary & Confidential Let’s Compare Two UnitTesting Frameworks UI Testing Frameworks Mocha Jasmine Assertion Library Has none out of box. Choose between Chai, should, better-expect, expect.js expect(calculator.add(1, 4)).to.equal(5); Comes out of the box. expect(calculator.add(1, 4)).toEqual(5); Spies Has none out of box. Uses Sinon Comes out of the box. Asynch Testing Does it really well Does it really well in 2.X BDD/TDD Yes, both. Yes, both. Community Really active community since it’s the hot stock on the street. Older, more mature documentation and community base
  • 15. Page Proprietary & ConfidentialUI Testing Frameworks Let’s Compare Three E2E Testing Nightwatch Protractor WebDriver.IO Specialty Easy, out of the box set up Angular testing Customization Architecture Custom implementation of W3C webdriver JSON wire protocol Selenium Wrapper Custom implementation of W3C webdriver JSON wire protocol Assertion Library Mocha, Its Own Chai, Jasmine, Mocha Chai, Jasmine, Mocha Parallel Testing Yes Yes Yes POM Support Yes Yes Yes
  • 16. Page Proprietary & ConfidentialUI Testing Frameworks Critera For Selection  End to End Capabilities  Assertions  BDD/TDD Friendly  Tool Documentation  Visual Testing  CI Integrations  Dev Language  App Language  CloudSupport Community Size Style Fit Technical Fit
  • 17. Why Run Your Tests In The Cloud Using CrossBrowserTesting? UI Testing Frameworks
  • 18. Page Proprietary & ConfidentialUI Testing Frameworks Running In The Cloud CrossBrowserTesting’s Device Cloud SeleniumorAppiumscriptsgetcreated andexecutedasnormal,withonlyafew changestothecode. Seleniumsendscommandstoour browsersandmobiledevicesandwesend thetestresultsbacktotheuser.
  • 19. Page Proprietary & Confidential 19 Selenium Training Test Coverage Speed No Hassle Cost
  • 20. Page Proprietary & Confidential Test Coverage 20 Selenium Training • AllMajor Operating Systems • Windows XP, 7, 8, 10 • Mac 10.3-10.7 • Ubuntu • 1500+ DesktopBrowsers • Chrome, Firefox, Safari, Edge, IE 6-11 • RealAndroid & iOS • iPhone 5, 5 Plus, 6, 6 Plus,7 • iPadPro, Mini, Air2 • Nexus6, 6p, 7, 9 • GalaxyS5, S6, S7
  • 21. Page Proprietary & Confidential Speed Selenium Training Test 2Test 2Test 2 Test 3 Test 3 Test 3 When we run automated tests sequentially we are limited in how many we can execute in a short period of time. Test 1Test 1 Test 1 Test 1 Test 1 Test 1 Test 2 Test 2 Test 2 Test 3 Test 3 Test 3 With parallel test execution we can test many cases and browsers at once. 21
  • 22. Page Proprietary & Confidential Hassle Free 22 Selenium Training
  • 23. Page Proprietary & Confidential Cost 23 That is twentythousand dollars worth of hardwarein one time.These phones have atwo yearlife-cycle. CrossBrowserTesting Introduction
  • 24. What Does It Look Like? UI Testing Frameworks
  • 25. Page Proprietary & ConfidentialUI Testing Frameworks
  • 26. Page Proprietary & ConfidentialUI Testing Frameworks
  • 27. Page Proprietary & ConfidentialUI Testing Frameworks Test Automation Frameworks In SDLC Requirements Tests Defects What We Expect Configuration & Test Definition Sets Environments Actual Test Results Assertions Test Results Style Cloud Frameworks

Hinweis der Redaktion

  1. Let’s bring it back. We know about the various aspects of a testing framework as it fits in the SDLC, and this webinar is not meant to confuse you with muddying that word, though it will be muddied. This webinar will deal with open-source test automation frameworks, or rather tools, as they quickly rise to prominence in the testing community.
  2. We will combine Assertion Libraries, Unit Testing and E2E testing together as Test Frameworks
  3. But it builds good architecture. Throw off the stigma
  4. Test tools can be divided into the following functionalities. Some provide us with only one functionality, and some provide us with a combination. It’s common to use a combination of tools even if one can achieve the same using a single tool in order to get a more flexible functionality. There are also Spies, Stubbing or Mocking, and Code Coverage tools that are included in the testing tool chain.
  5. NightwatchJS WebDriver.IO WebDriverCSS, for visual testing
  6. Let’s bring it back. We know about the various aspects of a testing framework as it fits in the SDLC, and this webinar is not meant to confuse you with muddying that word, though it will be muddied. This webinar will deal with open-source test automation frameworks, or rather tools, as they quickly rise to prominence in the testing community.