23
Slide 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.

Physical Architecture Layer Design

  • Upload
    farrah

  • View
    48

  • Download
    2

Embed Size (px)

DESCRIPTION

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. Types of Testing. Unit Testing Integration Testing System Testing Acceptance Testing. Unit Testing. According to Wiki: - PowerPoint PPT Presentation

Citation preview

Page 1: Physical Architecture Layer Design

Slide 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.

Page 2: Physical Architecture Layer Design

Slide 2

Types of Testing

Unit TestingIntegration TestingSystem TestingAcceptance Testing

Page 3: Physical Architecture Layer Design

Slide 3

Unit TestingAccording 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.

Page 4: Physical Architecture Layer Design

Slide 4

Unit TestingIn 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

Page 5: Physical Architecture Layer Design

Slide 5

Unit Testing

Black Box Unit Testing

Black Box(method)

inputs outputs

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. 

Page 6: Physical Architecture Layer Design

Slide 6

Unit TestingBlack Box Unit Testing

Black Box(method)

inputs outputs

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.

Page 7: Physical Architecture Layer Design

Slide 7

Unit TestingBlack Box Unit Testing

Black Box(method)

inputs outputs

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.

Page 8: Physical Architecture Layer Design

Slide 8

Unit TestingBlack Box Unit Testing

Black Box(method)

inputs outputs

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.

Page 9: Physical Architecture Layer Design

Slide 9

Unit TestingWhite Box Unit Testing

White Box(method)

inputs outputs

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.

Page 10: Physical Architecture Layer Design

Slide 10

Unit TestingWhite Box Unit Testing

White Box(method)

inputs outputs

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.

Page 11: Physical Architecture Layer Design

Slide 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.

Page 12: Physical Architecture Layer Design

Slide 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.

Page 13: Physical Architecture Layer Design

Slide 13

Integration Testing

Types of Integration Testing

User Interface TestingUse-Case TestingInteraction TestingSystem Interface Testing

Page 14: Physical Architecture Layer Design

Slide 14

Integration Testing

User Interface TestingThe User Interface Tests assure that the user interfaces operate correctly.

User Interface Application TestingTest each window – right click and perform those functions avail, try all menus

Test each componentTest navigation using Navigation matrix

Page 15: Physical Architecture Layer Design

Slide 15

Integration Testing

Use-Case TestingUse Case Testing is done in conjunction with user interface testing traversing thru the use case assuring all the navigation and functionality exist.

Page 16: Physical Architecture Layer Design

Slide 16

Integration Testing

Interaction Integration TestingInteraction 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.

Page 17: Physical Architecture Layer Design

Slide 17

Integration Testing

System InterfaceTestingSystem Interface Testing assures that data that is shared with other systems including the database system is transferred correctly.

Page 18: Physical Architecture Layer Design

Slide 18

System Testing

Types of System Testing

Requirements TestingUsability TestingSecurity TestingPerformance TestingDocumentation Testing

Page 19: Physical Architecture Layer Design

Slide 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.

Page 20: Physical Architecture Layer Design

Slide 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.

Page 21: Physical Architecture Layer Design

Slide 21

System Testing

Security Testing

Security Testing assures no unauthorized accesses are possibleTest 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).

Page 22: Physical Architecture Layer Design

Slide 22

System Testing

Performance Testing

Investigates peak times to assure the system will operate well under stress conditions.

Page 23: Physical Architecture Layer Design

Slide 23

System Testing

Documentation Testing

Test the accuracy of the documentation such as user manuals, help links, etc.