SlideShare uma empresa Scribd logo
1 de 18
UI Testing Automation
2CreamTec
DO BUGS HURT?
3CreamTec
WHERE TO TEST?
4CreamTec
TEST UI IN A REAL BROWSER
• Execute JavaScript and see ALL errors
• Load all resources (images, CSS)
• Test layouts and CSS properties
• Check colors and fonts
• Verify quirks of each browser type and version
• Is the ONLY way to be sure UI looks and works right
5CreamTec
UI TESTING TOOLS
Frameworks
• Selenium browser automation
through WebDriver API
• QUnit unit testing JavaScript
inside and outside the browser
• CasperJS unit testing JavaScript
inside a headless browser
• GWTTestCase uses invisible
browser to run Java tests
Test Case Example
public class Example {
public static void main(String[] args) {
// Create a new instance of the html unit driver
WebDriver driver = new HtmlUnitDriver();
// And now use this to visit Google
driver.get("http://www.google.com");
// Find the text input element by its name
WebElement element = driver.findElement(By.name("q"));
// Enter something to search for
element.sendKeys("Cheese!");
// Now submit the form
element.submit();
// Verify result
assertTrue(selenium.isTextPresent(“Welcome"));
}
}
6CreamTec
UI TESTING TOOLS
Products
• QuickTestPro feature rich IDE for
functional and regression testing
• Rational Test Workbench
functional, load and regression
testing from IBM
• SilkTest suite of testing products
targeting simplicity
Test Case Example
SystemUtil.Run "IEXPLORE.EXE","www. perfumes.com"
Wait 5
Set myBrowser=Browser("Perfumes-Discount perfume")
If myBrowser.Page("Perfumes-Discount
perfume").Link("Login").Exist(3) Then
Reporter.ReportEvent 0,"Res","Login Link Exists"
Else
Reporter.ReportEvent 1,"Res","Login Link Not Exists"
End If
7CreamTec
HOW ABOUT THE REAL WORLD?
8CreamTec
TESTING IN REAL WORLD
9CreamTec
UI AUTOMATION CHALLENGES
• Requires development skills (HTML/CSS/JavaScript/XPath)
• Requires knowledge of UI internals (id, structure, validation)
• Test creation takes too long
• Tests duplicate app logic
• Tests get out of sync and maintenance is tedious
• Takes too long to deal with UI changes
• Tests development delays releases
• Tools are not productive and too complex
10CreamTec
VISUAL TESTING
• 10x productivity gain compared to traditional testing
• Automation of how you already test instead of learning how to use a tool
• Empower non-technical people to build and maintain tests
• Full access to Selenium API when needed
• Web based shared environment
11CreamTec
GMAIL TEST AUTOMATION
12CreamTec
VISUAL TESTING
13CreamTec
GMAIL TEST AUTOMATION
14CreamTec
WHAT CHANGED?
15CreamTec
GMAIL TEST AUTOMATION
16CreamTec
GMAIL TEST AUTOMATION
17CreamTec
VISUAL DIFF
18CreamTec
CONCLUSIONS
• Don’t fall into manual testing trap
• Test business logic with API and unit
tests in native language (JUnit etc)
• Test complex JavaScript logic with
JavaScript unit tests (QUnit/CasperJS)
• Cover production UI with visual tests
(Screenster)

Mais conteúdo relacionado

Mais procurados

Automation Best Practices
Automation Best PracticesAutomation Best Practices
Automation Best PracticesSauce Labs
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Ankit Prajapati
 
An overview of selenium webdriver
An overview of selenium webdriverAn overview of selenium webdriver
An overview of selenium webdriverAnuraj S.L
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API TestingSauce Labs
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test AutomationPekka Klärck
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation TestingArchana Krushnan
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual TestingDirecti Group
 
Automated vs manual testing
Automated vs manual testingAutomated vs manual testing
Automated vs manual testingKanoah
 
software testing
 software testing software testing
software testingSara shall
 
Automation testing introduction for FujiNet
Automation testing introduction for FujiNetAutomation testing introduction for FujiNet
Automation testing introduction for FujiNetHai Tran Son
 
API Testing: The heart of functional testing" with Bj Rollison
API Testing: The heart of functional testing" with Bj RollisonAPI Testing: The heart of functional testing" with Bj Rollison
API Testing: The heart of functional testing" with Bj RollisonTEST Huddle
 
Test Automation
Test AutomationTest Automation
Test Automationrockoder
 

Mais procurados (20)

Automation Best Practices
Automation Best PracticesAutomation Best Practices
Automation Best Practices
 
Introduction to Selenium Web Driver
Introduction to Selenium Web DriverIntroduction to Selenium Web Driver
Introduction to Selenium Web Driver
 
API Testing for everyone.pptx
API Testing for everyone.pptxAPI Testing for everyone.pptx
API Testing for everyone.pptx
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
An overview of selenium webdriver
An overview of selenium webdriverAn overview of selenium webdriver
An overview of selenium webdriver
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test Automation
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Serenity-BDD training
Serenity-BDD trainingSerenity-BDD training
Serenity-BDD training
 
API Testing
API TestingAPI Testing
API Testing
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Selenium
SeleniumSelenium
Selenium
 
Automated vs manual testing
Automated vs manual testingAutomated vs manual testing
Automated vs manual testing
 
software testing
 software testing software testing
software testing
 
Test Automation in Agile
Test Automation in AgileTest Automation in Agile
Test Automation in Agile
 
Automation testing introduction for FujiNet
Automation testing introduction for FujiNetAutomation testing introduction for FujiNet
Automation testing introduction for FujiNet
 
API Testing: The heart of functional testing" with Bj Rollison
API Testing: The heart of functional testing" with Bj RollisonAPI Testing: The heart of functional testing" with Bj Rollison
API Testing: The heart of functional testing" with Bj Rollison
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Test Automation
Test AutomationTest Automation
Test Automation
 

Destaque

Web UI test automation instruments
Web UI test automation instrumentsWeb UI test automation instruments
Web UI test automation instrumentsArtem Nagornyi
 
UI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLCUI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLCJim Lane
 
AgileEngine Startup Stories
AgileEngine Startup StoriesAgileEngine Startup Stories
AgileEngine Startup StoriesAgileEngine
 
Accessibility and the importance of user testing
Accessibility and the importance of user testingAccessibility and the importance of user testing
Accessibility and the importance of user testingRuss Weakley
 
Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015Henny Swan
 
Unit testing in JavaScript with Jasmine and Karma
Unit testing in JavaScript with Jasmine and KarmaUnit testing in JavaScript with Jasmine and Karma
Unit testing in JavaScript with Jasmine and KarmaAndrey Kolodnitsky
 
SeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With SeleniumSeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With Seleniumadamcarmi
 
Angularjs - Unit testing introduction
Angularjs - Unit testing introductionAngularjs - Unit testing introduction
Angularjs - Unit testing introductionNir Kaufman
 
JavaScript TDD with Jasmine and Karma
JavaScript TDD with Jasmine and KarmaJavaScript TDD with Jasmine and Karma
JavaScript TDD with Jasmine and KarmaChristopher Bartling
 
Introduction to UI Automation Framework
Introduction to UI Automation FrameworkIntroduction to UI Automation Framework
Introduction to UI Automation FrameworkPriya Rajagopal
 
BDD presentation
BDD presentationBDD presentation
BDD presentationtemebele
 
Introduction To Web Accessibility
Introduction To Web AccessibilityIntroduction To Web Accessibility
Introduction To Web AccessibilitySteven Swafford
 
Автоматизируем GUI тесты на питоне
Автоматизируем GUI тесты на питонеАвтоматизируем GUI тесты на питоне
Автоматизируем GUI тесты на питонеSQALab
 
User Interface Testing | Best Practices
User Interface Testing | Best Practices User Interface Testing | Best Practices
User Interface Testing | Best Practices David Tzemach
 
Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Lars Thorup
 
Introduction to Accessibility Testing - CSUN14
Introduction to Accessibility Testing - CSUN14Introduction to Accessibility Testing - CSUN14
Introduction to Accessibility Testing - CSUN14Patrick Dunphy
 

Destaque (20)

Web UI test automation instruments
Web UI test automation instrumentsWeb UI test automation instruments
Web UI test automation instruments
 
Coded ui test
Coded ui testCoded ui test
Coded ui test
 
Beyond QA
Beyond QABeyond QA
Beyond QA
 
UI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLCUI Testing Automation - Alex Kalinovsky - CreamTec LLC
UI Testing Automation - Alex Kalinovsky - CreamTec LLC
 
AgileEngine Startup Stories
AgileEngine Startup StoriesAgileEngine Startup Stories
AgileEngine Startup Stories
 
Eclipse UI automation
Eclipse UI automationEclipse UI automation
Eclipse UI automation
 
Accessibility and the importance of user testing
Accessibility and the importance of user testingAccessibility and the importance of user testing
Accessibility and the importance of user testing
 
Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015Introduction to mobile accessibility, 2015
Introduction to mobile accessibility, 2015
 
Unit testing in JavaScript with Jasmine and Karma
Unit testing in JavaScript with Jasmine and KarmaUnit testing in JavaScript with Jasmine and Karma
Unit testing in JavaScript with Jasmine and Karma
 
SeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With SeleniumSeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With Selenium
 
Angularjs - Unit testing introduction
Angularjs - Unit testing introductionAngularjs - Unit testing introduction
Angularjs - Unit testing introduction
 
Karma - JS Test Runner
Karma - JS Test RunnerKarma - JS Test Runner
Karma - JS Test Runner
 
JavaScript TDD with Jasmine and Karma
JavaScript TDD with Jasmine and KarmaJavaScript TDD with Jasmine and Karma
JavaScript TDD with Jasmine and Karma
 
Introduction to UI Automation Framework
Introduction to UI Automation FrameworkIntroduction to UI Automation Framework
Introduction to UI Automation Framework
 
BDD presentation
BDD presentationBDD presentation
BDD presentation
 
Introduction To Web Accessibility
Introduction To Web AccessibilityIntroduction To Web Accessibility
Introduction To Web Accessibility
 
Автоматизируем GUI тесты на питоне
Автоматизируем GUI тесты на питонеАвтоматизируем GUI тесты на питоне
Автоматизируем GUI тесты на питоне
 
User Interface Testing | Best Practices
User Interface Testing | Best Practices User Interface Testing | Best Practices
User Interface Testing | Best Practices
 
Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)
 
Introduction to Accessibility Testing - CSUN14
Introduction to Accessibility Testing - CSUN14Introduction to Accessibility Testing - CSUN14
Introduction to Accessibility Testing - CSUN14
 

Semelhante a UI Testing Automation

Testing Ext JS and Sencha Touch
Testing Ext JS and Sencha TouchTesting Ext JS and Sencha Touch
Testing Ext JS and Sencha TouchMats Bryntse
 
Testing ASP.NET - Progressive.NET
Testing ASP.NET - Progressive.NETTesting ASP.NET - Progressive.NET
Testing ASP.NET - Progressive.NETBen Hall
 
Java script unit testing
Java script unit testingJava script unit testing
Java script unit testingMats Bryntse
 
Browser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.jsBrowser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.jsLuís Bastião Silva
 
Cross Platform Appium Tests: How To
Cross Platform Appium Tests: How ToCross Platform Appium Tests: How To
Cross Platform Appium Tests: How ToGlobalLogic Ukraine
 
Advanced Coded UI Testing
Advanced Coded UI TestingAdvanced Coded UI Testing
Advanced Coded UI TestingShai Raiten
 
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 SuccessfullySpringPeople
 
The what, why and how of web analytics testing
The what, why and how of web analytics testingThe what, why and how of web analytics testing
The what, why and how of web analytics testingAnand Bagmar
 
Good practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium testsGood practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium testsAbhijeet Vaikar
 
1,2,3 … Testing : Is this thing on(line)? with Mike Martin
1,2,3 … Testing : Is this thing on(line)? with Mike Martin1,2,3 … Testing : Is this thing on(line)? with Mike Martin
1,2,3 … Testing : Is this thing on(line)? with Mike MartinNETUserGroupBern
 
Top100summit 谷歌-scott-improve your automated web application testing
Top100summit  谷歌-scott-improve your automated web application testingTop100summit  谷歌-scott-improve your automated web application testing
Top100summit 谷歌-scott-improve your automated web application testingdrewz lin
 
Knowledge of web ui for automation testing
Knowledge  of web ui for automation testingKnowledge  of web ui for automation testing
Knowledge of web ui for automation testingArtem Korchevyi
 
Create an architecture for web test automation
Create an architecture for web test automationCreate an architecture for web test automation
Create an architecture for web test automationElias Nogueira
 
Test automation introduction training at Polteq
Test automation   introduction training at PolteqTest automation   introduction training at Polteq
Test automation introduction training at PolteqMartijn de Vrieze
 
Session on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh GundechaSession on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh GundechaAgile Testing Alliance
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Timothy Fisher
 
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...seleniumconf
 
Automated Testing using JavaScript
Automated Testing using JavaScriptAutomated Testing using JavaScript
Automated Testing using JavaScriptSimon Guest
 

Semelhante a UI Testing Automation (20)

Testing Ext JS and Sencha Touch
Testing Ext JS and Sencha TouchTesting Ext JS and Sencha Touch
Testing Ext JS and Sencha Touch
 
Testing ASP.NET - Progressive.NET
Testing ASP.NET - Progressive.NETTesting ASP.NET - Progressive.NET
Testing ASP.NET - Progressive.NET
 
Java script unit testing
Java script unit testingJava script unit testing
Java script unit testing
 
orcreatehappyusers
orcreatehappyusersorcreatehappyusers
orcreatehappyusers
 
orcreatehappyusers
orcreatehappyusersorcreatehappyusers
orcreatehappyusers
 
Browser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.jsBrowser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.js
 
Cross Platform Appium Tests: How To
Cross Platform Appium Tests: How ToCross Platform Appium Tests: How To
Cross Platform Appium Tests: How To
 
Advanced Coded UI Testing
Advanced Coded UI TestingAdvanced Coded UI Testing
Advanced Coded UI 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
 
The what, why and how of web analytics testing
The what, why and how of web analytics testingThe what, why and how of web analytics testing
The what, why and how of web analytics testing
 
Good practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium testsGood practices for debugging Selenium and Appium tests
Good practices for debugging Selenium and Appium tests
 
1,2,3 … Testing : Is this thing on(line)? with Mike Martin
1,2,3 … Testing : Is this thing on(line)? with Mike Martin1,2,3 … Testing : Is this thing on(line)? with Mike Martin
1,2,3 … Testing : Is this thing on(line)? with Mike Martin
 
Top100summit 谷歌-scott-improve your automated web application testing
Top100summit  谷歌-scott-improve your automated web application testingTop100summit  谷歌-scott-improve your automated web application testing
Top100summit 谷歌-scott-improve your automated web application testing
 
Knowledge of web ui for automation testing
Knowledge  of web ui for automation testingKnowledge  of web ui for automation testing
Knowledge of web ui for automation testing
 
Create an architecture for web test automation
Create an architecture for web test automationCreate an architecture for web test automation
Create an architecture for web test automation
 
Test automation introduction training at Polteq
Test automation   introduction training at PolteqTest automation   introduction training at Polteq
Test automation introduction training at Polteq
 
Session on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh GundechaSession on Selenium Powertools by Unmesh Gundecha
Session on Selenium Powertools by Unmesh Gundecha
 
Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011Developing High Performance Web Apps - CodeMash 2011
Developing High Performance Web Apps - CodeMash 2011
 
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
Testing Rapidly Changing Applications With Self-Testing Object-Oriented Selen...
 
Automated Testing using JavaScript
Automated Testing using JavaScriptAutomated Testing using JavaScript
Automated Testing using JavaScript
 

Último

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 

Último (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 

UI Testing Automation

  • 4. 4CreamTec TEST UI IN A REAL BROWSER • Execute JavaScript and see ALL errors • Load all resources (images, CSS) • Test layouts and CSS properties • Check colors and fonts • Verify quirks of each browser type and version • Is the ONLY way to be sure UI looks and works right
  • 5. 5CreamTec UI TESTING TOOLS Frameworks • Selenium browser automation through WebDriver API • QUnit unit testing JavaScript inside and outside the browser • CasperJS unit testing JavaScript inside a headless browser • GWTTestCase uses invisible browser to run Java tests Test Case Example public class Example { public static void main(String[] args) { // Create a new instance of the html unit driver WebDriver driver = new HtmlUnitDriver(); // And now use this to visit Google driver.get("http://www.google.com"); // Find the text input element by its name WebElement element = driver.findElement(By.name("q")); // Enter something to search for element.sendKeys("Cheese!"); // Now submit the form element.submit(); // Verify result assertTrue(selenium.isTextPresent(“Welcome")); } }
  • 6. 6CreamTec UI TESTING TOOLS Products • QuickTestPro feature rich IDE for functional and regression testing • Rational Test Workbench functional, load and regression testing from IBM • SilkTest suite of testing products targeting simplicity Test Case Example SystemUtil.Run "IEXPLORE.EXE","www. perfumes.com" Wait 5 Set myBrowser=Browser("Perfumes-Discount perfume") If myBrowser.Page("Perfumes-Discount perfume").Link("Login").Exist(3) Then Reporter.ReportEvent 0,"Res","Login Link Exists" Else Reporter.ReportEvent 1,"Res","Login Link Not Exists" End If
  • 9. 9CreamTec UI AUTOMATION CHALLENGES • Requires development skills (HTML/CSS/JavaScript/XPath) • Requires knowledge of UI internals (id, structure, validation) • Test creation takes too long • Tests duplicate app logic • Tests get out of sync and maintenance is tedious • Takes too long to deal with UI changes • Tests development delays releases • Tools are not productive and too complex
  • 10. 10CreamTec VISUAL TESTING • 10x productivity gain compared to traditional testing • Automation of how you already test instead of learning how to use a tool • Empower non-technical people to build and maintain tests • Full access to Selenium API when needed • Web based shared environment
  • 18. 18CreamTec CONCLUSIONS • Don’t fall into manual testing trap • Test business logic with API and unit tests in native language (JUnit etc) • Test complex JavaScript logic with JavaScript unit tests (QUnit/CasperJS) • Cover production UI with visual tests (Screenster)

Notas do Editor

  1. Sourcing Line Computer Economics http://www.statisticbrain.com/outsourcing-statistics-by-country/Deloitte’s 2012 Global Outsourcing and Insourcing Survey http://deloitte.wsj.com/cfo/2012/09/18/outsourcing-becoming-standard-business-strategy-for-many-companies/
  2. Gartner,Inc - http://www.gartner.com/newsroom/id/1500514
  3. Gartner's 30 Leading Locations for Offshore Services - http://www.prominente.com.ar/pdfs/centrodesarrollo/Gartners%2030%20Leading%20Locations%20for%20Offshore%20Services..pdf pages#2-3
  4. The Global Innovation Index 2013 – http://www.wipo.int/export/sites/www/freepublications/en/economics/gii/gii_2013.pdfUS - page 264Brazil - page 172Mexico - page 237Argentina - page 133Colombia - page 182China - page 157Philippines - 256India - page 211Malaysia - page 233Poland - page 256Hungary - page 209Russia - page 261Ukraine - page 285Romania - page 260Czech Republic - page 187
  5. The Global Innovation Index 2013 – http://www.wipo.int/export/sites/www/freepublications/en/economics/gii/gii_2013.pdfEnglish Proficiency Index (EF EPI) - http://www.ef.com/ca/epi/US - page 264Brazil - page 172Mexico - page 237Argentina - page 133Colombia - page 182China - page 157Philippines - 256India - page 211Malaysia - page 233Poland - page 256Hungary - page 209Russia - page 261Ukraine - page 285Romania - page 260Czech Republic - page 187
  6. Wall Street Journal - http://online.wsj.com/article/SB10001424052748703515504576142092863219826.html?mod=WSJ_hp_MIDDLENexttoWhatsNewsTopHow many software developers are there in thecountry?How this number was calculated?1. Go to http://www.linkedin.com2. Go to Advanced Search3. Choose "Computer Software" and "Outsourcing and Offshoring" industries.4. Choose country.OR simple click the link belowUS - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=us&f_N=F,S,A,O&f_I=4,123&rsid=377867831375183296073&orig=MDYSBrazil - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=br&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181162945&orig=MDYSMexico - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=mx&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181173481&orig=MDYSArgentina - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=ar&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181198734&orig=MDYSColombia - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=ar&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181198734&orig=MDYSChina - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=cn&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181234137&orig=MDYSPhilippines - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=ph&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181269403&orig=MDYSIndia - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=in&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181253044&orig=MDYSMalaysia http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=my&f_N=F,S,A,O&f_I=123,4&rsid=377867831375181283637&orig=MDYSPoland - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=my&f_N=F,S,A,O&f_I=123,4&rsid=377867831375181283637&orig=MDYSHungary - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=hu&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181325984&orig=MDYSRussia - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=ru&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181337742&orig=MDYSUkraine - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=ua&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181355594&orig=MDYSRomania - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=ro&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181367869&orig=MDYSCzech Republic - http://www.linkedin.com/vsearch/p?openAdvancedForm=true&locationType=I&countryCode=cz&f_N=F,S,A,O&f_I=4,123&rsid=377867831375181381476&orig=MDYS
  7. http://www.businessinsider.com/amazing-facts-about-india-2010-12?op=1http://www.brainbench.com/pdf/globalitiq.pdf
  8. http://www.czechinvest.org/data/files/ict-nahled-lock-98-en.pdfhttp://www.pr.com/press-release/406123