software testing levels philippe charman [email protected] charman/ last update: 25-04-2014

8
Software Testing Levels Philippe CHARMAN [email protected] http://users.polytech.unice.fr/~charman/ Last update: 25- 04-2014

Upload: dominick-walters

Post on 22-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

Software Testing Levels

Philippe [email protected]

http://users.polytech.unice.fr/~charman/

Last update: 25-04-2014

Page 2: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

Main Testing Levels

• Component Testing• Integration Testing• System Testing• Acceptance Testing

Page 3: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

Testing LevelsWith A Basic Architecture

Integration Testing

Low Level Code

High Level Code

Component A

Low Level Code

High Level Code

Component B

Acceptance Testing

System Testing

Component Testing

CustomerDB

App Server

Page 4: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

Component Testing

• Testing individual software components

• Benefits:– Tests unit are easy and simple to write– Allow to detect bugs sooner in the development cycle when

written at a first stage– Can be run as non-regression tests later on– Ease the debug

• Limitation:– Cannot test globally the application

• Should be written by developers or testers having access to the source code

Page 5: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

Integration Testing

• Testing level in which individual software modules are combined and tested as a group

• 3 approaches:

– Big Bang

– Top-down

– Bottom-up

Page 6: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

System Testing

• Process of testing an integrated system to verify it meets specified requirements

• Purpose : find as many bugs as possible

• Testing both functional and non-functional requirements of the system

• Specification-based and structure-based techniques

• Executed by the development organization

Page 7: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

Acceptance Testing

• Performed by the customer mainly and the consultant also

• They may detect:

– My needs are not really satisfied

– Performance issues

– Usability issues

– Customer Data issues

• Alpha testing ~= internal acceptance testing

– Performed at the developers site

• Beta testing ~= internal acceptance testing

• Performed at an external site

Page 8: Software Testing Levels Philippe CHARMAN charman@fr.ibm.com charman/ Last update: 25-04-2014

Testing LevelsWho Tests What

ComponentTesting

IntegrationTesting

SystemTesting

Low Level Code

High Level Code

Component A

Low Level Code

High Level Code

Component B

CustomerDB

Acceptance Testing

Dev

elop

er

Tes

ter

Con

sulta

nt

Cus

tom

er

App Server