1 / 23

Physical Architecture Layer Design

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:

farrah
Télécharger la présentation

Physical Architecture Layer Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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.

More Related