Software engineering


Published on

White Box testing by Muhammad Aurangzeb Quest, Nshah

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Start with the name of ALLAH who is the most mercifull and benificient….
  • A presentaion truly based on the ideas of white box testing by Aurangzeb
  • Table of contents
  • Introduction to WBT
  • WBT vs BBT
  • Software engineering

    1. 1. SOFTWARE ENGINEERING WHITE BOX TESTING Presented by: Aurangzeb 12BS(cs)27 Department of Computer Sciences-QUEST
    2. 2. Table of Contents    White Box testing---Introduction WBT vs BBT----------pictural representation Explanations       WBT Techniques Formal Examples Real life examples Advantages and Disadvantages of WBT Summary References 12BSCS27 Monday, December 02, 2013
    3. 3. What is White Box Testing? (WBT)   White box testing is a process of testing a source code again and again to check and correct the bugs present in any code. White-box testing (also known as clear box testing, glass box testing, transparent box testing, and structural testing) is a method of testing software that tests internal structures or workings of an application, as opposed to its functionality (i.e. black-box testing). 12BSCS27 Monday, December 02, 2013
    4. 4. white-box testing (IEEE-1990)  Testing that takes into account the internal mechanism of a system or components.  (IEEE-1990) 12BSCS27 Monday, December 02, 2013
    5. 5. BBT vs WBT 12BSCS27 Monday, December 02, 2013
    6. 6. Explanations;   white-box testing an internal perspective of the system, as well as programming skills, are used to design test cases. The tester chooses inputs to exercise paths through the code and determine the appropriate outputs. This is analogous to testing nodes in a circuit, e.g. in-circuit testing (ICT). White Box Testing (WBT) is also known as CodeBased Testing or Structural Testing. White box testing is the software testing method in which internal structure is being known to tester who is going to test 12BSCS27 Monday, December 02, 2013 the software.
    7. 7. Continued…    white-box testing can be applied at the unit, integration and system levels of the software testing process, it is usually done at the unit level. It can test paths within a unit, paths between units during integration, and between subsystems during a system–level test. Though this method of test design can uncover many errors or problems, it might not detect unimplemented parts of the specification or 12BSCS27 Monday, December 02, 2013 missing requirements.
    8. 8. Example; 12BSCS27 Monday, December 02, 2013
    9. 9. 12BSCS27 Monday, December 02, 2013
    10. 10. What do you verify in White Box Testing ?  In the White box testing following steps are executed to test the software code:       Basically verify the security holes in the code. Verify the broken or incomplete paths in the code. Verify the flow of structure mention in the specification document Verify the Expected outputs. Verify the all conditional loops in the code to check the complete functionality of the application. Verify the line by line or Section by Section in the code & 12BSCS27 Monday, December 02, 2013 cover the 100% testing.
    11. 11. WBT Techniques; White-box test design techniques include:  Control flow testing  Data flow testing  Branch testing  Path testing  Statement coverage  Decision coverage 12BSCS27 Monday, December 02, 2013
    12. 12. Terminologies using WBT;    White-box testing's basic procedures involve the understanding of the source code that you are testing at a deep level to be able to test them The programmer must have a deep understanding of the application to know what kinds of test cases to create so that every visible path is exercised for testing. Once the source code is understood then the source code can be analyzed for test cases to be created. These are the three basic steps that white-box testing takes in order to create test cases: 12BSCS27 Monday, December 02, 2013
    13. 13. Continued… Input, involves different types of requirements, functional specifications, detailed designing of documents, proper source code, security specifications. This is the preparation stage of white-box testing to layout all of the basic information.  Processing Unit, involves performing risk analysis to guide whole testing process, proper test plan, execute test cases and communicate results. This is the phase of building test cases to make sure they thoroughly test the application the given results are recorded accordingly.  Output, prepare final report that encompasses all of the above preparations and results.  12BSCS27 Monday, December 02, 2013
    14. 14. Advantages of WBT;  White-box testing is one of the two biggest testing methodologies used today. It primarily has three advantages:  Side effects of having the knowledge of the source code is beneficial to thorough testing.  Optimization of code by revealing hidden errors and being able to remove these possible defects.  Gives the programmer introspection because developers carefully describe any new implementation. 12BSCS27 Monday, December 02, 2013
    15. 15. Disadvantages of WBT;  Although White-box testing has great advantages, it is not perfect and contains some disadvantages. It has two disadvantages:  White-box testing brings complexity to testing because to be able to test every important aspect of the program, you must have great knowledge of the program. White-box testing requires a programmer with a high-level of knowledge due to the complexity of the level of testing that needs to be done.  On some occasions, it is not realistic to be able to test every single existing condition of the application and some conditions will be untested. 12BSCS27 Monday, December 02, 2013
    16. 16. Summary;  White-box testing is a method of testing the application at the level of the source code. The test cases are derived through the use of the design techniques mentioned above: control flow testing, data flow testing, branch testing, path testing, statement coverage and decision coverage as well as modified condition/decision coverage. White-box testing is the use of these techniques as guidelines to create an error free environment by examining any fragile code. 12BSCS27 Monday, December 02, 2013
    17. 17. White Box – summary;         Statement testing uses a model of the program’s control flow it is designed in order to execute all or selected statements of the test object Branch/Decision Testing uses a model of the program’s flow it is designed in order to execute (each) outcome of all or selected decision points in a test object Branch Condition Combination uses a model of the program flow where each combination of the inputs for a decision/condition must be tested, in order to check if each branch is covered 12BSCS27 Monday, December 02, 2013
    18. 18. References;       .pdf neering_book.html 12BSCS27 Monday, December 02, 2013
    19. 19. 12BSCS27 Monday, December 02, 2013