Slide 1

Slide 1 text

Becming a Testing Craftsman

Slide 2

Slide 2 text

Us! • Trish Khoo • @hogfish • Jim Holmes • @aJimHolmes

Slide 3

Slide 3 text

Why Craftsmanship? ● Draws from other craftsmanship movements ● Emphasizes continual learning ● Values interactions with others as critical

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

Marshmallow challenge ● Form groups of 4 ● You should have: 20 sticks of spaghetti, 1 metre of string, 1 metre of tape and 1 marshmallow. ● Build the tallest free-standing structure you can. The marshmallow must be on top. ● You have 18 minutes!

Slide 7

Slide 7 text

ENVIRONME NT MASTERY

Slide 8

Slide 8 text

Knowing Your Environment • Setting things up • Virtual Machines • Provisioning & Configuring • Mastering your environment • What are all the moving parts?

Slide 9

Slide 9 text

Demo Deploying Applications Working With Logs

Slide 10

Slide 10 text

Exercise Mine a log

Slide 11

Slide 11 text

CREATING DATA

Slide 12

Slide 12 text

Baseline Datasets • Why use them? • What “shape” do you need?

Slide 13

Slide 13 text

Making Baseline Data • Create from scratch • SQL, code, scripts • Tools

Slide 14

Slide 14 text

Making Baseline Data • Use existing automation • Steal from an existing source • Cleanse privacy info

Slide 15

Slide 15 text

Demo Creating Random Data

Slide 16

Slide 16 text

Exercise Envisioning a dataset

Slide 17

Slide 17 text

Exercise Building Datasets

Slide 18

Slide 18 text

JIGS

Slide 19

Slide 19 text

Jigs • A Jig: one-off tool, template, guide • Scripts • Hotkeys • Regular expressions

Slide 20

Slide 20 text

Demo • Handy “jig” scripts • PowerShell • Bash • Ruby

Slide 21

Slide 21 text

Demo • Handy tools • ZoomIt • Text editors • Launchers

Slide 22

Slide 22 text

Group Exercise Create a jig script

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

Exercise How can you use these new tools for testing problems you’re currently working on?

Slide 25

Slide 25 text

AUTOMATIO N

Slide 26

Slide 26 text

Demo Examples of test approaches in different contexts

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

Tools for Testing • Automation • Differencing • Hard things • Mail

Slide 29

Slide 29 text

One off tools • Custom comparisons • Configuration / setup

Slide 30

Slide 30 text

Other tricks • Searching • File processing • OS process spelunking • Network monitoring

Slide 31

Slide 31 text

Exercises Creating test jigs Writing tests

Slide 32

Slide 32 text

Exercise How can you use these new tools for testing problems you’re currently working on?

Slide 33

Slide 33 text

CRAFTING A TEST APPROACH

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

No content

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

Exercise How can you use these new tools for testing problems you’re currently working on?

Slide 40

Slide 40 text

Us! • Trish Khoo • @hogfish • Jim Holmes • @aJimHolmes

Slide 41

Slide 41 text

Exercise Create a deployment script

Slide 42

Slide 42 text

Links This presentation: http://goo.gl/4VtFNz Ruby jig exercise worksheet: http://goo. gl/HAr4dR