automate web apps with selenium

25
View DevOps course details at www.edureka.co/selenium Selenium: Automated Web App Testing

Upload: edureka

Post on 12-Aug-2015

403 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Automate Web Apps With Selenium

View DevOps course details at www.edureka.co/selenium

Selenium: Automated Web App Testing

Page 2: Automate Web Apps With Selenium

Slide 2 www.edureka.co/apache-spark-scala-trainingSlide 2

Objectives

At the end of this module, you will be able to

Understand Manual Testing and its disadvantages

Know about Automation Testing

Learn Selenium and its advantages

Learn Automation Metrics

Understand Selenium Grid and Web driver

Demo on Selenium Web Driver

www.edureka.co/selenium

Page 3: Automate Web Apps With Selenium

Slide 3 www.edureka.co/apache-spark-scala-trainingSlide 3

Manual Testing

Manual Testing is a process manually test the software to find the defect of the application.

It requires a tester to play the role of an end user and test all features of the application to ensure correct behavior.

Tester need to write the test plans and complete the test with different test cases.

www.edureka.co/selenium

Page 4: Automate Web Apps With Selenium

Slide 4 www.edureka.co/apache-spark-scala-trainingSlide 4

Manual Testing

Manually Loading 1000+ transactions

Validation of downloaded transactions

Create report for pass and fail transactions

Validation of form with multiple set of data – dataset

Take screenshot for each of the validation

Formatting of each and every process for SME review

www.edureka.co/selenium

Page 5: Automate Web Apps With Selenium

Slide 5 www.edureka.co/apache-spark-scala-trainingSlide 5

Disadvantages Manual Testing

Manual Testing of all work flows, all fields , all scenarios is time and cost consuming, and required more resources

Scope of manual test is very limited

Executing same test case again and again is tedious task

Manual testing will be used when the test case only needs to runs once or twice

Simultaneously testing on different machine with different OS platform combination is not possible using manual testing

www.edureka.co/selenium

Page 6: Automate Web Apps With Selenium

Slide 6 www.edureka.co/apache-spark-scala-trainingSlide 6

Test automation

Test automation is the use of special software to control the execution of tests and the comparison of actual outcomes with predicted outcomes.

Optimization of Speed, Efficiency, Quality and the Decrease of Costs

Advance a Tester´s Motivation and Efficiency

Increase of Test Coverage

Why automate Testing?

www.edureka.co/selenium

Page 7: Automate Web Apps With Selenium

Slide 7 www.edureka.co/apache-spark-scala-trainingSlide 7

Benefits of automated testing

70% faster than the manual testing Wider test coverage of application features Reliable in results Ensure Consistency Saves Time and Cost Improves accuracy Human Intervention is not required while execution Increases Efficiency Better speed in executing tests Re-usable test scripts Test Frequently and thoroughly More cycle of execution can be achieved through automation Early time to market

www.edureka.co/selenium

Page 8: Automate Web Apps With Selenium

Slide 8 www.edureka.co/apache-spark-scala-trainingSlide 8

When to use Test automation

Regression Testing

Smoke Testing

Static & Repetitive Tests

Task involves complex calculation

Data Driven Testing

Test Cases which are time consuming

www.edureka.co/selenium

Page 9: Automate Web Apps With Selenium

Slide 9 www.edureka.co/apache-spark-scala-trainingSlide 9

Application changing near to Future

Test cases which are executed on ad-hoc basis.

When NOT to use Test automation

www.edureka.co/selenium

Page 10: Automate Web Apps With Selenium

Slide 10 www.edureka.co/apache-spark-scala-trainingSlide 10

HP Quick Test Professional

Selenium

IBM Rational Functional Tester

Sikuli

Silk Test

Win Runner

Load Runner

Visual Studio Test Professional

WATIR

Automation Testing Tools

www.edureka.co/selenium

Page 11: Automate Web Apps With Selenium

Slide 11 www.edureka.co/apache-spark-scala-trainingSlide 11

Selenium is used to automate web applications across different platforms using different programming languages

This is one of the best tool for web applications

Performance and execution speed of selenium automation tool is much better than any automation tool which is available in market because of its native support for browsers and also web Drivers operates on the OS lever

Selenium

www.edureka.co/selenium

Page 12: Automate Web Apps With Selenium

Slide 12 www.edureka.co/apache-spark-scala-trainingSlide 12

Supports almost every OS

Open source

Cost-effective automation testing

Supports multiple programming language

Independent of web Application programming language

Supports multiple browsers

More options to find an object

Parallel execution

Provides support for open source frameworks like TestNG, Junit

Features of Selenium

www.edureka.co/selenium

Page 13: Automate Web Apps With Selenium

Slide 13 www.edureka.co/selenium

Test Execution Calculation

Automation Metrics

Test Script Preparation

Reliability Time to Market

Cross Browser testing

Cost Reduction

4000 Test Cases4 ResourcesPer resource = 1000Per resource = 1000/40 =25 Days

4000 Test Cases4 ResourcesPer resource = 1000Per resource = 1000/20 = 50 Days

Total = 4000Day 1 = 24*60 minutesPer script execution = 5 minutes(60 * 9) / 5 minutes = 108 Test Cases / machine(60 * 24 ) / 5 minutes = 288 Test Cases / machine

4 Machine = 288 * 4 = 1152 Test Cases1152 * 4Days = 4608 Test Cases

Page 14: Automate Web Apps With Selenium

Slide 14 www.edureka.co/apache-spark-scala-trainingSlide 14

Flavors of Selenium

www.edureka.co/selenium

SeleniumSuite

Selenium IDE

Selenium RC

WebDriverSelenium

Grid

Selenium 2

Merged

Page 15: Automate Web Apps With Selenium

Slide 15 www.edureka.co/apache-spark-scala-trainingSlide 15

Selenium WebDriver

Selenium WebDriver is used to automate Web based applications on multiple platforms across different browsers with different programming languages

Selenium WebDriver is faster that RC because of its simpler architecture

Selenium 1.0 + WebDriver = Selenium 2.0

www.edureka.co/selenium

Page 16: Automate Web Apps With Selenium

Slide 16 www.edureka.co/apache-spark-scala-trainingSlide 16

Selenium WebDriver

WebDriver is simpler and more concise programming interface than Selenium-RC AP

It is a compact Object Oriented API when compared to Selenium 1.0

It interacts with browser directly while selenium RC need help of RC server to interact with browser which makes it slow

Selenium WebDriver overcomes the limitations of selenium 1.0, like file upload or download, pop-ups and dialogsBarrier

It overcomes the limitation of selenium RC single Host Origin Policy

www.edureka.co/selenium

Page 17: Automate Web Apps With Selenium

Slide 17 www.edureka.co/selenium

Selenium Web Driver

Selenium Web Driver

Cross Browser Testing

Parallel Testing

Supports Different Language Scripting

Supports Different Operating System

Easy Framework Development

Firefox, Chrome, IE, Safari

Multiple browser in same time

JAVA, C#, PHP, Ruby, Perl, Python

Windows, Mac, Linux, Android, iOS

Keyword Driver, Data driven, etc.

Page 18: Automate Web Apps With Selenium

Slide 18 www.edureka.co/apache-spark-scala-trainingSlide 18

Demo On Selenium Web Driver

www.edureka.co/selenium

Page 19: Automate Web Apps With Selenium

Slide 19 www.edureka.co/selenium

Selenium Grid

Selenium-Grid allows us to execute Test Script on different machines at the same time (parallel execution) from

one system called Hub

Each machine is called node

That is, Selenium-Grid runs multiple tests at the same time against different machines running different browsers

and operating systems

Page 20: Automate Web Apps With Selenium

Slide 20 www.edureka.co/selenium

Parallel Execution

Platform Independent

Language Independent

Browser Independent

Fast Execution

Node 1: IE on Windows

Node 2: Android

Node 3: Safari on MAC

Node 4: Firefox in Ubuntu

Selenium Grid (Contd.)

Page 21: Automate Web Apps With Selenium

Slide 21 www.edureka.co/apache-spark-scala-trainingSlide 21

Demo On Selenium Grid

www.edureka.co/selenium

Page 22: Automate Web Apps With Selenium

Slide 22 www.edureka.co/apache-spark-scala-training

LIVE Online Class

Class Recording in LMS

24/7 Post Class Support

Module Wise Quiz

Project Work

Verifiable Certificate

Course Features

www.edureka.co/selenium

Page 23: Automate Web Apps With Selenium

Slide 23 www.edureka.co/apache-spark-scala-training

Questions

www.edureka.co/selenium

Page 24: Automate Web Apps With Selenium

Slide 24 www.edureka.co/selenium

Module 1 » Introduction to Selenium & its components

Module 2» Selenium RC and Locater Techniques

Module 3 » Selenium WebDriver

Module 4 » Validation and Designing of Framework

Module 5» WerDriver Advanced Usage and Selenium IDE

Module 6» Programming and Report Generation

Module 7» Selenium-Grid, Sikuli, TestNG, Automating with AutoIt

Module 8» Project

Course Topics

Page 25: Automate Web Apps With Selenium

Slide 25 www.edureka.co/apache-spark-scala-training