13
Testing Automation in Agile environment

Testing automation in agile environment

Embed Size (px)

DESCRIPTION

Test automation in agile environment, levture given in Matrix Israel conference

Citation preview

Page 1: Testing automation in agile environment

Testing Automation in Agile

environment

Page 2: Testing automation in agile environment

The old and “good” (?) water fall

“The "traditional" model of software development

lifecycle.”

1 Analysis 2 Design 3 Coding 4 Testing

Page 3: Testing automation in agile environment

The old and “good” (?) water fall

Testing automation life cycle in water fall

• Only regression testing covered by TA

• Testing automation follow the manual testing versions

(always regression testing of the previous version

executed)

• TA design always by the manual testing group

• Execution Priority by the manual testing manager

• Very easy to control and manage

Page 4: Testing automation in agile environment
Page 5: Testing automation in agile environment

Testing in Agile environment

Page 6: Testing automation in agile environment

Agile concept

Emphasize collaborative, integrated teams, frequent

deliveries, and the ability to adapt to changing business

needs

Page 7: Testing automation in agile environment

The Tester role in Agile environment

• Focuses on testing iteratively against newly developed

code until quality

• Testers have to adapt to rapid deployment cycles and

changes in testing patterns.

• Agile testing involves testing from the customer

perspective as early as possible

Page 8: Testing automation in agile environment

Testing Automation in Agile

environment

Since working increments of the software are released

often in agile software development, there is also a need

to test often. This is commonly done by using automated

tests to minimize the amount of manual labor involved.

Undertaking only manual testing in agile development

may result in either buggy software or slipping

schedules, as it may not be possible to test the entire

build manually before each release.

Page 9: Testing automation in agile environment

Testing Automation as

part of the scrum team

• Testing automation activities is part of the backlog

document

• Automation developer take part in all scrum stages

• Automation status is part of the morning meetings

• Testing automation is a MUST as part of the scrum

testing scope

• Automation developer works closely with all team

members (Manual tester, Developer, PMO, etc…)

Page 10: Testing automation in agile environment

Testing Automation execution

Scrum work flow

• Testing automation execution occur after the first

code delivery

• Usually will try to use existing code

• API execution is an advantage

• Result analyze by the whole scrum team

Page 11: Testing automation in agile environment

Some Agile testing principles

justify Testing Automation

• Testing moves the project forward

• Testing is not a phase – it’s a way of life (ongoing

execution)

• Every body test – Manual testers execute automation

• Keep the code clean – rerun testing execution

• Test Driven advantage – very easy to

develop in automated testing

Page 12: Testing automation in agile environment

Testing Automation Agile V.S Water fall

Water Fall Agile

N/A TA with the team Testing Design

N/A Start develop where the

application is stable

Coding

N/A Take part in the backlog

written part

New features

TA developer execute

regression testing

All the team execute

things ready

Execution

Send to the team Send to the team Reporting

Given by the manual

group manager

Decide with the team Working scope

Page 13: Testing automation in agile environment

Thank you All!

Any Questions?