How Can Testing Teams Play a Key Role in DevOps Adoption? · 2019-11-27 · DevOps- Overview...

Post on 30-May-2020

8 views 1 download

Transcript of How Can Testing Teams Play a Key Role in DevOps Adoption? · 2019-11-27 · DevOps- Overview...

© 2016 Cognizant

How Can Testing Teams Play a Key Role in DevOps Adoption?

June 3, 2016

Sujay Honnamane – QA Director @sujayh Rameshkumar Bar – Sr. Automation Architect @rameshbar

Session take away

• DevOps – Overview

• Challenges & Industry Trends

• Can testers lead DevOps adoption? - team’s story

• Continuous Integration & Testing Ecosystem – Tools & Techniques

• Intelligent Test Automation is Key

• Collaboration & team’s attitude is all that matters

DevOps- OverviewDevOps: Enterprise Capability for Continuous Integration & Delivery , enables teams to accelerate release of applications

into production by sustaining continuous feedback and improvement across the software lifecycle

Continuous Integration &Testing –Integration of software testing with

development and operations for early feedback

Continuous Release and Deployment –for increased delivery speed and frequency

Continuous monitoring –Improve quality by monitoring performance

feedback loops

Collaborative Development –Increased collaboration between teams Develop

& Test

Release & Deploy

Monitor &

Optimize

Plan & Measure

Reality Check – Simplicity is highly overrated by Unicorns!

Image source : https://paimeiitguy.wordpress.com/2008/07/28/a-beacon-of-hope-for-the-keep-it-simple-stupid-way-of-working/

Challenges for horses today

Image source: http://legacyportfolio.co.uk/blog/2012/06/08/what-are-the-challenges-facing-corporate-occupiers-today/

The Solution – One step at a time

The beginning – first DevOps meeting

OPS

What in the world?

Dev

Product owner

QA

First attempt to break the silos

Who cares? Deployment

is painful task, these folks won’t ever get it!

OPSQA Architect

Dev

Product owner

There is a better way!& QA can help!!

Oh Really?

A start... Constructive discussion – testing gets Dev in alignment

QA Dev

Product owner

Someone is making sense!!

No kidding! We work hard to make everyone’s life easy

Hmm! We are listening!

OPS

Version Control

Test Team

CI Server(Jenkins)

Test Lab

Dev/QA/STOn-Demand Environment

Stakeholders

Continuous Integration &Testing – Ecosystem

Updated Automation

Scripts

Triggers Build Verification Tests Health Checks Smoke Tests Intelligent regression

Re

sult

s

Code Deployments in auto-

provisioned environment

Accessing Environments

Build verification Results to stakeholders through email

New User Stories /

Defect Fixes –Code Commit

AutoDetect Build

/Polling the latest code

(Build Pipeline)

Updated Automation

Scripts

Dev Team

Automated Build Creation

Automated Security Scan

Unit Test

Smoke Results

Critical Scenario Results

Regression ResultsStatic Code analysis

Build Quality In

Code Coverage analysis

Instant feedback on quality

Virtualized services Test Data Management (

Data provisioning) Infrastructure as code Cloud application

management

Test

ing

job

s

Continuous Integration & Testing

Production Deployment

Repeatable

Predictable

Reliable

Production Monitoring

Pro

du

ctio

n

Fee

db

ack

Level #1 - Regression Model

Level #2 – Flipping test pyramid

Unit Tests

Integration Tests

GUI driven system tests

GUI driven E2E tests

Unit Tests

API driven integration Tests

GUI driven system tests

Exploratory/E2E tests

Level #3 – Real-time dashboards for automation tests

• One source of truth for all types of tests running across the tools/environments/Platforms

• Scripts failures are analyzed within minutes

• Improved visibility further boosted Dev-Test-Opscollaboration

• Executive support on your side

Breaking the barrier – include Performance tests in CI

Unit tests (Junit)

Build Code(Maven)

Deploy CodeTo CI Environment

Smoke Tests

Functional /Regression Tests

Mark the build as failed & review failures

90% Tests Passed?

Commit code

Smoke Tests

Performance test results analysis (manual)

RepositoryWorking

Builds

No

Yes E2E BuildFlag =Y?

YesDeploy CodeTo Performance Environment

Performance Tests

Intelligent Test Automation is Key

Repository

Source code to test scripts mapping

Intelligent test automation takes the code coverage analysis to next level

DevOps Dashboard

Can testers enable DevOps adoption? Yes, we can !

Tester

Change is Difficult in the beginning..Messy in the middle & Gorgeous in the end – Robin Sharma

We did it!

19

THANK YOU