27
www.edureka.co/testing-with-selenium-webdriver Designing automation framework with Selenium

Designing keyword and Data Driven Automation framework with Selenium

  • Upload
    edureka

  • View
    1.153

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Designing keyword and Data Driven Automation framework with Selenium

www.edureka.co/testing-with-selenium-webdriver

Designing automation framework with Selenium

Page 2: Designing keyword and Data Driven Automation framework with Selenium

Slide 2www.edureka.co/testing-with-selenium-webdriver

What are we going to learn today ?

At the end of the session you will be able to understand :

What is Automation Testing

Selenium Suite Selenium IDE Selenium RC Selenium WebDriver Selenium Grid

How to design a Test Framework Keyword Driven Data Driven

Demo on designing a Selenium Test Framework

Page 3: Designing keyword and Data Driven Automation framework with Selenium

Slide 3 www.edureka.co/testing-with-selenium-webdriver

Manual Testing

It’s boring and tedious !!I have to do the same process again and again with multiple

sets of data. There is no change in the application as well

Page 4: Designing keyword and Data Driven Automation framework with Selenium

Slide 4 www.edureka.co/testing-with-selenium-webdriver

Auto-generation of result file

Automated execution through test scripts

Automation Testing

Taking Screenshot and Auto-generation of report

Page 5: Designing keyword and Data Driven Automation framework with Selenium

Slide 5 www.edureka.co/testing-with-selenium-webdriver

Thanks to Automation Testing

Amazing !!Now I don’t have to do the same

process again and again with different sets of data. Everything is handled by the tool itself. Even

execution flow is too fast.

Automation Testing (Contd.)

Page 6: Designing keyword and Data Driven Automation framework with Selenium

Slide 6 www.edureka.co/testing-with-selenium-webdriver

Cost Reduction

Reusability

Fast

Unattended Execution

Reliability

Better Quality

Automation Testing Advantages

Page 7: Designing keyword and Data Driven Automation framework with Selenium

Slide 7 www.edureka.co/testing-with-selenium-webdriver

Selenium is a suite of tools to automate web browsers across many platforms

Selenium features

Support for different programming languages - Java, Python, PHP, Ruby, Perl, JavaScript

Support for different Operating Systems - Windows, Mac, Linux, iOS, Android

Support for different browsers – IE, Firefox, Chrome, Safari, Opera

What is Selenium?

Page 8: Designing keyword and Data Driven Automation framework with Selenium

Slide 8 www.edureka.co/testing-with-selenium-webdriver

Who uses Selenium?

Page 9: Designing keyword and Data Driven Automation framework with Selenium

Slide 9 www.edureka.co/testing-with-selenium-webdriver

Who uses Selenium?

Understanding Selenium Suite

Page 10: Designing keyword and Data Driven Automation framework with Selenium

Slide 10 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite

Selenium Suite

WebDriverSelenium

RCSelenium

IDE

Selenium Grid

Selenium 2

Merged

Page 11: Designing keyword and Data Driven Automation framework with Selenium

Slide 11 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite – Selenium IDE

Selenium IDE is a Firefox plugin which records and plays

back user interactions with the browser

Using Selenium IDE you can export the programming code

in different languages like Java, Ruby, Python etc.

It allows to record and play back tests conveniently that

were recorded previously in Selenium IDE

Selenium IDE is not the best solution for production testing

Page 12: Designing keyword and Data Driven Automation framework with Selenium

Slide 12 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite – Selenium RC

Selenium Remote Control (RC) is a test tool that allows you to write web application tests in any programming language

RC Server receives the Selenium commands called Selenese from test program using simple HTTP GET/POST requests

Selenium RC Architecture

Page 13: Designing keyword and Data Driven Automation framework with Selenium

Slide 13 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite – Web Driver

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

It interacts with browser directly while Selenium RC needs help of RC Server to interact with browser which makes it slow

Selenium WebDriver overcomes the limitations of Selenium 1, like file upload or download, pop-ups and dialogs barrier

Page 14: Designing keyword and Data Driven Automation framework with Selenium

Slide 14 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite – Selenium Grid

Selenium-Grid runs multiple

tests at the same time

against different machines

running different browsers

and operating systems

Node 1: IE on Windows

Node 2: Android

Node 3: Safari on Mac

Node 4: Firefox in Ubuntu

Page 15: Designing keyword and Data Driven Automation framework with Selenium

Slide 15 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite – Selenium Grid

Selenium-Grid runs multiple

tests at the same time

against different machines

running different browsers

and operating systems

Node 1: IE on Windows

Node 2: Android

Node 3: Safari on Mac

Node 4: Firefox in Ubuntu

Designing Selenium Test Framework

Page 16: Designing keyword and Data Driven Automation framework with Selenium

Slide 16www.edureka.co/testing-with-selenium-webdriver

While testing a web application using Selenium its very important to design a flexible test framework that can easily be

modified and reused

Selenium offers flexibility to create different types of test framework that can be reused

Selenium Test Framework

Ke

yw

ord

Dri

ve

n Framework runs on list of keywords

Hyb

rid

Fra

me

wo

rk Keyword Driven

+

Data Driven

Da

ta D

rive

n Recursively tests application using large data pool

Page 17: Designing keyword and Data Driven Automation framework with Selenium

Slide 17www.edureka.co/testing-with-selenium-webdriver

Types of Test Framework

Page 18: Designing keyword and Data Driven Automation framework with Selenium

Slide 18www.edureka.co/testing-with-selenium-webdriver

In this framework flow of the automation is dependent on keywords

Each keyword in keyword driven framework has a specific meaning like

» Wait: Wait for some specific time

» Verify: Validation of text, object, value, or more

» Store: Store the value from web application

» Scroll Down: Scroll down in application

» Click, Enter Text, Select They are actions

Keyword Driven Framework

Page 19: Designing keyword and Data Driven Automation framework with Selenium

Slide 19www.edureka.co/testing-with-selenium-webdriver

Keyword Driven Framework (Contd.)

Page 20: Designing keyword and Data Driven Automation framework with Selenium

Slide 20www.edureka.co/testing-with-selenium-webdriver

The above snapshot is of test script for Keyword Driven Framework

Test Case to test framework will not change only data in excel will change with corresponding action

Object Name Gives a picture what is there in that step

Value If any value has to be entered then it has to be passed or else blank

Action What action to be performed

Property Type which identifier is used to find an object

Property Value identifier value

Status If action performed successfully then Pass or else Fail

Keyword Driven Framework (Contd.)

Page 21: Designing keyword and Data Driven Automation framework with Selenium

Slide 21 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite – Selenium Grid

Selenium-Grid runs multiple

tests at the same time

against different machines

running different browsers

and operating systems

Node 1: IE on Windows

Node 2: Android

Node 3: Safari on Mac

Node 4: Firefox in Ubuntu

Hands-On

Page 22: Designing keyword and Data Driven Automation framework with Selenium

Slide 22www.edureka.co/testing-with-selenium-webdriver

Data driven framework is almost same as keyword driven framework but in this framework we deal with variable data

Executing test case with different sets of data

Data driven framework is very helpful when we want to test the application with different sets of data and doing it

manually is a difficult and error prone task

Data Driven Framework

Page 23: Designing keyword and Data Driven Automation framework with Selenium

Slide 23www.edureka.co/testing-with-selenium-webdriver

Data Driven Framework (Contd.)

Page 24: Designing keyword and Data Driven Automation framework with Selenium

Slide 24www.edureka.co/testing-with-selenium-webdriver

In second column of DataDriven tab values are in curly braces({,})

which tells the tool that this field is dynamic and it’s value has to

be fetched from dataset tab

Data Driven Framework (Contd.)

Total Number of Execution = Number of Rows in dataset

Page 25: Designing keyword and Data Driven Automation framework with Selenium

Slide 25 www.edureka.co/testing-with-selenium-webdriver

Selenium Suite – Selenium Grid

Selenium-Grid runs multiple

tests at the same time

against different machines

running different browsers

and operating systems

Node 1: IE on Windows

Node 2: Android

Node 3: Safari on Mac

Node 4: Firefox in Ubuntu

Hands-On

Page 26: Designing keyword and Data Driven Automation framework with Selenium

Slide 26www.edureka.co/testing-with-selenium-webdriver

Survey

Your feedback is important to us, be it a compliment, a suggestion or a complaint.It helps us to make the course better!

Please spare few minutes to take the survey after the webinar

Page 27: Designing keyword and Data Driven Automation framework with Selenium

Thank You …

Questions/Queries/Feedback

Recording and presentation will be made available to you within 24 hours