SlideShare una empresa de Scribd logo
1 de 25
Succeeding in Web Automation  A strategy & blueprint June 29, 2010 Kapil Bhalla Vijayan Reddy
Understand the challenges Look at Pain Points Blue Print – Deep Dive Agenda  Next  60 minutes…
Present Scenario -  Product Decade Old Product Interleaved with multiple technologies Focus on new development technologies and framework Increasing team size with newer people Flex Java Script HTML DOJO SOAP Web Services REST
Present Scenario –  Development Agile Development Shorter Release Cycles Long Testing Cycles…growing continuously with every release. No Automation Yet !! Need for Speed
Present Scenario  –  Customer Expectation Should work on my current browser ! Should work on Operating System I use! No Compromise on Quality ! Even higher expectation from Customer Support Google Chrome Internet Explorer 7 Internet Explorer 8 Internet Explorer 6 FireFox 3 FireFox 3.7 Windows XP SP2 Windows XP SP3 Windows Vista Windows 7 Mac 10 / 10
We are in agreement !
What Can we Do ? Automate   We know That!  Then What ??
Agenda  Pain Points ,[object Object],[object Object]
Pain Points in Automation Absence of Single “Silver Bullet” tool. Poor Ease of automating test cases. (The coding way) Learning Curve for new automation libraries, frameworks. Diversified domain / functional knowledge among team members. Enabling multiple contributors to automation projects. Expected Low maintenance in long run . Always expensive to switch to a different automation tool/framework.
We are in agreement !
Agenda  Blue Print – Deep Dive ,[object Object],[object Object],[object Object],[object Object]
Blue Print– an Overview ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
On-boarding :  Page Object A Page Object is Object representation of a Web Page in Java Programming World.  All elements seen on the web page can be interacted with using the respective methods in the page object. Page object uses information in Web Element Repository to interact with an element. public void setPassword(String pass) {…}  setLoginName(String user) { … }
On-boarding -  Tests Test Cases  : Test cases are assertions/verifications made on compilation of workflows using one or more real web pages. Interaction with the web pages is done using Page Objects. Example- Hit the login page, assert that the page loaded completely and it is login page indeed. Test Suites  : These are collection of 1 or more test cases.
Blue Print On-boarding … Reporting : The users can write messages to logs using the APIs exposed by the framework. These messages are displayed in the final reports generated by the TESTNG report engine. Browser : Browser is a place where most of the noticeable action happens. Test   Engine :Test Engine takes in test cases and test suites and execute them.
Blue Print On-boarding  -  WebDriver Web Driver : Page Objects indirectly interact with the set of Web Driver libraries to hook on to the Web Elements and to interact with them.  Some typical scenarios are finding an element, sending text to element, clicking a button, reading value of an element, and so on.. User can use the libraries directly or through the APIs provided by the TeKila framework (Recommended way is TeKila APIs )
TeKila Architecture
Blue Print  What we achieved ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Summary  Blue Print is … ,[object Object],[object Object],[object Object],[object Object],[object Object]
Discussion
References Google WebDriver Project homepage http://code.google.com/p/webdriver/   Google Test Automation Conference (GTAC) 2007 Presentation on WebDriver http://www.youtube.com/watch?v=tGu1ud7hk5I   Xpath basics http://www.w3schools.com/XPath/xpath_syntax.asp
Why WebDriver? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Browser Drivers
Decision Criteria – Web Driver Developer Productivity   Object/API discoverability Good: Using tools like FireBug, IE Developer, Or source code directly  (hit objects using Text, partial text, id - best way usually, xpath, etc...) Training/Consulting available Active Web Driver Community, Internal Users Ease of use Simple Java Programming concepts, Normal Web Elements awareness - Buttons, Anchor, Tables … Language knowledge in team Java.  Beginners 1 to 2 days are good to get going Vendor responsiveness Its GOOGLE Open Source Community - Google Web Driver. Issues get fixed and tracked.  Have seen post replys from simon stewart WD creator. Cross Browser/Platform testing   IE 7/8 YES Both  FF 3.0/3.5 YES Safari 4.0 Mac Should work Tool/Language Features   Program Control (loops, decisions, etc.) ALL Available, you can do almost anything Ability to handle popups Can handle pop ups that are certain, remaining need to be figured out. Incremental Cost One Time effort to build up Specific Infrastructure. (Tool Independent) Then equivalent to : writing simple Java program. License availability FREE (Open Source) Other Tools Integration   Selenium, TestNG, Java Robots, Fitnesse YES, Any tool with  which Java can be easily integrated
Decision Criteria … Criteria Selenium WebDriver Watir Sahi Browser/ Platform Support All All Some  (immature Safari support) All Development/Community Great Good Decent Small, not well known Infrequent releases Ease of use Requires server Concept of Page Object, simple API Ruby learning curve manual proxy, no frames + multiple domains Hacky multiple-domain support Language Support Many! Java Ruby, Java coming JavaScript Modal Dialogs Coming? Coming… Limited Limited

Más contenido relacionado

La actualidad más candente

Selenium Design Patterns
Selenium Design PatternsSelenium Design Patterns
Selenium Design PatternsLiraz Shay
 
Automation Frame works Instruction Sheet
Automation Frame works Instruction SheetAutomation Frame works Instruction Sheet
Automation Frame works Instruction SheetvodQA
 
Jbossworld Presentation
Jbossworld PresentationJbossworld Presentation
Jbossworld PresentationDan Hinojosa
 
Continuous Testing Meets the Classroom at Code.org
Continuous Testing Meets the Classroom at Code.orgContinuous Testing Meets the Classroom at Code.org
Continuous Testing Meets the Classroom at Code.orgSauce Labs
 
Web Test Automation with Selenium
Web Test Automation with SeleniumWeb Test Automation with Selenium
Web Test Automation with Seleniumvivek_prahlad
 
[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...
[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...
[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...Applitools
 
Internal DSLs For Automated Functional Testing
Internal DSLs For Automated Functional TestingInternal DSLs For Automated Functional Testing
Internal DSLs For Automated Functional TestingJohn Sonmez
 
Architecting test automation using selenium
Architecting test automation using seleniumArchitecting test automation using selenium
Architecting test automation using seleniumDavid Adams
 
Thesis presentation over Web Development
Thesis presentation over Web DevelopmentThesis presentation over Web Development
Thesis presentation over Web DevelopmentAman Khan
 
DSL, Page Object and Selenium – a way to reliable functional tests
DSL, Page Object and Selenium – a way to reliable functional testsDSL, Page Object and Selenium – a way to reliable functional tests
DSL, Page Object and Selenium – a way to reliable functional testsMikalai Alimenkou
 
Setup and run automated test framework for android application
Setup and run automated test framework for android applicationSetup and run automated test framework for android application
Setup and run automated test framework for android applicationKonstantin Natalukha
 
What's new in selenium 4
What's new in selenium 4What's new in selenium 4
What's new in selenium 4Knoldus Inc.
 
DSL in test automation
DSL in test automationDSL in test automation
DSL in test automationtest test
 
BDD with SpecFlow and Selenium
BDD with SpecFlow and SeleniumBDD with SpecFlow and Selenium
BDD with SpecFlow and SeleniumLiraz Shay
 
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 Selenium Labs
 
UI Testing Automation
UI Testing AutomationUI Testing Automation
UI Testing AutomationAgileEngine
 
Top trending selenium interview questions
Top trending selenium interview questionsTop trending selenium interview questions
Top trending selenium interview questionsRock Interview
 
Silk Performer Presentation v1
Silk Performer Presentation v1Silk Performer Presentation v1
Silk Performer Presentation v1Sun Technlogies
 

La actualidad más candente (20)

Selenium Design Patterns
Selenium Design PatternsSelenium Design Patterns
Selenium Design Patterns
 
Automation Frame works Instruction Sheet
Automation Frame works Instruction SheetAutomation Frame works Instruction Sheet
Automation Frame works Instruction Sheet
 
Jbossworld Presentation
Jbossworld PresentationJbossworld Presentation
Jbossworld Presentation
 
Continuous Testing Meets the Classroom at Code.org
Continuous Testing Meets the Classroom at Code.orgContinuous Testing Meets the Classroom at Code.org
Continuous Testing Meets the Classroom at Code.org
 
Web Test Automation with Selenium
Web Test Automation with SeleniumWeb Test Automation with Selenium
Web Test Automation with Selenium
 
[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...
[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...
[Webinar] Continuous Testing Done Right: Test Automation at the World's Leadi...
 
Internal DSLs For Automated Functional Testing
Internal DSLs For Automated Functional TestingInternal DSLs For Automated Functional Testing
Internal DSLs For Automated Functional Testing
 
Architecting test automation using selenium
Architecting test automation using seleniumArchitecting test automation using selenium
Architecting test automation using selenium
 
Thesis presentation over Web Development
Thesis presentation over Web DevelopmentThesis presentation over Web Development
Thesis presentation over Web Development
 
DSL, Page Object and Selenium – a way to reliable functional tests
DSL, Page Object and Selenium – a way to reliable functional testsDSL, Page Object and Selenium – a way to reliable functional tests
DSL, Page Object and Selenium – a way to reliable functional tests
 
Setup and run automated test framework for android application
Setup and run automated test framework for android applicationSetup and run automated test framework for android application
Setup and run automated test framework for android application
 
What's new in selenium 4
What's new in selenium 4What's new in selenium 4
What's new in selenium 4
 
DSL in test automation
DSL in test automationDSL in test automation
DSL in test automation
 
BDD with SpecFlow and Selenium
BDD with SpecFlow and SeleniumBDD with SpecFlow and Selenium
BDD with SpecFlow and Selenium
 
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
 
UI Testing Automation
UI Testing AutomationUI Testing Automation
UI Testing Automation
 
Top trending selenium interview questions
Top trending selenium interview questionsTop trending selenium interview questions
Top trending selenium interview questions
 
Silk Performer Presentation v1
Silk Performer Presentation v1Silk Performer Presentation v1
Silk Performer Presentation v1
 
Selenium
SeleniumSelenium
Selenium
 
How to be an awesome test automation professional
How to be an awesome test automation professionalHow to be an awesome test automation professional
How to be an awesome test automation professional
 

Similar a Stepin evening presented

Testing Mozilla Web Properties
Testing Mozilla Web PropertiesTesting Mozilla Web Properties
Testing Mozilla Web PropertiesStephen Donner
 
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
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...DevDay.org
 
Leveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleLeveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleTechWell
 
Discover the power of QA automation testing
Discover the power of QA automation testingDiscover the power of QA automation testing
Discover the power of QA automation testingSoftweb Solutions
 
A Sampling of Tools
A Sampling of ToolsA Sampling of Tools
A Sampling of ToolsDawn Code
 
Automation, Selenium Webdriver and Page Objects
Automation, Selenium Webdriver and Page ObjectsAutomation, Selenium Webdriver and Page Objects
Automation, Selenium Webdriver and Page ObjectsAndrew Boyer
 
Selenium Testing Training in Bangalore
Selenium Testing Training in BangaloreSelenium Testing Training in Bangalore
Selenium Testing Training in Bangalorerajkamal560066
 
Katalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and DevelopersKatalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and DevelopersKatalon Studio
 
Automated Web Testing With Selenium
Automated Web Testing With SeleniumAutomated Web Testing With Selenium
Automated Web Testing With SeleniumJodie Miners
 
Quest to the best test automation for low code development platform kherrazi ...
Quest to the best test automation for low code development platform kherrazi ...Quest to the best test automation for low code development platform kherrazi ...
Quest to the best test automation for low code development platform kherrazi ...Rachid Kherrazi
 
Leveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleLeveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleTechWell
 
automation framework
automation frameworkautomation framework
automation frameworkANSHU GOYAL
 

Similar a Stepin evening presented (20)

Testing Mozilla Web Properties
Testing Mozilla Web PropertiesTesting Mozilla Web Properties
Testing Mozilla Web Properties
 
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
 
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
[DevDay 2017] Automation Testing - Speaker: Nghia Khuong - Project Manager at...
 
Leveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleLeveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver Example
 
Discover the power of QA automation testing
Discover the power of QA automation testingDiscover the power of QA automation testing
Discover the power of QA automation testing
 
A Sampling of Tools
A Sampling of ToolsA Sampling of Tools
A Sampling of Tools
 
Automation, Selenium Webdriver and Page Objects
Automation, Selenium Webdriver and Page ObjectsAutomation, Selenium Webdriver and Page Objects
Automation, Selenium Webdriver and Page Objects
 
Selenium Testing Training in Bangalore
Selenium Testing Training in BangaloreSelenium Testing Training in Bangalore
Selenium Testing Training in Bangalore
 
Qa process
Qa processQa process
Qa process
 
Katalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and DevelopersKatalon Studio - Successful Test Automation for both Testers and Developers
Katalon Studio - Successful Test Automation for both Testers and Developers
 
Automated Web Testing With Selenium
Automated Web Testing With SeleniumAutomated Web Testing With Selenium
Automated Web Testing With Selenium
 
Qa process
Qa processQa process
Qa process
 
Quest to the best test automation for low code development platform kherrazi ...
Quest to the best test automation for low code development platform kherrazi ...Quest to the best test automation for low code development platform kherrazi ...
Quest to the best test automation for low code development platform kherrazi ...
 
Selenium
SeleniumSelenium
Selenium
 
Automated tests
Automated testsAutomated tests
Automated tests
 
Selenium Automation
Selenium AutomationSelenium Automation
Selenium Automation
 
summary
summarysummary
summary
 
jDriver Presentation
jDriver PresentationjDriver Presentation
jDriver Presentation
 
Leveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver ExampleLeveraging Open Source Automation: A Selenium WebDriver Example
Leveraging Open Source Automation: A Selenium WebDriver Example
 
automation framework
automation frameworkautomation framework
automation framework
 

Último

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
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...Miguel Araújo
 
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 organizationRadu Cotescu
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 

Último (20)

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
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...
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 

Stepin evening presented

  • 1. Succeeding in Web Automation A strategy & blueprint June 29, 2010 Kapil Bhalla Vijayan Reddy
  • 2. Understand the challenges Look at Pain Points Blue Print – Deep Dive Agenda Next 60 minutes…
  • 3. Present Scenario - Product Decade Old Product Interleaved with multiple technologies Focus on new development technologies and framework Increasing team size with newer people Flex Java Script HTML DOJO SOAP Web Services REST
  • 4. Present Scenario – Development Agile Development Shorter Release Cycles Long Testing Cycles…growing continuously with every release. No Automation Yet !! Need for Speed
  • 5. Present Scenario – Customer Expectation Should work on my current browser ! Should work on Operating System I use! No Compromise on Quality ! Even higher expectation from Customer Support Google Chrome Internet Explorer 7 Internet Explorer 8 Internet Explorer 6 FireFox 3 FireFox 3.7 Windows XP SP2 Windows XP SP3 Windows Vista Windows 7 Mac 10 / 10
  • 6. We are in agreement !
  • 7. What Can we Do ? Automate  We know That! Then What ??
  • 8.
  • 9. Pain Points in Automation Absence of Single “Silver Bullet” tool. Poor Ease of automating test cases. (The coding way) Learning Curve for new automation libraries, frameworks. Diversified domain / functional knowledge among team members. Enabling multiple contributors to automation projects. Expected Low maintenance in long run . Always expensive to switch to a different automation tool/framework.
  • 10. We are in agreement !
  • 11.
  • 12.
  • 13. On-boarding : Page Object A Page Object is Object representation of a Web Page in Java Programming World. All elements seen on the web page can be interacted with using the respective methods in the page object. Page object uses information in Web Element Repository to interact with an element. public void setPassword(String pass) {…} setLoginName(String user) { … }
  • 14. On-boarding - Tests Test Cases : Test cases are assertions/verifications made on compilation of workflows using one or more real web pages. Interaction with the web pages is done using Page Objects. Example- Hit the login page, assert that the page loaded completely and it is login page indeed. Test Suites : These are collection of 1 or more test cases.
  • 15. Blue Print On-boarding … Reporting : The users can write messages to logs using the APIs exposed by the framework. These messages are displayed in the final reports generated by the TESTNG report engine. Browser : Browser is a place where most of the noticeable action happens. Test Engine :Test Engine takes in test cases and test suites and execute them.
  • 16. Blue Print On-boarding - WebDriver Web Driver : Page Objects indirectly interact with the set of Web Driver libraries to hook on to the Web Elements and to interact with them. Some typical scenarios are finding an element, sending text to element, clicking a button, reading value of an element, and so on.. User can use the libraries directly or through the APIs provided by the TeKila framework (Recommended way is TeKila APIs )
  • 18.
  • 19.
  • 21. References Google WebDriver Project homepage http://code.google.com/p/webdriver/ Google Test Automation Conference (GTAC) 2007 Presentation on WebDriver http://www.youtube.com/watch?v=tGu1ud7hk5I Xpath basics http://www.w3schools.com/XPath/xpath_syntax.asp
  • 22.
  • 24. Decision Criteria – Web Driver Developer Productivity   Object/API discoverability Good: Using tools like FireBug, IE Developer, Or source code directly  (hit objects using Text, partial text, id - best way usually, xpath, etc...) Training/Consulting available Active Web Driver Community, Internal Users Ease of use Simple Java Programming concepts, Normal Web Elements awareness - Buttons, Anchor, Tables … Language knowledge in team Java.  Beginners 1 to 2 days are good to get going Vendor responsiveness Its GOOGLE Open Source Community - Google Web Driver. Issues get fixed and tracked.  Have seen post replys from simon stewart WD creator. Cross Browser/Platform testing   IE 7/8 YES Both FF 3.0/3.5 YES Safari 4.0 Mac Should work Tool/Language Features   Program Control (loops, decisions, etc.) ALL Available, you can do almost anything Ability to handle popups Can handle pop ups that are certain, remaining need to be figured out. Incremental Cost One Time effort to build up Specific Infrastructure. (Tool Independent) Then equivalent to : writing simple Java program. License availability FREE (Open Source) Other Tools Integration   Selenium, TestNG, Java Robots, Fitnesse YES, Any tool with which Java can be easily integrated
  • 25. Decision Criteria … Criteria Selenium WebDriver Watir Sahi Browser/ Platform Support All All Some (immature Safari support) All Development/Community Great Good Decent Small, not well known Infrequent releases Ease of use Requires server Concept of Page Object, simple API Ruby learning curve manual proxy, no frames + multiple domains Hacky multiple-domain support Language Support Many! Java Ruby, Java coming JavaScript Modal Dialogs Coming? Coming… Limited Limited