0% found this document useful (0 votes)
12 views

Automation-Testing

The document presents an overview of Automation Testing, detailing its evolution, benefits, and the automation testing process. It discusses the Test Automation Pyramid, criteria for deciding what to automate, and various automation tools and frameworks, including Cucumber and Selenium. Additionally, it outlines steps to become a Full-Stack Test Automation Engineer.

Uploaded by

John Dale Vacaro
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

Automation-Testing

The document presents an overview of Automation Testing, detailing its evolution, benefits, and the automation testing process. It discusses the Test Automation Pyramid, criteria for deciding what to automate, and various automation tools and frameworks, including Cucumber and Selenium. Additionally, it outlines steps to become a Full-Stack Test Automation Engineer.

Uploaded by

John Dale Vacaro
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 42

Automation

Testing
PRESENTER
Ralph Carrao
Agenda
01 02 03 04
•Introduction to •Test Automation Decide on what to •Test Automation
Automation Testing Pyramid automate Tools

05 06 07
•Cucumber as a Test •Selenium Essential •How to become a Full-Stack
Framework Test Automation Engineer

NEXT
01
INTRODUCTION TO
AUTOMATION
TESTING
Software programming has evolved over the decades
and consequently, testing, which is an integral part of
software development, has also gone through a series of
changes.
INTRODUCTION

Evolution of
software
testing
NEXT
Automation Testing is a software testing technique that performs
What is using special automated testing software tools to execute a test

Automation case suite.

testing
Manual Testing is performed by a human sitting in front of a computer carefully
executing the test steps.

NEXT
Why Automation
testing?
Test Automation is the best way to
increase the effectiveness, test coverage,
and execution speed in software testing.

NEXT
Manual vs Automated testing

Manual Testing Automated Testing Integrated Approach


Manual Testing is a type of software Automation Testing is a software testing A software testing technique that uses
testing in which test cases are executed technique that performs using special both the pros of automated and manual
manually by a tester without using any automated testing software tools to testing.
automated tools. execute a test case suite.
NEXT
Automation
testing process
Step 1) Test Tool Selection
Step 2) Define scope of
Automation
Step 3) Planning, Design and
Development
Step 4) Test Execution
Step 5) Maintenance

NEXT
Types of
Automation
testing

NEXT
02
TEST
AUTOMATION
PYRAMID
TEST 01
Ice cream cone anti-pattern

AUTOMATION Increase stickiness and average session


time to, at least, three minutes. Ours is a

PYRAMID complex solution that needs reading time


to be understood.

02
Ideal test automation pyramid
Maintaining Social's performance while
improving all other channels is key.
There's an opportunity to extend our
Influencer marketing power to email and
search.

NEXT
03
DECIDE WHAT
TO AUTOMATE
•The task is going to be repeated.
•It’s going to save time.
•The requirements, the test, or the

A TEST CASE BE
task are low risk, stable, and unlikely
to change often.

AUTOMATED IF •The test is subject to human error.


•The test is time-consuming.
•The test has significant downtime
between steps.
•The test is repetitive.

NEXT
Test case prioritization

NEXT
TEST CASE
PRIORITIZATION

NEXT
04
TEST
AUTOMATION
TOOLS
TEST TOOL
SELECTION PROCESS
(1) Licensing and support costs
(2) Good test reports
(3) Training, documentation, tutorials,
guidelines
(4) CI, DevOps support
(5) Level of programming skills required
(6) Level of skills and experience required

NEXT
PROS AND CONS
OF TEST TOOLS

NEXT
TYPES OF TEST
AUTOMATION
FRAMEWORKS

NEXT
TYPES OF TEST AUTOMATION
FRAMEWORKS

NEXT
TEST AUTOMATION
ARCHITECTURE

NEXT
05
CUCUMBER AS
A TEST
FRAMEWORK
Cucumber tool
A cucumber is a tool based on Behavior Driven Development (BDD)
framework which is used to write acceptance tests for the web
application. It allows automation of functional validation in easily readable

introduction and understandable format (like plain English) to Business Analysts,


Developers, Testers, etc.
•Feature = Test suite
•Scenario = Test case
•Background = Test
Gherkin keywords preconditions for
Gherkin uses a set of special keywords to
all scenarios
give structure and meaning to executable •Given = Test preconditions
specifications. Each keyword is translated to
many spoken languages; in this reference
•When = Action/Execution
we’ll use English. •Then = Expected result
•And = Additional test
constructs
Test case creation process
Features
Functionality
Current page
Similarity of the test cases
under a test suite
Below the Feature keyword
is the Description, this is
needed for the feature file
to have a more detailed
explanation.
Multi-platform test case
Scenarios
This is considered as the
test case name
No templates for the part of
the feature file
Test steps
Always write the steps from your
perspective. Always use the
pronoun “I” after the keyword
unless it’s a grammatical error or
it doesn’t make sense to use it in
a step.
Avoid unnecessary phrases
•Don’t include phrases that are not related to the action performed.
Don’t compress steps under one step
•Avoid compressing multiple-step under one step.
Summarize the steps as much as possible
•The test case should be still understandable to both manual and
automation testers.
06
SELENIUM
ESSENTIAL
WHAT IS
SELENIUM?
ARCHITECHTURE
LOCATORS
•Fetching a web page
driver.get("www.mstconnectph.com")
driver.navigate().to("https://www.mstconnectph.com/");

•Locating an element

BASIC SELENIUM
driver.findElement(By.id(“id"));

•Sending user input

COMMANDS driver.findElement(By.id(“id")).sendKeys(“Sample Text");

•Clearing user inputs


driver.findElement(By.id(“id")).clear();

•Get text on any element


driver.findElement(By.id(“id")).getText();
•Click
driver.findElement(By.id(“id")).click();

•Navigating backward
driver.navigate().back();

•Navigating forward

BASIC SELENIUM driver.navigate().forward();

COMMANDS •Refresh webpage


driver.navigate().refresh();

•Close browser
driver.close();

•Close driver
driver.quit();
•Moving between Windows
driver.switchTo().window("windowName");

•Moving between Frames


driver.switchTo().frame("frameName");

•Navigating forward

BASIC SELENIUM driver.navigate().forward();

COMMANDS •Refresh webpage


driver.navigate().refresh();

•Close browser
driver.close();

•Close driver
driver.quit();
SELENIUM
WAITS
07
HOW TO BECOME A
FULL-STACK TEST
AUTOMATION
ENGINEER
NEXT
Thank You •MST CONNECT

•Facebook:
https://www.facebook.co
m/mstconnectph/
•Instagram:
https://www.instagram.co •RALPH CARRAO
m/mstconnectph/ •LinkedIn:
•LinkedIn: https://ph.linkedin.com/in
https://ph.linkedin.com/in /ralph-justin-carrao-
/mstconnect- 463b23103
consultancy

You might also like