SlideShare a Scribd company logo
1 of 29
Cairo Testing Meetup
Sponsorship By Hosted By
Moataz Nabil
Software Engineer in Test ,
Zalando Lounge
Berlin , Germany
moataznabil.net
05.10.2018
QA Automation Pipeline
(Web , API and Performance Tests)
Learn How to Build Your Own
Cairo Testing Meetup
AGENDA
Who Am I
About Zalando
What is Continuous Delivery ?
QA Pipeline
Today we will take a look about
Tech Stack
Demo – Run Automation Tests locally
Continuous Integration
Run QA Automation Pipeline with Jenkins Pipeline
Build Your Configuration via Jenkinsfile and Jenkins Pipelines
Questions
WHO AM I ?
• Currently I'm working as SDET at Zalando in Berlin , Germany
• I have 14+ years of IT experience across development and testing
roles, automation testing , software quality assurance ,
performance and service delivery.
• I worked in Egypt before in different companies such as (Integrant
and Cequens) and working as Technical instructor and consultant
at TestPRO and delivered selenium automation course to different
groups.
• Recently I published my first Automation Course using Selenium
WebDriver on Udemy and I have channel on YouTube and also I
published different articles on LinkedIn and Medium
Image source : Zalando SE
In the past years, software delivery has made a big step
forward thanks to the implementation of continuous delivery.
Quality Assurance is no exception, and the acceleration of the
QA pipeline has helped shorten delivery cycles and bring
higher quality software.
What is Continuous Delivery – AKA CD ?
• Continuous Delivery is the ability to get changes
of all types—including new features, configuration
changes, bug fixes and experiments—into
production, or into the hands of
users, safely and quickly in a sustainable way.
• The goal is to make deployments—whether of a
large-scale distributed system, a complex
production environment, an embedded system, or
an app—predictable, routine affairs that can be
performed on demand.
Why Most Companies Are Getting Continuous
Delivery Wrong?
What comes to your mind when I say the words Continuous Integration
(CI) and Continuous Delivery (CD)?
You’re probably already thinking of popular tools and systems that
enable these processes, such as Jenkins CI, Ansible or Bamboo, and
wondering how to integrate them so you can proudly say that your
organization has a fully operational CI/CD process.
 We tend to spend a lot of time talking about the tools required to
ensure a successful Continuous Delivery process - and not enough
focusing on other critical elements.
 Don’t get me wrong, you simply can’t have a Continuous Delivery
process without automated tools and systems - but there’s more to it
than that.
The tools are vital. But they come second.
Why Continuous Delivery Isn’t Just About the
Tools?
• Each Department Has its Own Needs When it Comes to CD
• You Need to Think About the Process - Not Just the End
Result
Continuous Delivery Success: 5 Things to
Remember
Establishing a successful Continuous Delivery process in your organization is within
your reach.
Just remember these five points before you get started:
1. Focus on the process before the tools
2. Understand the needs of each team
3. Build one process to merge the combined needs of every team in the company
4. Implement the tools
5. Appoint a Continuous Delivery Engineer to manage all of the above!
For Continuous Delivery
People Come Before the
Tools
Enterprise Architecture + Organizational Culture
=
Continuous Delivery
Continous Integration vs. Continous Delivery
vs. Continous Deployment
QA Pipeline !
A fast and reliabel QA Pipeline is usually based on multi-level
automation tests and stable continuous integration, which
runs all of these tests on a daily basis against different test
environments.
Today we will take a look about
• A simple test automation framework written in Java programming
language, which contains basic test scenarios created by using some
of the most popular testing frameworks (Rest Assured, Serenity and
Selenium), which you might find very useful for your needs)
• Integrating with some of the most well known automation tools
• Executing different types of tests
• Adding beautiful visualization to created test automation pipeline
with the Jenkins Blue Ocean
Tech Stack
• Java
• Apache Maven
• JUnit - a basic Java unit tests framework
• Serenity - the backbone of the automation framework
that provides many useful features, like detailed
reporting, parallel execution and tests grouping by tags
• REST Assured - a framework for REST API tests
• Selenium WebDriver - a tool for UI automation tests
and web browser interaction
• Taurus - a performance testing tool that allows you to
write performance tests via yml scripts
Run Automation tests (Web , API and
Performance) locally
You can run smoke, API and UI tests accordingly:
mvn clean verify -Dtags="type:Smoke"
mvn clean verify -Dtags="type:API"
mvn clean verify -Dtags="type:UI"
bzt test.yml
For performance
Test using Taurus
Continuous Integration
• As soon as you implemented your first tests automation suite, it’s
time to take care of automation execution.
• Of course, you can run your tests manually, but it doesn’t make
sense if you can automate this step as well.
Automating Execution has many benefits
• Faster tests result feedback (you can configure automation tests to
run as soon as the code has been committed)
• Some tests might have a longer execution time and you can set
up nightly runs to verify results in the morning
• Fewer mistakes can happen if steps are automated (avoid human
errors)
• You can configure several agents to run automation tests in
parallel in different environments
Jenkins CI
One of the most commonly used CI servers for automation needs
is Jenkins. It is open source, allows you to run any kind of tests, and
integrates with almost anything you can imagine. It has one of the
biggest open source communities, and they bring Jenkins to new levels
year after year.
Build Your Configuration via Jenkinsfile and
Jenkins Pipelines
• Jenkins pipelines is a continuous delivery through code tool, which is
usually added under version control tools like Git.
• It basically means that you can configure, maintain, revert and add
build plans the same way you work with a code.
• At the same time, the Jenkins pipelines workflow has a nice
representation that shows you all steps of your build plan in action.
• This gives you a nice view on build steps with timing and results for
each.
• A file that contains pipelines code with build configuration is called
Jenkinsfile.
What is Blue Ocean ?
• Blue Ocean is a project developed by the Jenkins community team,
which improves the experience of using Jenkins pipelines for
continuous integration pipeline representation.
• First, you need to install required plugins. Go into “Manage Jenkins” ->
“Manage plugins” -> “Available” -> search for ‘Blue Ocean’
Run QA Automation Pipeline with Jenkins
Pipeline
Now It’s your Turn
• I hope this was useful and gave you useful information for
building your own automation tests pipeline, maybe from
scratch.
• Now, It‘s your turn to know more about Serenity, Selenium,
Taurus, Jenkins and automation tests in general
Questions ?!
Thank You ! 

More Related Content

What's hot

Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberKMS Technology
 
Code Quality in Ruby and Java
Code Quality in Ruby and JavaCode Quality in Ruby and Java
Code Quality in Ruby and JavaSteve Hayes
 
Automation test framework with cucumber – BDD
Automation test framework with cucumber – BDDAutomation test framework with cucumber – BDD
Automation test framework with cucumber – BDD123abcda
 
Test Automation Strategy
Test Automation StrategyTest Automation Strategy
Test Automation StrategyMartin Ruddy
 
Automation - web testing with selenium
Automation - web testing with seleniumAutomation - web testing with selenium
Automation - web testing with seleniumTzirla Rozental
 
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...Edureka!
 
Testing of React JS app
Testing of React JS appTesting of React JS app
Testing of React JS appAleks Zinevych
 
Automated Web Testing Using Selenium
Automated Web Testing Using SeleniumAutomated Web Testing Using Selenium
Automated Web Testing Using SeleniumWeifeng Zhang
 

What's hot (20)

Node js introduction
Node js introductionNode js introduction
Node js introduction
 
Robot Framework
Robot FrameworkRobot Framework
Robot Framework
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
TDD and BDD and ATDD
TDD and BDD and ATDDTDD and BDD and ATDD
TDD and BDD and ATDD
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using Cucumber
 
Jenkins CI presentation
Jenkins CI presentationJenkins CI presentation
Jenkins CI presentation
 
Code Quality in Ruby and Java
Code Quality in Ruby and JavaCode Quality in Ruby and Java
Code Quality in Ruby and Java
 
CI/CD
CI/CDCI/CD
CI/CD
 
Automation test framework with cucumber – BDD
Automation test framework with cucumber – BDDAutomation test framework with cucumber – BDD
Automation test framework with cucumber – BDD
 
Test Automation Strategy
Test Automation StrategyTest Automation Strategy
Test Automation Strategy
 
Automation - web testing with selenium
Automation - web testing with seleniumAutomation - web testing with selenium
Automation - web testing with selenium
 
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
CI CD Pipeline Using Jenkins | Continuous Integration and Deployment | DevOps...
 
Testing of React JS app
Testing of React JS appTesting of React JS app
Testing of React JS app
 
Azure DevOps - Azure Guatemala Meetup
Azure DevOps - Azure Guatemala MeetupAzure DevOps - Azure Guatemala Meetup
Azure DevOps - Azure Guatemala Meetup
 
Automated Web Testing Using Selenium
Automated Web Testing Using SeleniumAutomated Web Testing Using Selenium
Automated Web Testing Using Selenium
 
Automation Testing by Selenium Web Driver
Automation Testing by Selenium Web DriverAutomation Testing by Selenium Web Driver
Automation Testing by Selenium Web Driver
 
Selenium
SeleniumSelenium
Selenium
 
Ionic & Angular
Ionic & AngularIonic & Angular
Ionic & Angular
 
Test Automation - Keytorc Approach
Test Automation - Keytorc Approach Test Automation - Keytorc Approach
Test Automation - Keytorc Approach
 
Browser_Stack_Intro
Browser_Stack_IntroBrowser_Stack_Intro
Browser_Stack_Intro
 

Similar to Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and Jenkins Pipeline

How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...Simplilearn
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own wordsSUBHENDU KARMAKAR
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+OpsShalu Ahuja
 
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree	Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree AnikeyRoy
 
Application Lifecycle Management
Application Lifecycle ManagementApplication Lifecycle Management
Application Lifecycle ManagementAmazon Web Services
 
Modern_Continuous-Integration_Webinar
Modern_Continuous-Integration_WebinarModern_Continuous-Integration_Webinar
Modern_Continuous-Integration_WebinarAbhijit Pendyal
 
Beyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms OrganizationsBeyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms OrganizationsSauce Labs
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...Amazon Web Services
 
Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Clever Moe
 
RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15Pierluigi Riti
 
CI-CD and DevOps with Ruby
CI-CD and DevOps with RubyCI-CD and DevOps with Ruby
CI-CD and DevOps with RubyPierluigi Riti
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5hemasubbu08
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
 
Cloud DevOps_ The Future of Agile Operations.pdf
Cloud DevOps_ The Future of Agile Operations.pdfCloud DevOps_ The Future of Agile Operations.pdf
Cloud DevOps_ The Future of Agile Operations.pdffeelhappy2
 
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdfLesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdfMinh Quân Đoàn
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case StudyTalentica Software
 
Introduction To Development And Operations
Introduction To Development And OperationsIntroduction To Development And Operations
Introduction To Development And Operationsteekhesawaal
 

Similar to Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and Jenkins Pipeline (20)

How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
How To Become A DevOps Engineer | Who Is A DevOps Engineer? | DevOps Engineer...
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
 
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree	Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
 
Continuous integration with Jenkins
Continuous integration with JenkinsContinuous integration with Jenkins
Continuous integration with Jenkins
 
Devops architecture
Devops architectureDevops architecture
Devops architecture
 
Application Lifecycle Management
Application Lifecycle ManagementApplication Lifecycle Management
Application Lifecycle Management
 
Modern_Continuous-Integration_Webinar
Modern_Continuous-Integration_WebinarModern_Continuous-Integration_Webinar
Modern_Continuous-Integration_Webinar
 
Beyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms OrganizationsBeyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms Organizations
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
 
Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014Continuous Integration, Deploy, Test From Beginning To End 2014
Continuous Integration, Deploy, Test From Beginning To End 2014
 
RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15
 
CI-CD and DevOps with Ruby
CI-CD and DevOps with RubyCI-CD and DevOps with Ruby
CI-CD and DevOps with Ruby
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
 
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsDevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer Tools
 
Cloud DevOps_ The Future of Agile Operations.pdf
Cloud DevOps_ The Future of Agile Operations.pdfCloud DevOps_ The Future of Agile Operations.pdf
Cloud DevOps_ The Future of Agile Operations.pdf
 
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdfLesson_06_Software_and_Automation_Testing_Frameworks.pdf
Lesson_06_Software_and_Automation_Testing_Frameworks.pdf
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
 
Introduction To Development And Operations
Introduction To Development And OperationsIntroduction To Development And Operations
Introduction To Development And Operations
 

More from Moataz Nabil

Testing in DevOps world
Testing in DevOps worldTesting in DevOps world
Testing in DevOps worldMoataz Nabil
 
Zalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium GridZalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium GridMoataz Nabil
 
Mobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and DockerMobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and DockerMoataz Nabil
 
ISTQB Agile Tester - Agile Test Tools
ISTQB Agile Tester - Agile Test ToolsISTQB Agile Tester - Agile Test Tools
ISTQB Agile Tester - Agile Test ToolsMoataz Nabil
 
Introducing DevOps
Introducing DevOpsIntroducing DevOps
Introducing DevOpsMoataz Nabil
 
A guide for automated testing
A guide for automated testingA guide for automated testing
A guide for automated testingMoataz Nabil
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing FrameworksMoataz Nabil
 
Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online Moataz Nabil
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Moataz Nabil
 
Testing with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off SessionTesting with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off SessionMoataz Nabil
 

More from Moataz Nabil (10)

Testing in DevOps world
Testing in DevOps worldTesting in DevOps world
Testing in DevOps world
 
Zalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium GridZalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium Grid
 
Mobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and DockerMobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and Docker
 
ISTQB Agile Tester - Agile Test Tools
ISTQB Agile Tester - Agile Test ToolsISTQB Agile Tester - Agile Test Tools
ISTQB Agile Tester - Agile Test Tools
 
Introducing DevOps
Introducing DevOpsIntroducing DevOps
Introducing DevOps
 
A guide for automated testing
A guide for automated testingA guide for automated testing
A guide for automated testing
 
Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
 
Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013
 
Testing with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off SessionTesting with Microsoft Technologies - Kick Off Session
Testing with Microsoft Technologies - Kick Off Session
 

Recently uploaded

MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyAnusha Are
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxalwaysnagaraju26
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456KiaraTiradoMicha
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...Nitya salvi
 

Recently uploaded (20)

MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 

Build your QA Pipeline using Serenity , Selenium WebDriver , Rest Assured and Jenkins Pipeline

  • 2. Moataz Nabil Software Engineer in Test , Zalando Lounge Berlin , Germany moataznabil.net 05.10.2018 QA Automation Pipeline (Web , API and Performance Tests) Learn How to Build Your Own Cairo Testing Meetup
  • 3. AGENDA Who Am I About Zalando What is Continuous Delivery ? QA Pipeline Today we will take a look about Tech Stack Demo – Run Automation Tests locally Continuous Integration Run QA Automation Pipeline with Jenkins Pipeline Build Your Configuration via Jenkinsfile and Jenkins Pipelines Questions
  • 4. WHO AM I ? • Currently I'm working as SDET at Zalando in Berlin , Germany • I have 14+ years of IT experience across development and testing roles, automation testing , software quality assurance , performance and service delivery. • I worked in Egypt before in different companies such as (Integrant and Cequens) and working as Technical instructor and consultant at TestPRO and delivered selenium automation course to different groups. • Recently I published my first Automation Course using Selenium WebDriver on Udemy and I have channel on YouTube and also I published different articles on LinkedIn and Medium
  • 5. Image source : Zalando SE
  • 6. In the past years, software delivery has made a big step forward thanks to the implementation of continuous delivery. Quality Assurance is no exception, and the acceleration of the QA pipeline has helped shorten delivery cycles and bring higher quality software.
  • 7. What is Continuous Delivery – AKA CD ? • Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug fixes and experiments—into production, or into the hands of users, safely and quickly in a sustainable way. • The goal is to make deployments—whether of a large-scale distributed system, a complex production environment, an embedded system, or an app—predictable, routine affairs that can be performed on demand.
  • 8. Why Most Companies Are Getting Continuous Delivery Wrong? What comes to your mind when I say the words Continuous Integration (CI) and Continuous Delivery (CD)? You’re probably already thinking of popular tools and systems that enable these processes, such as Jenkins CI, Ansible or Bamboo, and wondering how to integrate them so you can proudly say that your organization has a fully operational CI/CD process.
  • 9.  We tend to spend a lot of time talking about the tools required to ensure a successful Continuous Delivery process - and not enough focusing on other critical elements.  Don’t get me wrong, you simply can’t have a Continuous Delivery process without automated tools and systems - but there’s more to it than that. The tools are vital. But they come second.
  • 10. Why Continuous Delivery Isn’t Just About the Tools? • Each Department Has its Own Needs When it Comes to CD • You Need to Think About the Process - Not Just the End Result
  • 11. Continuous Delivery Success: 5 Things to Remember Establishing a successful Continuous Delivery process in your organization is within your reach. Just remember these five points before you get started: 1. Focus on the process before the tools 2. Understand the needs of each team 3. Build one process to merge the combined needs of every team in the company 4. Implement the tools 5. Appoint a Continuous Delivery Engineer to manage all of the above!
  • 12. For Continuous Delivery People Come Before the Tools
  • 13. Enterprise Architecture + Organizational Culture = Continuous Delivery
  • 14. Continous Integration vs. Continous Delivery vs. Continous Deployment
  • 15.
  • 16. QA Pipeline ! A fast and reliabel QA Pipeline is usually based on multi-level automation tests and stable continuous integration, which runs all of these tests on a daily basis against different test environments.
  • 17. Today we will take a look about • A simple test automation framework written in Java programming language, which contains basic test scenarios created by using some of the most popular testing frameworks (Rest Assured, Serenity and Selenium), which you might find very useful for your needs) • Integrating with some of the most well known automation tools • Executing different types of tests • Adding beautiful visualization to created test automation pipeline with the Jenkins Blue Ocean
  • 18. Tech Stack • Java • Apache Maven • JUnit - a basic Java unit tests framework • Serenity - the backbone of the automation framework that provides many useful features, like detailed reporting, parallel execution and tests grouping by tags • REST Assured - a framework for REST API tests • Selenium WebDriver - a tool for UI automation tests and web browser interaction • Taurus - a performance testing tool that allows you to write performance tests via yml scripts
  • 19. Run Automation tests (Web , API and Performance) locally
  • 20. You can run smoke, API and UI tests accordingly: mvn clean verify -Dtags="type:Smoke" mvn clean verify -Dtags="type:API" mvn clean verify -Dtags="type:UI" bzt test.yml For performance Test using Taurus
  • 21. Continuous Integration • As soon as you implemented your first tests automation suite, it’s time to take care of automation execution. • Of course, you can run your tests manually, but it doesn’t make sense if you can automate this step as well.
  • 22. Automating Execution has many benefits • Faster tests result feedback (you can configure automation tests to run as soon as the code has been committed) • Some tests might have a longer execution time and you can set up nightly runs to verify results in the morning • Fewer mistakes can happen if steps are automated (avoid human errors) • You can configure several agents to run automation tests in parallel in different environments
  • 23. Jenkins CI One of the most commonly used CI servers for automation needs is Jenkins. It is open source, allows you to run any kind of tests, and integrates with almost anything you can imagine. It has one of the biggest open source communities, and they bring Jenkins to new levels year after year.
  • 24. Build Your Configuration via Jenkinsfile and Jenkins Pipelines • Jenkins pipelines is a continuous delivery through code tool, which is usually added under version control tools like Git. • It basically means that you can configure, maintain, revert and add build plans the same way you work with a code. • At the same time, the Jenkins pipelines workflow has a nice representation that shows you all steps of your build plan in action. • This gives you a nice view on build steps with timing and results for each. • A file that contains pipelines code with build configuration is called Jenkinsfile.
  • 25. What is Blue Ocean ? • Blue Ocean is a project developed by the Jenkins community team, which improves the experience of using Jenkins pipelines for continuous integration pipeline representation. • First, you need to install required plugins. Go into “Manage Jenkins” -> “Manage plugins” -> “Available” -> search for ‘Blue Ocean’
  • 26. Run QA Automation Pipeline with Jenkins Pipeline
  • 27. Now It’s your Turn • I hope this was useful and gave you useful information for building your own automation tests pipeline, maybe from scratch. • Now, It‘s your turn to know more about Serenity, Selenium, Taurus, Jenkins and automation tests in general
  • 29. Thank You !