27
© 2016 by Winterboer Agile Analy4cs www.WinterboerAgileAnaly4cs.com Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July 26, 2016 Atlanta, Georgia Lynn Winterboer, Agile Analy4cs Educator and Coach, @AgileLynn Cher Fox, DW/BI Solu4on Architect, @TheDatanista

Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams

PresentedtoAgile2016July26,2016Atlanta,GeorgiaLynnWinterboer,AgileAnaly4csEducatorandCoach,@AgileLynnCherFox,DW/BISolu4onArchitect,@TheDatanista

Page 2: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Agenda

• Whyistestautoma4onimportantforagiledatateams?

• Whyaren’talldatateamsautoma4ngtheirteststoday?

• Whatisthepathtotestautoma4on?

• WhatdoessimpleDWtestautoma4onlooklike?

Page 3: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Why is test automation important to agile data teams?

Page 4: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Agile Demands Something Different Agilecallsforsmallincrementsof“poten4allyshippablecode”.ThatmeansQAisessen4alonaregular,frequentbasis.

Howcanwebesurethatsomethingwedo

here

Doesn’tbreaksomethingwedidback

here

Test Suite Test Suite Test

Suite Test Suite Test

Suite Test Suite Test

Suite

Manualtes4ngquicklybecomesinfeasible.Thetestsuitegrowslargereachitera4on.

Page 5: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Testing is Central to Agile

AgileBIdevelopmentisdrivenbytests

Acceptancecriteriaarethedefini4onof“done”

Passingtestsarethemeasureof“done”

Regressiontestsarethemeasureof“s4lldone”

Page 6: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Agile Teams Understand…

 …thattestautoma4onis  akeytechnicalenabler

 to“beingagile”

Page 7: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Why aren’t all data teams automating their tests

today?

Page 8: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

DW/BI Test Automation Challenges Dataindustrydoesnotfocusontes4ngasmuchasotherdisciplines:

Educa4onTeamMembers

Skills&Discipline

Page 9: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

DW/BI Test Automation Challenges Exis4ngtoolsarenoteasilyadaptedtothedataworld:

DevelopmentLanguages

Web,MobileandUIFocus

Page 10: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

DW/BI Test Automation Challenges Goodtestdatasetsarehardtocomeby:

Largevolumes(onsmallenvironments)

SharedtestenvironmentsDatasensi4vity

Smallsetsneedextraplanninganddesign

Page 11: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

What is the path to test automation?

Page 12: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Exercise: Path to test automation  Insmallgroups,discussthefollowingpre-requisitestotestautoma4onanddecideonthefirstthreestepsaDW/BIteamshouldtaketowardtestautoma4on:

BusinessDomainKnowledge LearningCulture TestMaintenance RepeatableTests

TestDesign TestFeedbackLoops DedicatedTesters UITests

ExploratoryTes4ng Tes4ngSkills TestDataSets UnitTests

TestEnvironment AutomatedBuilds Tes4ngisaTeamSport TestOrganiza4on

ManualTests BuildQualityIn AcceptanceTests TestAutoma4onTool

Page 13: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Agile Testing Perspectives

HighQualityDW/BISystem

3) Tools & Automa/on

1) A2tudes & Culture

2) Skills & Prac/ces

Tes4ngisaTeamSportLearningCultureBuildQualityIn

Tes4ngSkillsTestDesign,Organiza4on&MaintenanceRepeatableTestsFeedbackLoops

TestEnvironmentBuildAutoma4onTestDataSetsTestAutoma4onTool

Page 14: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Test Automation Pyramid

AppTests

AcceptanceTests

Unit&ComponentTests

ManualTests

Lisa Crispin & Janet Gregory, Agile Tes6ng: A Prac6cal Guide for Testers and Agile Teams

Pushasmanytestsaspossibletothislayer

Writetheseinbusinessdomainlanguage

BrieleteststhatareaffectedbyUIchanges

Subjec4veuserfeedbackisessen4al

Page 15: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Good Places to Start § Unittestsonnewdevelopment

AGILETEAMSWRITETESTSBEFOREWRITINGANYCODE

§ Regressiontestsyouwishyouhad,beforebuildingsomethingnew

§ Deploymentteststoensureeachbuildmigratedcorrectly

§ Painfultestsetuportestexecu4onpronetoerror

Page 16: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

What does simple data warehousing test automation

look like?

Page 17: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Basic Approach

Componentundertest

SourceSchema

TargetSchema

ActualResults

TestData

TestRunner

Setup Execute Test Report CleanUp

Sta4cTestData

ExpectedResults

TestQueries

loadtestdata

compareresults

executetests

basedonsp

ecificinput

data

Page 18: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

What Constitutes a Test?

ActualResult(fromtest)

ExpectedResult(queriedor

pre-calculated)

Page 19: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com©KenCollier,2016,AllRightsReserved

Exercise: Test Data & Expected Results  Insmallgroups,defineatleastonetest,withadescrip4onofthetestdatasetandhowyouwoulddeterminetheexpectedresults,forthefollowinguserstory:

AsaSalesManager,Iwanttoknowthe$totalofordersthathavesuccessfullyshipped,bysalesrepandsalesregion,SothatIcanmanagethesalesteam’sprogresstowardquarterlyrevenuegoals.

Page 20: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Demonstration

Page 21: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Testing Framework Func4onalityandComponents:§  Examplesourcesystem

§  SQLServerandrelatedmodel(“AdventureWorks”)§  Screensfordescribingandcrea4ngtestcases

§  MicrosoiAccessform§  Testexecu4on

§  SQLServerstoredprocedures(individualtests)§  PowerShellscripts(batchexecu4on)

§  BIReportsandDashboardsformonitoring§  MSPowerBI

Page 22: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Demo Workflow 1) Define a test (MS Access form) 2a. Execute a single test (SQL Server stored procedure)

3. Report on test results (MS Power BI) 2b. Execute a batch of tests (PowerShell scripts)

Page 23: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Summary and Resources

Page 24: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Session Intent

 1)Why:   TestAutoma:oniskeytoDW/BIagilesuccess

 2)How:   Automateasolidtes:ngprac:ce;don’tautomatechaos

 3)Show:   DW/BItestautoma:onisnotthathard

Page 25: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

DW/BI Test Automation References Reference Descrip,on

AgileAnaly*cs:AValue-DrivenApproachtoBusinessIntelligenceandDataWarehousingbyDr.KenCollier

Chapter7:Test-DrivenDataWarehouseDevelopment

AgileDataWarehousingfortheEnterprise:AGuideforSolu:onArchitectsandProjectLeadersByRalphHughes

PartV:AgileEDWQualityManagementPlanning

AutomatedDataWarehouseTes*ng:Beginner’sStep-by-StepGuidebyG.Suden

Java-basedtestautoma4onforsimpledatawarehousingtests

AgileTes*ng:APrac:calGuideforTestersandAgileTeamsbyLisaCrispinandJanetGregory

Greatintroduc4ontoagiletes4ngforanytypeofdevelopment

MoreAgileTes*ng:LearningJourneysfortheWholeTeambyLisaCrispinandJanetGregory

Includesseveralchaptersontestautoma4onaswellasonededicatedtoagiletes4ngforDW/BI

Page 26: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

DW/BI Test Automation Tools Tool Descrip,on

DBFitdbfit.github.io/dbfit/

Opensourcedatabasetes4ngtool

iCEDQicedq.comQuerySurgeQuerySurge.comZuzenaZuzena.com

Testautoma4ontoolsdesignedspecificallyforDataWarehousingandrelatedprojects.

Informa,caDataValida,onwww.informa4ca.com/etl-tes4ng

AccelerateandautomateInforma4caETLtes4nginbothproduc4onenvironmentsanddev/test

Analy,xDataServicesanaly4xds.comWhereScapewherescape.comTimeXtender4meXtender.com

DWautoma4ontoolsthatincludetestautoma4oncapabili4es.

Tricen,sToscawww.tricen4s.com/tricen4s-tosca-testsuite/

DW-friendlytestautoma4ontool

Page 27: Test Automation: Agile Enablement for Data Warehousing and ... · Test Automation: Agile Enablement for Data Warehousing and Business Intelligence Teams Presented to Agile 2016 July

©2016byWinterboerAgileAnaly4cs�www.WinterboerAgileAnaly4cs.com

Questions?

Lynn Winterboer Agile Analy/cs Educator & Coach

www.WinterboerAgileAnaly/cs.com lynn@WinterboerAgileAnaly/cs.com

@AgileLynn

Cher Fox DW/BI Solu/on Architect

www.foxconsul/ng.co cfox@foxconsul/ng.co

@TheDatanista

Special thanks for contribu6ng to this presenta6on:

Deborah Krinitzsky Brad Ewald

Ken Collier Joe Bernardini