SlideShare ist ein Scribd-Unternehmen logo
1 von 2
Downloaden Sie, um offline zu lesen
Page 1
PURIFF: Scoping the Sprint Tests
Mahfoud Amiour
CSPO, CSM
mamiour@softenia-solutions.com
Introduction
In Scrum each Sprint produces an increment which is a partial and potentially releasable product. To
be releasable, the increment must meet all acceptance criteria and pass different categories of tests.
Consequently, each Sprint should consider all testing activities required for a releasable product.
Unfortunately, I observed during my interventions on different projects that many teams only focus
on a sub-set of testing activities during the Sprint.
In this article I introduce the acronym PURIFF as a concept containing all test categories to be
conducted during the Sprint. The Scrum team can use the PURIFF acronym as a checklist to
determine which categories of tests are relevant to its context
Each element of the PURIFF acronym represents a category of tests:
• P: for Performance testing;
• U: covers Unitary testing ;
• R: deals with non-Regression tests;
• I: represents Integration testing ;
• F: for Functional tests ;
• F: covers non-Functional tests.
PURIFF testing scope
The scope of PURIFF includes the following categories of tests:
• Performance tests. Performance tests ensure that the system response time is acceptable
for the users. They consist in measuring the application’s reaction time to the different
requests. There are different tools (commercial and open source) that can be used for
performance tests: HP Load Runner, IBM Rational Performance Tester and JMeter are
examples of performance testing tools.
• Unitary tests. Unitary tests are written by developers to test individual classes. They fall into
the test driven development or TDD strategy. Different solutions exist to write and run
unitary tests automatically. JUnit and NUnit are among the most popular tools for unit
Page 2
testing.
• Non-Regression tests. The objective of non-regression tests is to ensure that new defects
have not been introduced after the modification of the code. Indeed, each code change is
likely to introduce regression on the existing system. Retesting the already tested system
becomes necessary. Regression tests are a tedious activity especially in an Agile context,
characterized by continuous changes and frequent deliveries. They are also time-consuming
when done manually. I strongly recommend automating them. Even if automation has a
cost, the return of investments for the project is high. Fitness, Selenium, Microsoft Test
Manager, and HP ALM are examples of the tools that the team can use to automate non-
regression tests.
• Integration tests. Integration tests allow to verify that the modules (a set of classes) work
well when put together. They are usually run automatically on the continuous integration
environment.
• Functional tests. The scope of Functional tests is to check that the system behaves
corresponding to what has been specified through the elements of the Product Backlog (i.e.
Acceptance criteria). They consist in testing each new feature of the increment against the
corresponding acceptance tests. These tests can be run manually or automatically.
• Non Functional tests. Non-Functional tests cover the non-functional aspects of the
application. These aspects are often defined as non-functional requirements (technical user
stories). For example: scalability, robustness, security, portability, stress testing, etc.
Conclusion
In this article I introduced the acronym PURIFF as a concept that contains all the testing
activities that have to be considered in a sprint (iteration).
Even if all the increments are not intended to be deployed on production, the Scrum team
can use the PURIFF scope as a checklist to determine which categories of tests are relevant
to its context.

Weitere ähnliche Inhalte

Was ist angesagt?

Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
vidhyyav
 
Unit 5 usability and satisfaction test
Unit 5 usability and satisfaction testUnit 5 usability and satisfaction test
Unit 5 usability and satisfaction test
gopal10scs185
 

Was ist angesagt? (17)

Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
 
Software Testing
Software Testing Software Testing
Software Testing
 
FADHILLA ELITA Ppt testing 3
FADHILLA ELITA Ppt testing 3FADHILLA ELITA Ppt testing 3
FADHILLA ELITA Ppt testing 3
 
3.software testing
3.software testing3.software testing
3.software testing
 
Fundamental of functional testing
Fundamental of functional testing Fundamental of functional testing
Fundamental of functional testing
 
Functional testing patterns
Functional testing patternsFunctional testing patterns
Functional testing patterns
 
Integration testing overview
Integration testing overviewIntegration testing overview
Integration testing overview
 
Tips To Follow For A Simple QA Process
Tips To Follow For A Simple QA ProcessTips To Follow For A Simple QA Process
Tips To Follow For A Simple QA Process
 
Unit 5 usability and satisfaction test
Unit 5 usability and satisfaction testUnit 5 usability and satisfaction test
Unit 5 usability and satisfaction test
 
Sftwre engg.testng
Sftwre engg.testngSftwre engg.testng
Sftwre engg.testng
 
Regression testing complete guide
Regression testing complete guideRegression testing complete guide
Regression testing complete guide
 
What is integration testing
What is integration testingWhat is integration testing
What is integration testing
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Purpose and-objectives-of-software-testing
Purpose and-objectives-of-software-testingPurpose and-objectives-of-software-testing
Purpose and-objectives-of-software-testing
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Functional Testing
Functional TestingFunctional Testing
Functional Testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 

Ähnlich wie PURIFF: Scoping the Sprint Tests

Testing throughout the software life cycle 2
Testing throughout the software life cycle 2Testing throughout the software life cycle 2
Testing throughout the software life cycle 2
Risun Hidayat
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
8759000398
 

Ähnlich wie PURIFF: Scoping the Sprint Tests (20)

Functional Testing- All you need to know (2).pptx
Functional Testing- All you need to know (2).pptxFunctional Testing- All you need to know (2).pptx
Functional Testing- All you need to know (2).pptx
 
TESTING THROUGHOUT THE SOFTWARE LIFE CYCLE
TESTING THROUGHOUT THE SOFTWARE LIFE CYCLETESTING THROUGHOUT THE SOFTWARE LIFE CYCLE
TESTING THROUGHOUT THE SOFTWARE LIFE CYCLE
 
Non-Functional testing
Non-Functional testingNon-Functional testing
Non-Functional testing
 
Testing throughout the software life cycle
Testing throughout the software life cycleTesting throughout the software life cycle
Testing throughout the software life cycle
 
Testing throughout the software life cycle 2
Testing throughout the software life cycle 2Testing throughout the software life cycle 2
Testing throughout the software life cycle 2
 
Testing throughout the software life cycle 2
Testing throughout the software life cycle 2Testing throughout the software life cycle 2
Testing throughout the software life cycle 2
 
Ppt 2 testing throughout the software life cycle
Ppt 2 testing throughout the software life cyclePpt 2 testing throughout the software life cycle
Ppt 2 testing throughout the software life cycle
 
Testing Throughout The Software Life Cycle II (Dhea Frizky)
Testing Throughout The Software Life Cycle II (Dhea Frizky)Testing Throughout The Software Life Cycle II (Dhea Frizky)
Testing Throughout The Software Life Cycle II (Dhea Frizky)
 
Munit_in_mule_naveen
Munit_in_mule_naveenMunit_in_mule_naveen
Munit_in_mule_naveen
 
02 testing throughout the software life cycle
02 testing throughout the software life cycle02 testing throughout the software life cycle
02 testing throughout the software life cycle
 
System testing
System testingSystem testing
System testing
 
Testing throughout the software life cycle - Testing & Implementation
Testing throughout the software life cycle - Testing & ImplementationTesting throughout the software life cycle - Testing & Implementation
Testing throughout the software life cycle - Testing & Implementation
 
Testing Throughout the Software Life Cycle part.2 - Andika Dwi Ary Candra
Testing Throughout the Software Life Cycle part.2 - Andika Dwi Ary CandraTesting Throughout the Software Life Cycle part.2 - Andika Dwi Ary Candra
Testing Throughout the Software Life Cycle part.2 - Andika Dwi Ary Candra
 
Testing Implementasi 2
Testing Implementasi 2Testing Implementasi 2
Testing Implementasi 2
 
Agile case studies
Agile case studiesAgile case studies
Agile case studies
 
Testing in Software Engineering.docx
Testing in Software Engineering.docxTesting in Software Engineering.docx
Testing in Software Engineering.docx
 
WEEK 2 SOFTWARE TESTING TRAINING MANUAL _TYPES OF TESTING FINAL.pptx
WEEK 2 SOFTWARE TESTING TRAINING MANUAL  _TYPES OF TESTING FINAL.pptxWEEK 2 SOFTWARE TESTING TRAINING MANUAL  _TYPES OF TESTING FINAL.pptx
WEEK 2 SOFTWARE TESTING TRAINING MANUAL _TYPES OF TESTING FINAL.pptx
 
CTFL Module 02
CTFL Module 02CTFL Module 02
CTFL Module 02
 
Unified Functional Testing - Prelim.pptx
Unified Functional Testing - Prelim.pptxUnified Functional Testing - Prelim.pptx
Unified Functional Testing - Prelim.pptx
 
Testing throughout the software life cycle
Testing throughout the software life cycleTesting throughout the software life cycle
Testing throughout the software life cycle
 

PURIFF: Scoping the Sprint Tests

  • 1. Page 1 PURIFF: Scoping the Sprint Tests Mahfoud Amiour CSPO, CSM mamiour@softenia-solutions.com Introduction In Scrum each Sprint produces an increment which is a partial and potentially releasable product. To be releasable, the increment must meet all acceptance criteria and pass different categories of tests. Consequently, each Sprint should consider all testing activities required for a releasable product. Unfortunately, I observed during my interventions on different projects that many teams only focus on a sub-set of testing activities during the Sprint. In this article I introduce the acronym PURIFF as a concept containing all test categories to be conducted during the Sprint. The Scrum team can use the PURIFF acronym as a checklist to determine which categories of tests are relevant to its context Each element of the PURIFF acronym represents a category of tests: • P: for Performance testing; • U: covers Unitary testing ; • R: deals with non-Regression tests; • I: represents Integration testing ; • F: for Functional tests ; • F: covers non-Functional tests. PURIFF testing scope The scope of PURIFF includes the following categories of tests: • Performance tests. Performance tests ensure that the system response time is acceptable for the users. They consist in measuring the application’s reaction time to the different requests. There are different tools (commercial and open source) that can be used for performance tests: HP Load Runner, IBM Rational Performance Tester and JMeter are examples of performance testing tools. • Unitary tests. Unitary tests are written by developers to test individual classes. They fall into the test driven development or TDD strategy. Different solutions exist to write and run unitary tests automatically. JUnit and NUnit are among the most popular tools for unit
  • 2. Page 2 testing. • Non-Regression tests. The objective of non-regression tests is to ensure that new defects have not been introduced after the modification of the code. Indeed, each code change is likely to introduce regression on the existing system. Retesting the already tested system becomes necessary. Regression tests are a tedious activity especially in an Agile context, characterized by continuous changes and frequent deliveries. They are also time-consuming when done manually. I strongly recommend automating them. Even if automation has a cost, the return of investments for the project is high. Fitness, Selenium, Microsoft Test Manager, and HP ALM are examples of the tools that the team can use to automate non- regression tests. • Integration tests. Integration tests allow to verify that the modules (a set of classes) work well when put together. They are usually run automatically on the continuous integration environment. • Functional tests. The scope of Functional tests is to check that the system behaves corresponding to what has been specified through the elements of the Product Backlog (i.e. Acceptance criteria). They consist in testing each new feature of the increment against the corresponding acceptance tests. These tests can be run manually or automatically. • Non Functional tests. Non-Functional tests cover the non-functional aspects of the application. These aspects are often defined as non-functional requirements (technical user stories). For example: scalability, robustness, security, portability, stress testing, etc. Conclusion In this article I introduced the acronym PURIFF as a concept that contains all the testing activities that have to be considered in a sprint (iteration). Even if all the increments are not intended to be deployed on production, the Scrum team can use the PURIFF scope as a checklist to determine which categories of tests are relevant to its context.