SlideShare a Scribd company logo
Continuous Testing
Alberto López González
Overview
• Continuous Testing refers to the process of testing early, often, in an
automated way usually triggered by any change on the code.
• The purpose of using it is to reduce the time for obtaining feedback
on the code quality that could show any business risk.
• It doesn’t require any manual intervention to start, it is part of the
continuous delivery process.
• Continuous Testing relies on Test Automation
Advantages
• Faster feedback regarding the level of confidence / risks related to a
build.
• Avoid advancing to next stages, like unnecessary deployments /
testing rounds when build has been identified not ready.
• Helps organizing on identifying the higher risk items, in terms of the
business goals.
• It could help to provide some useful metrics from the outputs of the
generated tests.
Adding Terraform
• It allow us to create, change and improve our current infrastructure.
• As a tool is cloud-agnostic, it manages specific providers for the most
common clouds, so we can work with different cloud platforms in a
single project.
• It uses the concept of Infrastructure As Code, allowing us to define
our desired infrastructure writing code that can be reused or
parametrized, adding predictability not only to the functional
requirements of our application.
• It allow us to keep track of our infrastructure in order to modify it or
destroy it with a single command.
Practical Example
Continue Testing Pipeline
Tools / Languages / Frameworks
• GIT: Control version tool where our code repositories are created.
• Java (Spring Boot): Programming language of our web application.
• Gradle / Maven: Frameworks for building / managing our executions.
• Jenkins: CI/CD tool for creating the definition and manage the execution of
our automated pipelines.
• Docker: Technology for creating portable containers of our application.
• Terraform: Tool for managing our infrastructure with code.
• Selenium / TestNG / Rest Assured: Java based frameworks used for creating
our automated tests.
• Shell scripting: Command line interpreter for executing some operations.
Feature /
Code Change
Source Control Build Artifact
Create / Push
Image
Create Temporary
Infrastructure
and Deploy
Execute
Automated Tests
Destroy
Temporary
Infrastructure
Tests
Passed
?
Deploy to Real
Environment
Notify Users
About Tests
Failure
Internet
Load Balancer DEV
Container
Task
Service EC2 Instance
ECS Agent
ECS Cluster (DEV)
Load Balancer QA
VPC
Region
Container
Task
Service EC2 Instance
ECS Agent
ECS Cluster (QA)
Pipeline Example
Code Repositories
• Web application:
https://github.com/albertolop85/gs-spring-boot
• Terraform:
https://github.com/albertolop85/basic-terraform-webapp
• Automated Tests:
https://github.com/albertolop85/selenium-training
Thank You
Contact: alberto.lopez@digitalonus.com

More Related Content

PDF
Introduction to Automated Testing
PDF
Continuous Integration 101
PPTX
Continuous Integration as a Way of Life
PPT
Continuous Integration and Builds
PDF
Continuous Integration at T3CON08
PPTX
Continuous integration, delivery & deployment
PPTX
Integration Testing as Validation and Monitoring
PDF
Sencha Roadshow 2017: What's New in Sencha Test
Introduction to Automated Testing
Continuous Integration 101
Continuous Integration as a Way of Life
Continuous Integration and Builds
Continuous Integration at T3CON08
Continuous integration, delivery & deployment
Integration Testing as Validation and Monitoring
Sencha Roadshow 2017: What's New in Sencha Test

What's hot (20)

PDF
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
PDF
WSO2 IoTS Device Manufacturer Guide
PDF
Case Study – Regression Testing (Online Exam Software)
PPTX
Introduction to Continuous integration
PPTX
Regression Testing with Symfony
PPTX
Continuous Integration
PDF
Improving software quality using Continuous Integration
PPTX
Devops for easy use
PPTX
Taking your version control to a next level with TFS and Git
PDF
Continuous Integration (CI) - An effective development practice
PPT
Continuous Integration: A Case Study
ODP
Improving code quality using CI
DOC
Resume_Trupti
PPTX
What is Continuous Integration and Continuous Delivery
PPTX
Software engineering
PPTX
Silk Performer Presentation v1
PPTX
Dev/Test scenarios in DevOps world
PPT
Continuous deployment steve povilaitis
PDF
Automation Testing Approach for Responsive Web Design
PPTX
Why NXTware Remote for Jenkins
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
WSO2 IoTS Device Manufacturer Guide
Case Study – Regression Testing (Online Exam Software)
Introduction to Continuous integration
Regression Testing with Symfony
Continuous Integration
Improving software quality using Continuous Integration
Devops for easy use
Taking your version control to a next level with TFS and Git
Continuous Integration (CI) - An effective development practice
Continuous Integration: A Case Study
Improving code quality using CI
Resume_Trupti
What is Continuous Integration and Continuous Delivery
Software engineering
Silk Performer Presentation v1
Dev/Test scenarios in DevOps world
Continuous deployment steve povilaitis
Automation Testing Approach for Responsive Web Design
Why NXTware Remote for Jenkins
Ad

Similar to Continuous Testing With Terraform (20)

PPTX
Testing in the new age of DevOps
PDF
Top DevOps Automation Tools to Maximize Efficiency.pdf
PDF
Preparing for DevOps
PPTX
DevOps model in software engineering.pptx
PPTX
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
PPT
Presentation 1 open source tools in continuous integration environment v1.0
PPTX
Jenkins an opensource CICD platform for all
PPTX
Devops architecture
PPTX
QA Automation Solution
PPTX
Continuous Integration
PPTX
DevOps Practices in a Nutshell
PPTX
Automation Testing with Test Complete
PDF
Automating Regression Testing in CI_CD.pdf
PDF
Augmenting Software Development with Containerization in Automation Testing.pdf
PDF
Getting to Walk with DevOps
PDF
jenkins.pdf
PDF
Jenkins_1679702972.pdf
PDF
Automating Regression Testing in CI_CD.pdf
PDF
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
PPTX
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
Testing in the new age of DevOps
Top DevOps Automation Tools to Maximize Efficiency.pdf
Preparing for DevOps
DevOps model in software engineering.pptx
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
Presentation 1 open source tools in continuous integration environment v1.0
Jenkins an opensource CICD platform for all
Devops architecture
QA Automation Solution
Continuous Integration
DevOps Practices in a Nutshell
Automation Testing with Test Complete
Automating Regression Testing in CI_CD.pdf
Augmenting Software Development with Containerization in Automation Testing.pdf
Getting to Walk with DevOps
jenkins.pdf
Jenkins_1679702972.pdf
Automating Regression Testing in CI_CD.pdf
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
Ad

Recently uploaded (20)

PDF
top salesforce developer skills in 2025.pdf
PDF
Nekopoi APK 2025 free lastest update
PDF
System and Network Administraation Chapter 3
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
history of c programming in notes for students .pptx
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
System and Network Administration Chapter 2
PPTX
Reimagine Home Health with the Power of Agentic AI​
top salesforce developer skills in 2025.pdf
Nekopoi APK 2025 free lastest update
System and Network Administraation Chapter 3
Navsoft: AI-Powered Business Solutions & Custom Software Development
Understanding Forklifts - TECH EHS Solution
Wondershare Filmora 15 Crack With Activation Key [2025
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Which alternative to Crystal Reports is best for small or large businesses.pdf
Operating system designcfffgfgggggggvggggggggg
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Design an Analysis of Algorithms II-SECS-1021-03
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
history of c programming in notes for students .pptx
How to Choose the Right IT Partner for Your Business in Malaysia
System and Network Administration Chapter 2
Reimagine Home Health with the Power of Agentic AI​

Continuous Testing With Terraform

  • 2. Overview • Continuous Testing refers to the process of testing early, often, in an automated way usually triggered by any change on the code. • The purpose of using it is to reduce the time for obtaining feedback on the code quality that could show any business risk. • It doesn’t require any manual intervention to start, it is part of the continuous delivery process. • Continuous Testing relies on Test Automation
  • 3. Advantages • Faster feedback regarding the level of confidence / risks related to a build. • Avoid advancing to next stages, like unnecessary deployments / testing rounds when build has been identified not ready. • Helps organizing on identifying the higher risk items, in terms of the business goals. • It could help to provide some useful metrics from the outputs of the generated tests.
  • 4. Adding Terraform • It allow us to create, change and improve our current infrastructure. • As a tool is cloud-agnostic, it manages specific providers for the most common clouds, so we can work with different cloud platforms in a single project. • It uses the concept of Infrastructure As Code, allowing us to define our desired infrastructure writing code that can be reused or parametrized, adding predictability not only to the functional requirements of our application. • It allow us to keep track of our infrastructure in order to modify it or destroy it with a single command.
  • 6. Tools / Languages / Frameworks • GIT: Control version tool where our code repositories are created. • Java (Spring Boot): Programming language of our web application. • Gradle / Maven: Frameworks for building / managing our executions. • Jenkins: CI/CD tool for creating the definition and manage the execution of our automated pipelines. • Docker: Technology for creating portable containers of our application. • Terraform: Tool for managing our infrastructure with code. • Selenium / TestNG / Rest Assured: Java based frameworks used for creating our automated tests. • Shell scripting: Command line interpreter for executing some operations.
  • 7. Feature / Code Change Source Control Build Artifact Create / Push Image Create Temporary Infrastructure and Deploy Execute Automated Tests Destroy Temporary Infrastructure Tests Passed ? Deploy to Real Environment Notify Users About Tests Failure
  • 8. Internet Load Balancer DEV Container Task Service EC2 Instance ECS Agent ECS Cluster (DEV) Load Balancer QA VPC Region Container Task Service EC2 Instance ECS Agent ECS Cluster (QA)
  • 9. Pipeline Example Code Repositories • Web application: https://github.com/albertolop85/gs-spring-boot • Terraform: https://github.com/albertolop85/basic-terraform-webapp • Automated Tests: https://github.com/albertolop85/selenium-training