90 likes | 204 Views
TMM and the testing process. Setting the context. Testing process in context. Software process phases procedures steps roles / organization Testing is a subprocess Validation: process of evaluating a unit to determine whether it satisfies specified requirements
E N D
TMM and the testing process Setting the context Henrik Bærbak Christensen
Testing process in context • Software process • phases • procedures • steps • roles / organization • Testing is a subprocess • Validation: process of evaluating a unit to determine whether it satisfies specified requirements • “are we building the right product?” • Verification: process of evaluating whether the unit developed in a phase satisfy conditions imposed • “are we building the product right?” Henrik Bærbak Christensen
Testing in this context • Two definitions of testing: • A) Testing is a group of procedures carried out to evaluate some aspect of software • B) Testing is a process used for revealing defects in software and establishing that it has attained a specified degree of quality with respect to selected attributes Henrik Bærbak Christensen
Contrast to common definition • Another, common, definition is • C) Testing is the process of showing that the system works • Contrast this to: • B) Testing is a process used for revealing defects in software • A) Testing is a group of procedures carried out to evaluate some aspect of software Henrik Bærbak Christensen
Psychology • Humans are goal oriented. • We want success and rewards; and avoid failures... • “testing = system works” • success by a few harmless test cases of low quality • “testing = defects found” • success by high quality, devilish smart, test cases Henrik Bærbak Christensen
Yet another definition • At the dAPF course we worked a lot with TDD • Test-Driven Development • Can you come up with another definition of testing that is the heart of TDD? Henrik Bærbak Christensen
A proposal • TDD: • Testing is a process that conservatively drives the development of production code. Henrik Bærbak Christensen
Testing Levels • The V-model • Basically a waterfall • Defines levels of testing • unit test • integration test • system test • Exercise: • Relate to agile methods Henrik Bærbak Christensen
Testing Maturity Levels • Burnstein’s hobbyhorse • testing processes • classification of maturity Henrik Bærbak Christensen