Download presentation
1
Physical Architecture Layer Design
Chapter 13 Testing is rather weak in this text, p 467 to 774– not enough so some additional material is provided.
2
Types of Testing Unit Testing Integration Testing System Testing
Acceptance Testing
3
Unit Testing According to Wiki:
In computer programming, unit testing is a procedure used to validate that individual units of source code are working properly. A unit is the smallest testable part of an application. In procedural programming a unit may be an individual program, function, procedure, etc., while in object-oriented programming, the smallest unit is a method; which may belong to a base/super class, abstract class or derived/child class. Ideally, each test case is independent from the others; mock objects and test harnesses can be used to assist testing a module in isolation. Unit testing is typically done by developers and not by end-users.
4
Unit Testing In Wiki, we note the latest definition of unit testing. While the text talks about the smallest unit as a class, testing the class simply means testing each of the methods. There are two approaches to unit (methods in a class) testing. Black Box Testing White Box Testing
5
Unit Testing Black Box Unit Testing
inputs outputs Black Box (method) A black box test (sometimes called a "functional test") is one in which you feed it inputs and verify the outputs without being able to inspect the internal workings.
6
Unit Testing Black Box Unit Testing inputs outputs Black Box (method) We did black box testing on our use cases with our functional tests. But black box testing of units are tested differently since each method is tested independently.
7
Unit Testing Black Box Unit Testing inputs outputs Black Box (method) In Black Box (BB) Unit testing error handling is not usually considered. It is not considered if you are executing all the paths thru the code. The BB test only tests that known inputs result in known outputs.
8
Unit Testing Black Box Unit Testing inputs outputs Black Box (method) In Black Box (BB) Unit testing the code in the method is black, not seen and thus not tested as code just as a function that yields a result.
9
Unit Testing White Box Unit Testing inputs outputs White Box (method) A white box tests is white and you can clearly see the actual code. White box tests has the knowledge needed to test all the possible pathways in the actual code. This includes not only correct inputs, but incorrect inputs, testing error handling procedures.
10
Unit Testing White Box Unit Testing inputs outputs White Box (method) White box testing has the ability to inspect the internal state of the code at different times. White box testing is needed on critical methods and when methods are very complex.
11
Integration Testing According to Wiki:
Integration testing (sometimes called Integration and Testing, abbreviated I&T) is the phase of software testing in which individual software modules are combined and tested as a group. It follows unit testing and precedes system testing.
12
Integration Testing According to Wiki: (cont)
Integration testing takes as its input modules that have been unit tested, groups them in larger aggregates, applies tests defined in an integration test plan to those aggregates, and delivers as its output the integrated system ready for system testing.
13
Integration Testing Types of Integration Testing
User Interface Testing Use-Case Testing Interaction Testing System Interface Testing
14
Integration Testing User Interface Testing
The User Interface Tests assure that the user interfaces operate correctly. User Interface Application Testing Test each window – right click and perform those functions avail, try all menus Test each component Test navigation using Navigation matrix
15
Integration Testing Use-Case Testing
Use Case Testing is done in conjunction with user interface testing traversing thru the use case assuring all the navigation and functionality exist.
16
Integration Testing Interaction Integration Testing
Interaction testing test each use case to assure it performs as the sequence diagram dictates, that all the functions are called, all updates are done. It verifies the behavior of the unit being tested – beginning with the method if it interacts with other classes, assuring all use cases interact correctly, assuring all packages are correct, etc.
17
Integration Testing System InterfaceTesting
System Interface Testing assures that data that is shared with other systems including the database system is transferred correctly.
18
System Testing Types of System Testing Requirements Testing
Usability Testing Security Testing Performance Testing Documentation Testing
19
System Testing Requirements Testing
While developers performed Unit and Integration Testing, Users now need to test the requirements of the use cases using their functional tests they developed when writing the use case descriptions.
20
System Testing Usability Testing
These test are typically done by an human computer interface specialist, if done at all. It simply test the usability of the system.
21
System Testing Security Testing
Security Testing assures no unauthorized accesses are possible Test the back up procedure ( if things go down do we have back ups for our data, processes, programs, code, etc.) Test the recovery procedure (can we use our backups to recover).
22
System Testing Performance Testing
Investigates peak times to assure the system will operate well under stress conditions.
23
System Testing Documentation Testing
Test the accuracy of the documentation such as user manuals, help links, etc.
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.