Matt Eakin - The New Tester Skillset

16
Local Touch Global Reach www.us.sogeti.com The New Tester Skillset Matthew Eakin, Manager Managed Testing Practice Sogeti, USA

description

 

Transcript of Matt Eakin - The New Tester Skillset

Page 1: Matt Eakin - The New Tester Skillset

Local Touch – Global Reach

www.us.sogeti.com

The New Tester Skillset Matthew Eakin, Manager

Managed Testing Practice

Sogeti, USA

Page 2: Matt Eakin - The New Tester Skillset

2 www.us.sogeti.com Local Touch – Global Reach

Tonight's Agenda

Emerging Trends

What is being “transformed”?

Tasks of the New Tester

Page 3: Matt Eakin - The New Tester Skillset

3 www.us.sogeti.com Local Touch – Global Reach

Emerging Trends in Software Testing

What we are seeing…

• Rapid delivery of software is necessitating rapid delivery and testing of code

• Change is part of the development process

• Rapidly changing technology is forcing new ways of testing

• Evolving testing tools

• Agile transformation is a cultural change

• Business pushing IT

• Emphasis on testing from a User/Business Point-of-View

Testing is often the “Achilles Heel” of agile teams because…

• Testing is often the last to be brought onto agile teams

• Testing Teams don’t have the right testing tools needed to “go agile”

• Testers often lack automation skills

• Adversarial relationship with Development Team

• Historical emphasis on up-front analysis of entire Project

• “A Testers job is to find, log, and manage defects.”

Page 4: Matt Eakin - The New Tester Skillset

4 www.us.sogeti.com Local Touch – Global Reach

Agile Testing – What is “transformed”?

Process Waterfall Iterative Incremental Parallel Test Driven

Strategy

Test Plan

Risk

Agile

Written Once Evolving

Per Project; Detailed; Fixed Scope Sprint Planning; Changing Scope

Assessed Upfront Assessed Continuously

Documentation

Defects

Test Documentation Working tests

Logged, Managed A Conversation

Metrics By Project; By App Team-based

Resources Multiple Projects & Apps One App; One Project at a Time

Time 4, 12, 36 Month Projects 2-4 Week Sprints

Page 5: Matt Eakin - The New Tester Skillset

5 www.us.sogeti.com Local Touch – Global Reach

Opportunities to Plan

5

Page 6: Matt Eakin - The New Tester Skillset

6 www.us.sogeti.com Local Touch – Global Reach

The “new” requirements

User

Story

• States what the user wants (functionality)

• Why they need it (business case)

Acceptance Criteria

• Boundaries of the Requirement

• The “rules”

• Definition of “Done”

Test

Cases

• Different Variation of the functionality

• Examples of the functionality

Gherkin

Scripts

• How to do the functionality

• Step-by-step, action-by-action

Page 7: Matt Eakin - The New Tester Skillset

7 www.us.sogeti.com Local Touch – Global Reach

The Waterfall to Agile Paradigm Shift

Fixed

Estimated

Requirements

Time Resources

Time

Features

Plan

Driven

Value

Driven

The Plan creates

cost/schedule estimates

Release themes &

feature intent drive

estimates

Waterfall Agile Development

Resources

Page 8: Matt Eakin - The New Tester Skillset

8 www.us.sogeti.com Local Touch – Global Reach

The Agile software tester

Task “Traditional” tester “New” tester

Team Role Test-Only Involved in all “phases”

When to test Silo’d – scripts written and

executed at the end of the

project

ATDD – scripts written and

executed before code is

deployed

What to Test Functional, End-to-end test,

Regression

Testing Pyramid/

4 Quadrants of Testing

Script Writing What code is

(click-by-click)

How code behaves

(Gherkin Scripts)

Script Execution Manual Automated

Tools Excel spreadsheets, manual

scripts

Automation frameworks

Page 9: Matt Eakin - The New Tester Skillset

9 www.us.sogeti.com Local Touch – Global Reach

Amigo Review Time

9

• At some point during the Sprint the Team Leads (if you have Leads. If not,

bring the entire team) need to get together to discuss each User Story in

the Product Backlog

3 Amigos (typically) consist of the Analyst or Product Owner, the

Developer, and the Tester

• Once a User Story is small enough, the

Amigo’s need to discuss:

Does the User Story contain enough

information

Are the Acceptance Criteria clear

Possible Test Cases/Scenarios

Gherkin Script(s)

Other testing that might be needed

Risk

• Is your point estimate still accurate?

Page 10: Matt Eakin - The New Tester Skillset

10 www.us.sogeti.com Local Touch – Global Reach

The BDD/ATDD Timeline

• (ATDD cycle model adapted from one created by James Shore with changes

suggested by Grigori Melnick, Brian Marick, and Elisabeth Hendrickson)

Page 11: Matt Eakin - The New Tester Skillset

11 www.us.sogeti.com Local Touch – Global Reach

The Testing Pyramid

Created by Mike Cohn in Succeeding with Agile

Essential points:

1. Unit Tests form the base of your testing strategy.

2. You should have more Unit Tests than any other kind of test.

3. There is no direct relationship between Unit and GUI tests.

Page 12: Matt Eakin - The New Tester Skillset

12 www.us.sogeti.com Local Touch – Global Reach

Brian Marick’s Agile Testing Quadrants

• Goal: to ensure we accomplish all testing goals

• Q1 - Technology-facing tests that support the team

• Q2 - Business-facing tests that support the team

• Q3 - Business-facing tests that critique the product

• Q4 - Technology-facing tests that critique the product

Page 13: Matt Eakin - The New Tester Skillset

13 www.us.sogeti.com Local Touch – Global Reach

What are Gherkin scripts?

• Gherkin Scripts: connects the human concept of cause and effect to the

software concept of input/process/output.

> Given – indicates something that we accept to be true in a scenario

> When – indicates the event in a scenario

> Then – indicates an expected outcome

• Can also use “And” and “But” steps to help make a Given, When, or Then

more descriptive

• It is “business readable” – business users can understand it and follow what is

happening just as easily as Analysts, Developers, and Testers

• It a “domain specific language” – it can be used across programming

languages

Page 14: Matt Eakin - The New Tester Skillset

14 www.us.sogeti.com Local Touch – Global Reach

Examples of Gherkin Scripts: Scenario: Successful withdrawal from an account

Given I have deposited $80 in my Account

When I request $20 from an ATM Machine

Then I should receive $20

Scenario: Draw then change a bond

And click on the canvas and release

And click on the canvas discretely to the right of the 1 node and release

And on the Bond Selection Area select the single bond

And click the 1 node and drag to the 2 node and release

When on the Bond Selection Area select the double bond

And select the 1-2 bond

Then the 1-2 bond is a double bond

Scenario: Grumpy cat pumpkins

Given I navigate to the Google Home Page

When I enter grumpy cat pumpkin

And I click the Search button

Then I will have Orange and Black pumpkins in the results

Page 15: Matt Eakin - The New Tester Skillset

15 www.us.sogeti.com Local Touch – Global Reach

Sample Automation Checklist

Specific Automation Functionality Must Have/ Nice to Have

1 How tool functions during a Sprint

1a Does the tool allow you to write an automated script to test this BEFORE the code is written? New functionality testing Must Have

1b Adjust scripts on the fly based on, i.e., quantity available Must Have

1c "Randomly" pick items (i.e. second item in search results) Nice to Have

1d Handling a "change" in script during the Sprint Must Have

1e Capture data & re-use later in script (or other scripts) Must Have

1f Run all scripts on multiple browsers on multiple OS's: IE, Chrome, Firefox, mobile Safari (on a mobile OS), Safari (on Apple OS X), POS Must Have

1g -integration with online/cloud testing sites to fill browser/OS gaps clarification: if we need to do specific testing on a new type of phone, does the tool have the ability to test this another way? Must Have

h Test an existing defect Must Have

1i -on multiple browsers & OS's Must Have

1j Performance testing at the step, object, or script level (run-time of each) Nice to Have

1k -Track performance data over time Nice to Have

2 Smoke & Regression testing

2a Modify (update, merge, delete) existing regression test scripts Must Have

2b Update existing regression test objects i.e. id changed on a text field Must Have

2c Validation of Content (i.e. price, quantity, discounts, total price, promo discounts applied properly to estimated total) Must Have

2d Depth of tests (just test 'happy path' or test every script you have for a particular functionality) Must Have

2e -run deeper tests as needed Must Have

2f Turn a script "off" as needed Must Have

2g Tying scripts to application code - new changes, defects Must Have

Page 16: Matt Eakin - The New Tester Skillset

www.us.sogeti.com

Local Touch – Global Reach

Thank you