[hcmc stc jan 2015] testing practices for scrum projects

23
© Copyright 2015 FPT Software 1 Jan, 2015 TESTING PRACTICES FOR SCRUM PROJECTS HieuNT20 Test Manager, FPT Software

Upload: ho-chi-minh-city-software-testing-club

Post on 17-Jul-2015

558 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 1

Jan, 2015

TESTING PRACTICES FOR SCRUM PROJECTS HieuNT20 – Test Manager, FPT Software

Page 2: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 2

Contents

What is an Agile Project Management?

What are Testing Activities in Scrum?

What are Agile Testing Approach?

Best Practices and Lessons Learned

Q&A

Page 3: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 3

What is Agile Project Management?

• Agile management or agile project management is an iterative and incremental method of managing the design and build activities for engineering, information technology, and new product or service development projects in a highly flexible and interactive manner.

Page 4: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 4

What are roles of tester in Scrum?

• There is NO tester role defined in Scrum:

– Unit testing is carried out by developer

– System testing is carried out by Product Owner/ Client

• Frequently testing by Product Owner each sprints

• Testing the Acceptance Criteria

– Unclear role of testers in team

Page 5: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 5

What are roles of tester in Scrum?

• Are Testers unnecessary?

– Can developers do acceptance testing well?

– Can developers test their work products well?

– Is only unit test enough?

– How to test non-functional requirements?

???

Page 6: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 6

What are roles of tester in Scrum?

• BENEFITS OF HAVING INDEPENDENT TESTER?

– Focus on customer usage over technical implementation

– Focus on uncovering defects over confirming completeness

– Support developer to do Unit Testing – tell them about testing view instead of development view

– Test User Story when completed, last gate to confirm testing completeness

Page 7: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 7

What are roles of tester in Scrum?

• BENEFITS OF HAVING INDEPENDENT TESTER?

– Collaborate with customer and Product Owner to define acceptance criteria

– Perform automation testing – saving effort for regression test

– Perform non-functional testing: usability testing, security testing, and performance testing

Page 8: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 8

What are testing activities in Scrum?

No Tasks In-Charge Day 01 Day 02 Day 03

Day

04

Day

05

Day

06 Day 07 Day 08 Day 09 Day 10

1 Daily Meeting Team member x x x x x x x x x x

2 Planning meeting Team member x

3 Sizing Meeting Team member x

4

Regression List (Update

to Customer) Test lead x

5 Test case design Team member x x x x x

6 Test case review

Test Lead/ Team

member x x x

7

Test execution (New

Function) Team member x x x x x x

8 Defect Verification Team member x x x x x x x x x x

9

Testing Status (Test

coverage/ Defect Status) Test lead x x x x

10 Regression Test Team member x x x x x x x x x

11 Daily report Test lead x x x x x x x x x x

12 Sharepoint check/ reply Team member x x x x x x x x x x

13

Ad-hoc task

(communicate with

customer)

Test Lead/ Team

member x x x x x x x x x x

Page 9: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 9

What are Agile Testing Approach?

Functional Testing

User Story Test Prototype Test

Exploratory Testing

Scenario Test Usability Test

User Acceptance Test

Performance & Load Testing

Performance Test Load Test

Security Test

Unit Testing

Unit Test combine with Test Coverage

Business Facing

Technology Facing

Critiq

ue P

rod

uct

Su

pp

ort

th

e t

eam

Unit Test Tools

Manual/ Automation

Test Manual Test

Special Tools/ Automation

Test

Page 10: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 10

What are Agile Testing Approach?

• As typical Testing, black box Testing is used

• Agile Testing is focused on using

– Automation Testing technique • Test driven development, auto builds and continuous regression

test daily reply on the automation and will not work without it.

– Exploratory Testing technique • This technique stimulates learning during test design and test

execution. While software is being tested, testers can learn things together while experience and creativity help generate new good tests to run

– Scenario Testing technique • Use real-world scenarios that exercise multiple roles

Page 11: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 11

What are Agile Testing Approach? Black Box Testing

• Black Box Testing, also known as Behavioral Testing, is a software testing method in which the internal structure/design/implementation of the item being tested is not known to the tester. These tests can be functional or non-functional, though usually functional.

Page 12: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 12

What are Agile Testing Techniques? Automation Test

• In software testing, test automation is the use of special software (separate from the software being tested) to control the execution of tests and the comparison of actual outcomes with predicted outcomes.Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or add additional testing that would be difficult to perform manually.

Page 13: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 13

What are Agile Testing Techniques? Exploratory Testing

Page 14: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 14

What are Agile Testing Techniques? Scenario Testing

• Scenario testing is a software testing activity that uses scenarios:

hypothetical stories to help the tester work through a complex

problem or test system. The ideal scenario test is a credible, complex, compelling or motivating story the

outcome of which is easy to evaluate. These tests are usually different from test cases in that

test cases are single steps whereas scenarios cover a number of steps

(http://wikipedia.org )

Page 15: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 15

Best Practices and Lessons Learned

Best Practices

Applied almost all Agile Testing Concepts

Page 16: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 16

Best Practices and Lessons Learned

Best Practices

Use regression test strategy effectively

- Make sure that all bugs are fixed

- Guarantee functional succession and new version compatibility with the previous ones.

Page 17: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 17

Best Practices and Lessons Learned

Best Practices

Use regression test strategy effectively

Page 18: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 18

Best Practices and Lessons Learned

Best Practices

Technical problems can be found when performing the Load/ Performance Test

Performance & Load Testing

Performance Test Load Test

Security Test

Page 19: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 19

Best Practices and Lessons Learned

Lessons Learned

Testers over time for 6 consecutive sprints.

Negotiate with PO to break down User stories

Negotiate with Development Team to deliver the output on day 5, 6, and 7 (maximum)

Apply automation test to cover the basic scenarios.

Page 20: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 20

Best Practices and Lessons Learned

Lessons Learned

Requirements are overridden. PO and BA cannot control the additional requests.

Baseline the system (1st release), document requirements

Requirement traceability matrix is applied to control the changes

Page 21: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 21

Summary

• Testers are necessary for Scrum Projects

• Agile Testing Approach should be defined when starting the Agile Testing project

• Regression Test strategy should be defined

• Automation Test, Performance/ Load test should be considered.

• Requirement Traceability should be applied to monitor the changes.

Page 22: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 22

Q&A

Page 23: [HCMC STC Jan 2015] Testing Practices For Scrum Projects

© Copyright 2015 FPT Software 23