Continuous Testing Using Shippable and Docker

34
WhiteHedge @thewhitehedge [email protected] Continuous Testing using Shippable and Docker WhiteHedge Technologies http://www.whitehedge.com/docker-microservices/

Transcript of Continuous Testing Using Shippable and Docker

Page 1: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Continuous Testing using Shippable and Docker

WhiteHedge Technologies

http://www.whitehedge.com/docker-microservices/

Page 2: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected] 2

- An Overview

Global Presence

Agile + Flexible

Thorough + Quick Learner

Competitive + Comprehensive

Honest + Transparent

Young + Mature

Innovative + Creative

More about us …What defines us ?

California

New Jersey Rotterdam

Pune

Envision Products |

Convert into businesses

100+ employees | 50+ live

products world-wide

The best of the Talent and

Infrastructure

Started 2003 | Focused Agile

Product Development

Self funded | Well funded |

Profitable

INTRODUCTION

http://www.whitehedge.com/docker-microservices/

Page 3: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected] 3

WhiteHedge is a first and the only Docker Certified Training andDocker Certified Consulting

company in India serving clients worldwide.

- An OverviewINTRODUCTION

http://www.whitehedge.com/docker-microservices/

Page 4: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Typical DevOps Phases

oContinuous Integration

oContinuous Delivery

oContinuous Testing

oContinuous Monitoring

Page 5: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

The Environments

Diagram Credit: https://sdarchitect.files.wordpress.com/2012/10/cicdctcm.png

http://www.whitehedge.com/docker-microservices/

Page 6: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Continuous Delivery has reduced software development cycles from months to weeks or even days, but testing has failed to keep.

how Continuous Testing brings agile processes to testing and provides reduced time-to-release without software quality compromises

http://www.whitehedge.com/docker-microservices/

Page 7: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Is Continuous Testing really just one phase in DevOps?

http://www.whitehedge.com/docker-microservices/

Page 8: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

The Love Triangle

oDevOps = Marriage of Development and Operations

oWhere does the Testing Team fit in the definition?

oTesting teams need to assert themselves to fit in all phases of DevOps

o http://www.whitehedge.com/docker-microservices/

Page 9: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Testing in all phases

o Pre-flight testing

o Unit Testing

o Functional Testing

o Integration Testing

o Nightly and Weekend Regression Tests

http://www.whitehedge.com/docker-microservices/

Page 10: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Testing Maturity

o Key differentiator of best DevOps infrastructures

o Vital part of DevOps process

o Test orchestration and automation is still a challenge

o Verify the changes. Verify them fast.

o Test code changes and if they integrate them well

o Ensure changes do not blow up the product!

Credit: http://devops.com/2015/02/02/devops-continuous-testing/

http://www.whitehedge.com/docker-microservices/

Page 11: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Early, Frequent and Accurate Testing requires access to real world testing environments.

Service Virtualization in the form of Containerization using Docker can solve this

problem.

Testing Maturity

http://www.whitehedge.com/docker-microservices/

Page 12: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

What is Docker?

Linux Container

Benefits:Speed

PortabilityDensity

Open Source

http://www.whitehedge.com/docker-microservices/

Page 13: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Docker is not a VM

http://www.whitehedge.com/docker-microservices/

Page 14: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Typical Design

CI Build and Unit Testing

Nightly Builds Build, Unit Test and Deploy to QA Env

Run Integration Tests (Selenium

Tests)

Feedback Email Test Report

Failing Tests Polluted the Env. Even after successful

tests, the env was changed.

For every deployment, the Env has to be setup

http://www.whitehedge.com/docker-microservices/

Page 15: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

After Dockerizing

Dockerfile (app1)

Dockerfile (app2)

Dockerfile (db)

Docker Hub

Base-Image-App1

Base-Image-App2

Base-Image-DB

CI

Server

Deployment

Script

Test Environment:

App1 App2

DB

Selenium

Tests

Feedback –

Email Test

Report

http://www.whitehedge.com/docker-microservices/

Page 16: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Shippable makes this dockerdeployment and thus testing,

simple

http://www.whitehedge.com/docker-microservices/

Page 17: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Shippable

SaaS Platform

Reduces the time taken for code to be built, tested and deployed to production

Shippable CI/CD

Shippable Formations

http://www.whitehedge.com/docker-microservices/

Page 18: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Automated Deployment Pipelines

http://www.whitehedge.com/docker-microservices/

Page 19: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]://www.whitehedge.com/docker-microservices/

Page 20: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]://www.whitehedge.com/docker-microservices/

Page 21: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]://www.whitehedge.com/docker-microservices/

Page 22: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Shippable Formations

Easy way to provision, configure, and deploy multi-container Dev and Test clouds (environments)

Fully integrated with the updated Shippable CI/CD platform, and together, they create an automated, frictionless pipeline from source control to full-topology environments

Can mimic your production environment or represent any combination of software component versions you'd like to deploy.

http://www.whitehedge.com/docker-microservices/

Page 23: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Shippable Formations (Contd.)

Fully orchestrated, persistent, and 'smart', i.e. they can automatically update themselves when any new code is committed into any component of the application.

Ensures that your Dev and Test labs always run the latest code and are reliable indicators of how that code will behave in production.

http://www.whitehedge.com/docker-microservices/

Page 24: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Creating Formations

http://www.whitehedge.com/docker-microservices/

Page 25: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]://www.whitehedge.com/docker-microservices/

Page 26: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Notice the services under each env, the docker image and how it is mapped.

http://www.whitehedge.com/docker-microservices/

Page 27: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Status of deployment of services on each environments

http://www.whitehedge.com/docker-microservices/

Page 28: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Environment Variables can be set as a part of configuration

http://www.whitehedge.com/docker-microservices/

Page 29: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Image details and the associated configurations

http://www.whitehedge.com/docker-microservices/

Page 30: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Why Formations?

Automation without scripts

Automated integration/functional testing

One-click upgrade and rollback

No more 'works on my machine' bugs

Developer-focused approach

Cost effective

http://www.whitehedge.com/docker-microservices/

Page 31: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Lighthouse

It is a docker image watcher. You can add any image from any registry that you want to track and get notified via email when there is an update.

http://www.whitehedge.com/docker-microservices/

Page 32: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Interesting Facts about Shippable

Shippable was founded in 2013 by Avi Cavale and Manisha Sahasrabuddhe

It was known as Qhode initially

Avi managed to raised the first round of funding over a game of table tennis!

Shippable has raised over $10 million funding till today

Formations was launched on 18 June 2015

Shippable runs more than 60,000 containers weekly

Google Kubernetes can do 150-200 daily builds using Shippable

Shippable calls itself to be in the era of DevOps 2.0, meaning developers no longer have to write code and scripts in unfamiliar languages to make deployments

http://www.whitehedge.com/docker-microservices/

Page 33: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

GET IN TOUCH WITH US

esitate!

http://www.whitehedge.com/devops.html

http://www.whitehedge.com/docker-microservices/

http://www.whitehedge.com/docker-microservices/

Page 34: Continuous Testing Using Shippable and Docker

WhiteHedge

@[email protected]

Thank You!Questions?