continuous testing 2016

57
Continuous Testing 2016 Karim Fanadka, DevTest Manager

Upload: karim-fanadka

Post on 19-Jan-2017

53 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Continuous Testing 2016

Continuous Testing2016Karim Fanadka, DevTest Manager

Page 2: Continuous Testing 2016

About me: Karim Fanadka

Job: DevTest Manager at HPE Software, 7+

Product: StormRunner Load

Favorite activates: Traveling, Ski, Blogging

Ski – France 2013

Road Trip – Iceland 2015

Page 3: Continuous Testing 2016

We are going to talk about:

AgileModern QA

SaaS

Automation

Environments

Hotfixes Continuous Deployment

Page 4: Continuous Testing 2016

SaaS – Software as a Service

Page 5: Continuous Testing 2016

Before SaaS – On Premise

Software

Users

Page 6: Continuous Testing 2016

SaaS – Software as a Service

Data Base

Servers

File System

Firewall

Users SaaS

Page 7: Continuous Testing 2016

Which product my team is testing :

StormRunner Load - SaaS product

Performance testing solution that makes it easy to plan, run, and scale web and mobile testing over the cloud.

Page 8: Continuous Testing 2016
Page 9: Continuous Testing 2016

9

1 Create and run a load test using your favorite scripting tool

2 Load Generators spin up in AWS EC2 or MS Azure

3 Results and app insights are available in real time

The product my team is testing: StormRunner Load

New

Soon

Performance testing solution that makes it easy to plan, run, and scale web and mobile testing over the cloud.

Page 10: Continuous Testing 2016
Page 11: Continuous Testing 2016

StormRunner Load as a Service

Data Base

Servers

File System

Firewall

Users SaaS Cloud

Page 12: Continuous Testing 2016

Agile – Do It Fast

Page 13: Continuous Testing 2016

Before Agile - Delivery Timeline

1 or 2 Major releases to production in 1 year

Page 14: Continuous Testing 2016

Agile StormRunner Load Delivery Timeline

March April AugustJune Nov Dec

Whats the CodeName of the next release?If you know the answer, I will invite you

to a AlleyCat BubbleBobble Elevator Action Frogger Golden Axe Hang-On

FebruaryDec

CommanderKeen Digger

6 Major releases to production in 1 yearYear: 2015

Page 15: Continuous Testing 2016

Agile – The Challenges• Test new features

• Test Regression

• Automation

• Environments

• Continues Integration / Continues Delivery

• Hotfixes

Do it in 1.5 months

• Data Migration (When update SaaS with the newer version)

• Performance Testing

• Security Testing

• Globalization

• Documentation

• And more …

Page 16: Continuous Testing 2016

Modern QA Team (DevTest)

Page 17: Continuous Testing 2016

What is DevTest? Using top end QA/DEV practices combined with DevOps techniques

QA & DEV Working very close, on the same IDE, code base, and in united process

Automation is a MUST

Manual is for new features / exception flows that are difficult to automate

NO MORE “Deliveries for QA” YES for “Push to Production”

Page 18: Continuous Testing 2016

Training“we are testing, and breaking code constantly but we help rebuild it better…….”

Page 19: Continuous Testing 2016

Continues Testing

Push new code

Master

Release branch (1.5 months)

Test new codeShort Regression

Push to production

Automation

X Many times a day

Developer Engineer

Test Engineer DevTest Team

Builds in 1 Release (1.5 month): 1,400• Full: 236• Commit: 1,164

Page 20: Continuous Testing 2016

Modern QA

DevTest

DevOpsSaaS

Dev

Product

Customer

Page 21: Continuous Testing 2016

Automation

Page 22: Continuous Testing 2016

Automation

AlleyC

at

Bubble

Comman

der...

Digger

Elevato

r

Frogge

r

Golden

Axe

Hang-O

n

IceClim

ber

JumpM

an0

100

200

300

400

500

600

700

030

80 100 120150 170

200250

300

0 0

75120

147

220

390

450

600650

0 0 0 0

100

200

270 270 270 270

Automation Active Tests - Trend

Client Backend Cloud

85% Coverage

100% Coverage

65% Coverage X 2 Browsers

Builds Number (JumpMan 1.95): 1,617• Number of Full : 427• Number of Commits: 1,190

Page 23: Continuous Testing 2016

23

Labels automation coverage SPEC – 66 pages

Page 24: Continuous Testing 2016

24

Product Tree – Regression plan

Page 25: Continuous Testing 2016
Page 26: Continuous Testing 2016
Page 27: Continuous Testing 2016

Frameworks:

Frameworks Tests

Client Testing Framework

API Testing FrameworkCloud Framework

Results

Page 28: Continuous Testing 2016

28

Bot

Page 29: Continuous Testing 2016

29

Page 30: Continuous Testing 2016

Testing based analytics from production

Page 31: Continuous Testing 2016

API discovery tool

Page 32: Continuous Testing 2016

Cost cloud tool

Page 33: Continuous Testing 2016

Cloud Testing

Page 34: Continuous Testing 2016

Example for Automation challenge17 Regions in the Cloud 15 different metrics

255 Tests

Page 35: Continuous Testing 2016

Automation – Cloud Framework - Report

Page 36: Continuous Testing 2016

Test Environments

Page 37: Continuous Testing 2016

Test Environments Farm

QA Security Performance IntegrationLocal (Linux)

Staging

Page 38: Continuous Testing 2016

Hotfixes in 1 day

Page 39: Continuous Testing 2016

Hotfixes Lifecycle

07:00Production bug

08:00Research by QA and Dev

10:00Fixing bug

16:00Testing (Staging)

14:00Testing (Local)

18:00 Push to production

Page 40: Continuous Testing 2016

Articles • 10 best practices for QA teams to deliver quality software, fast

• Blurring the lines: How the development tester role changes on agile teams

• 3 steps to building test databases for the real world

• Plan your tests and release criteria the right way

Page 41: Continuous Testing 2016

Tip

“Changing our mindset takes precedence over technology. When we work together, we will succeed.”

Thank you

Page 42: Continuous Testing 2016

@kim0z85

Question?

https://www.facebook.com/karim.f.as

https://il.linkedin.com/in/kareemfa [email protected]@HPE.com

Karim FanadkaDevTest ManagerHPE Software

Page 43: Continuous Testing 2016

46

Page 44: Continuous Testing 2016

47

12/27/2015 3/6/2016

3/6/2016Go liv e

3/2/2016Staging

2/28/20 16CF

2/14/20 16FF

1/3/2016DevTest Start

Ice Climber V1.9 (Demo T imeline)

• Production

• Staging

• CF

• FF

• Dev

Page 45: Continuous Testing 2016

48

CIProductionFFCF StagingSecurity + SAASFeature discovery Defects -> ER’s

Page 46: Continuous Testing 2016

In Progress

49

12/27/2015 3/6/2016

3/6/20 16Go liv e

3/2/2016Staging

2/28/20 16CF

2/14/2016FF

1/3/2016DevTest Start

Ice Climber V1.9 (Demo T imeline)

Preparations: Feature discovery (meetings) Defects review (re prioritize, clean) Writing automation spec - example Automation design for exist and new frameworks

Testing: Test new features (Top priority, to make sure no delay in the timeline) Write automation tests to increase coverage (in the first 2 weeks, content is very low)

Page 47: Continuous Testing 2016

Feature Freeze

50

12/27/2015 3/6/2016

3/6/20 16Go liv e

3/2/2016Staging

2/28/20 16CF

2/14/2016FF

1/3/2016DevTest Start

Ice Climber V1.9 (Demo T imeline)

10 days for stabilization : Test un finished features (2 days in the FF) Prepare [Cloud deployment, move to Release branch, prepare regression plan, update AGM] Regression ~7 days – Product matrix Migration – Copy DB from production + File system

In addition: Prepare Security Env Demo all the features to Security / SaaS Discover next release features

Page 48: Continuous Testing 2016

Code Freeze

51

12/27/2015 3/6/2016

3/6/20 16Go liv e

3/2/2016Staging

2/28/20 16CF

2/14/2016FF

1/3/2016DevTest Start

Ice Climber V1.9 (Demo T imeline)

2 days for final validations : Verify defects that was fixed in the end of FF Validate Security + Performance + Globalization have no holders

Staging ~1 day sanity

Production ~1 day sanity

Page 49: Continuous Testing 2016

CI/CD

52

Follow all Jenkins failures Test issue: Fix test Code issue: Contact Dev and fix directly / Open defect CI/CD Env issue: Contact DevOps

Deployment SaaS QA1 / SaaS Q2 / Migration / Security Cloud images

On Premise

Builds Number (JumpMan 1.95): 1,617• Number of Full : 427• Number of Commits: 1,190

Page 50: Continuous Testing 2016

Defects

Page 51: Continuous Testing 2016

54

Coverage : 65% - example Tests: 700 active tests UI product tree covergae

AutomationFrameworks

Client Backend Coverage: 85% - example API discover

Cloud Coverage: All regions – 20 Regions

Protocols –

Metrics

NV

Save months of WD Cover new LG’s very fast Duration: 1.5 hour

~13 min (all tests)

Commit

Full

~2.5 min (main flows)

Page 52: Continuous Testing 2016

Automation

AlleyC

at

Bubble

Comman

der...

Digger

Elevato

r

Frogge

r

Golden

Axe

Hang-O

n

IceClim

ber

JumpM

an0

100

200

300

400

500

600

700

030

80 100 120150 170

200250

300

0 0

75120

147

220

390

450

600650

0 0 0 0

100

200

270 270 270 270

Automation Active Tests - Trend

Client Backend Cloud

85% Coverage

100% Coverage

65% Coverage X 2 Browsers

Builds Number (JumpMan 1.95): 1,617• Number of Full : 427• Number of Commits: 1,190

Page 53: Continuous Testing 2016

56

Next slides are reference – DON’T PRESENT

Page 54: Continuous Testing 2016

57

Labels automation coverage SPEC – 66 pages

Page 55: Continuous Testing 2016

58

Product Tree – Regression plan

Page 56: Continuous Testing 2016

59

API Coverage

Page 57: Continuous Testing 2016

60

API Coverage