SlideShare a Scribd company logo
1 of 23
Automation using Selenium 
Quontra solutions 
www.quontrasolutions.co.uk 
Call us @ 20-3734-1498 / 1499
What is Selenium ? 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
 Automation tool for web based applications 
 Used for functional regression testing 
 Uses JavaScript 
 Embeds test automation engine in your browser 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Selenium Components 
1. Selenium Core 
 Core engine of Selenium 
 JavaScript/DHTML library 
 Other Selenium components such as IDE and RC 
build on it 
 Supports a variety of platforms 
 Windows: Internet Explorer 6.0 and 7.0 , FireFox 0.8 to 2.0 
 Mac OS X: Safari 2.0.4+, FireFox 0.8 to 2.0 , Camino 1.0a1 
 Linux: FireFox 0.8 to 2.0 Konqueror 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Selenium Components 
2. Selenium IDE 
 Integrated development 
environment for Selenium tests 
 Enables you to record a browser 
session 
 Implemented as a Mozilla FireFox 
extension 
 Allows you to record, edit, and 
debug tests. 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Selenium Components.. 
3. Selenium Remote Control (RC) 
 Provides Selenium Server 
 Start/Stop/Control supported browsers 
 Script web application UI tests 
 Works with any HTTP website 
 Uses any JavaScript enabled browser 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
How Selenium RC Works 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Advantages of Selenium 
 Open source, free software 
 Easy Installation 
 Scripting Techniques : 
Easy recording and playback of scripts 
Modular scripts 
 Compatibility : 
 Multiple operating systems (Windows, Linux, Mac) 
 Allows cross browser testing (Record in FireFox, execute in IE) 
 No dedicated machine required for test execution (user can 
work in parallel). 
 Integration with third party tools. 
 Example : RTH Test Case Management Tool. 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Selenese-The language of Selenium 
Selenese consists of Actions, Accessors, Element Locators and 
Variables 
• Actions - Commands for the selenese language to perform a 
action on a web application 
 Script performs a particular action 
Typically take element locator and possibly a value 
Examples : 
1.Open- open a url 
2.Click- click button, link, etc.. 
3.Type- type text in text field 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Selenese-The language of Selenium 
• Accessors – Verification / Validation checkpoints for the tool 
Data related 
Take only element locators 
Examples : 
1. store(locator,variable) 
2. verify(locator,pattern) 
3.eval- return value of JS expression 
4. bodyText-contents of HTML body 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Selenese-The language of Selenium 
• Element Locators 
 These can be id, name, identifier, link, etc.. 
 Variables used in scripting 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Sample Script 
require "selenium" 
require "test/unit" 
def test_new 
@selenium.open "/" 
@selenium.type "q", "Hello" 
@selenium.click "btnG" 
@selenium.wait_for_page_to_load "30000" 
begin 
assert @selenium.is_text_present("Hello is a new way to look at 
pictures with friends and family. ) 
rescue Test::Unit::AssertionFailedError 
@verification_errors << $! 
end 
temp = @selenium.get_text("//div[2]/div[1]") 
end 
end 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Automating Tests using Selenium 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Prerequisites and Test Bed Setup 
 Software : 
 Selenium IDE, Mozilla FireFox for script recording 
 Selenium Server, Java for running scripts 
 Configuration : 
 Set path variables 
 Use –multiWindow option while starting server 
 Resource : 
 Users… should have basic scripting knowledge 
 Hardware… No specific requirement the basic configuration for a server – 
P4, 512 MB RAM is good enough. 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Scripting Techniques and Best Practices 
In order to ensure the quality of scripts and reduce maintenance, it 
is best to have scripting techniques and best practices. Some of 
which are… 
 Comments and proper formatting in scripts 
 Scripting considerations for integration with other tools 
 Documentation of basic data required for scripts 
 Documentation of new functions added for scripts 
 Follow fixed, logical scripting format 
 Include code to handle Selenium errors 
 Scripting according to application specific issues 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Known Issues & Workarounds 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Elements not found on page 
Potential Causes : 
 Can happen due to execution speed of Selenium 
 Elements do not load on page in time 
Fix : 
 Add code in scripts which waits for elements 
Additional issues : 
 Sometimes existing elements on a page are not detected 
 Sometimes elements on a page have a same label 
Solution : 
 Obtain exact element label from source code 
 Label can be used in scripts for accuracy 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Handling of Popup windows 
Steps : 
Window id required for automated operations in 
window 
At times if id is not obtained during recording, go to 
window and perform operations 
Window id will be obtained after this action. 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Handling of Frames 
Option : 
 -multiWindow option handles potential frame problems 
Causes : 
At times required name of frame not obtained in recording 
Fix : 
Obtain frame label from source code 
Also can be obtained from browser URL bar 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Benefits to Organization 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Benefits to Organization 
 Automation Benefits : 
 Usual benefits for automation e.g. Time saving 
 Time required for sanity reduced ( 12 man hours to 3 man hours, build 
frequency of 4-5 builds a month ) 
 For one of the projects, Sanity suite automated : 243 test cases 
 Good Returns on Zero Investment 
 Increasing Productivity 
Cost saving as it is open-source 
QA engineers get familiar with scripting languages like Ruby, Perl etc apart 
from manual testing 
 Caveat: 
 Full automation and maintenance has not been evaluated and that can be a 
risk 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
Drawbacks 
 Lack of exhaustive formal guidance material 
 Mozilla FireFox browser is required for script 
recording 
 Only works with web based applications 
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499

More Related Content

More from Quontra Solutions

Network security by quontra solutions uk
Network security by quontra solutions ukNetwork security by quontra solutions uk
Network security by quontra solutions uk
Quontra Solutions
 
Informatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
Informatica Metadata Exchange Frequently Asked Questions by Quontra SolutionsInformatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
Informatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
Quontra Solutions
 
Informatica metadata exchange frequently asked questions by quontra solutions
Informatica metadata exchange frequently asked questions by quontra solutionsInformatica metadata exchange frequently asked questions by quontra solutions
Informatica metadata exchange frequently asked questions by quontra solutions
Quontra Solutions
 
Dataware house Introduction By Quontra Solutions
Dataware house Introduction By Quontra SolutionsDataware house Introduction By Quontra Solutions
Dataware house Introduction By Quontra Solutions
Quontra Solutions
 

More from Quontra Solutions (6)

Network security by quontra solutions uk
Network security by quontra solutions ukNetwork security by quontra solutions uk
Network security by quontra solutions uk
 
Introduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutionsIntroduction to .net FrameWork by QuontraSolutions
Introduction to .net FrameWork by QuontraSolutions
 
Informatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
Informatica Metadata Exchange Frequently Asked Questions by Quontra SolutionsInformatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
Informatica Metadata Exchange Frequently Asked Questions by Quontra Solutions
 
Informatica metadata exchange frequently asked questions by quontra solutions
Informatica metadata exchange frequently asked questions by quontra solutionsInformatica metadata exchange frequently asked questions by quontra solutions
Informatica metadata exchange frequently asked questions by quontra solutions
 
Dataware house Introduction By Quontra Solutions
Dataware house Introduction By Quontra SolutionsDataware house Introduction By Quontra Solutions
Dataware house Introduction By Quontra Solutions
 
Selenium overview ppt by quontra solutions
Selenium overview ppt by quontra solutionsSelenium overview ppt by quontra solutions
Selenium overview ppt by quontra solutions
 

Recently uploaded

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 

Recently uploaded (20)

Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Third Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptxThird Battle of Panipat detailed notes.pptx
Third Battle of Panipat detailed notes.pptx
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 

Automation using selenium webdriver by Quontra Solutions

  • 1. Automation using Selenium Quontra solutions www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 2. What is Selenium ? www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 3.  Automation tool for web based applications  Used for functional regression testing  Uses JavaScript  Embeds test automation engine in your browser www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 4. Selenium Components 1. Selenium Core  Core engine of Selenium  JavaScript/DHTML library  Other Selenium components such as IDE and RC build on it  Supports a variety of platforms  Windows: Internet Explorer 6.0 and 7.0 , FireFox 0.8 to 2.0  Mac OS X: Safari 2.0.4+, FireFox 0.8 to 2.0 , Camino 1.0a1  Linux: FireFox 0.8 to 2.0 Konqueror www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 5. Selenium Components 2. Selenium IDE  Integrated development environment for Selenium tests  Enables you to record a browser session  Implemented as a Mozilla FireFox extension  Allows you to record, edit, and debug tests. www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 6. Selenium Components.. 3. Selenium Remote Control (RC)  Provides Selenium Server  Start/Stop/Control supported browsers  Script web application UI tests  Works with any HTTP website  Uses any JavaScript enabled browser www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 7. How Selenium RC Works www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 8. Advantages of Selenium  Open source, free software  Easy Installation  Scripting Techniques : Easy recording and playback of scripts Modular scripts  Compatibility :  Multiple operating systems (Windows, Linux, Mac)  Allows cross browser testing (Record in FireFox, execute in IE)  No dedicated machine required for test execution (user can work in parallel).  Integration with third party tools.  Example : RTH Test Case Management Tool. www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 9. Selenese-The language of Selenium Selenese consists of Actions, Accessors, Element Locators and Variables • Actions - Commands for the selenese language to perform a action on a web application  Script performs a particular action Typically take element locator and possibly a value Examples : 1.Open- open a url 2.Click- click button, link, etc.. 3.Type- type text in text field www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 10. Selenese-The language of Selenium • Accessors – Verification / Validation checkpoints for the tool Data related Take only element locators Examples : 1. store(locator,variable) 2. verify(locator,pattern) 3.eval- return value of JS expression 4. bodyText-contents of HTML body www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 11. Selenese-The language of Selenium • Element Locators  These can be id, name, identifier, link, etc..  Variables used in scripting www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 12. Sample Script require "selenium" require "test/unit" def test_new @selenium.open "/" @selenium.type "q", "Hello" @selenium.click "btnG" @selenium.wait_for_page_to_load "30000" begin assert @selenium.is_text_present("Hello is a new way to look at pictures with friends and family. ) rescue Test::Unit::AssertionFailedError @verification_errors << $! end temp = @selenium.get_text("//div[2]/div[1]") end end www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 13. Automating Tests using Selenium www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 14. Prerequisites and Test Bed Setup  Software :  Selenium IDE, Mozilla FireFox for script recording  Selenium Server, Java for running scripts  Configuration :  Set path variables  Use –multiWindow option while starting server  Resource :  Users… should have basic scripting knowledge  Hardware… No specific requirement the basic configuration for a server – P4, 512 MB RAM is good enough. www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 15. Scripting Techniques and Best Practices In order to ensure the quality of scripts and reduce maintenance, it is best to have scripting techniques and best practices. Some of which are…  Comments and proper formatting in scripts  Scripting considerations for integration with other tools  Documentation of basic data required for scripts  Documentation of new functions added for scripts  Follow fixed, logical scripting format  Include code to handle Selenium errors  Scripting according to application specific issues www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 16. Known Issues & Workarounds www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 17. Elements not found on page Potential Causes :  Can happen due to execution speed of Selenium  Elements do not load on page in time Fix :  Add code in scripts which waits for elements Additional issues :  Sometimes existing elements on a page are not detected  Sometimes elements on a page have a same label Solution :  Obtain exact element label from source code  Label can be used in scripts for accuracy www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 18. Handling of Popup windows Steps : Window id required for automated operations in window At times if id is not obtained during recording, go to window and perform operations Window id will be obtained after this action. www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 19. Handling of Frames Option :  -multiWindow option handles potential frame problems Causes : At times required name of frame not obtained in recording Fix : Obtain frame label from source code Also can be obtained from browser URL bar www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 20. Benefits to Organization www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 21. Benefits to Organization  Automation Benefits :  Usual benefits for automation e.g. Time saving  Time required for sanity reduced ( 12 man hours to 3 man hours, build frequency of 4-5 builds a month )  For one of the projects, Sanity suite automated : 243 test cases  Good Returns on Zero Investment  Increasing Productivity Cost saving as it is open-source QA engineers get familiar with scripting languages like Ruby, Perl etc apart from manual testing  Caveat:  Full automation and maintenance has not been evaluated and that can be a risk www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 22. Drawbacks  Lack of exhaustive formal guidance material  Mozilla FireFox browser is required for script recording  Only works with web based applications www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499
  • 23. www.quontrasolutions.co.uk Call us @ 20-3734-1498 / 1499