EDUCBA

EDUCBA

MENUMENU
  • Free Tutorials
  • Free Courses
  • Certification Courses
  • 600+ Courses All in One Bundle
  • Login

Types of White Box Testing

By Priya PedamkarPriya Pedamkar

Home » Software Development » Software Development Tutorials » Software Testing Tutorial » Types of White Box Testing

Types of White Box Testing

Introduction to Types of White Box Testing

The following article provides an outline for Types of White Box Testing. There are two popular box testing and they are white box testing and black box testing. We do testing to test all the standard of the require that have been developed. Like we will test functionality with different sort of inputs and analyzing whether outputs are proper.

This testing is black box testing. We don’t consider the what is the box or requirement is made of. We just focus on functional part requirement that have been developed. In contrast to this we have white box testing which will test everything like standards of code as well. Any standard deviation is recorded as defect and needs to taken care. Thus white box testing is testing the internal logics, functions, conditions and in a way complete structure of the code.

Start Your Free Software Development Course

Web development, programming languages, Software testing & others

Different Types of White Box Testing

White Box testing is also called as Structural Testing, Glass Testing, Open Box Testing or Clear Box Testing. We can clearly infer the names of white box testing is that internal structure is transparent and in way we will test the internal structure with the white Box testing.

The test case written as part of white box testing covers the code written, any branches, defined paths, internal logic and finally the statements of the code. Thus if we say that testing is going to perform white box testing then we may need to understand that he has some acquired prerequisite such as good knowledge of programming language in which the code is written, good understanding of programming of the logic, understanding of functional requirement of the project. If the tester is well equipped with this prerequisite then only he will be able to identify the chunk of code where there is malfunctioning. Hence most of the time developers only handle white box testing.

Given below are some of the popular types of white box testing:

  • Unit Testing
  • Static and Dynamic Analysis
  • Memory Leaks Testing
  • Statement Coverage
  • Branch Coverage
  • Mutation Testing
  • Security Testing

1. Unit Testing

It is most probably the first testing carried out for the application that is being developed. Unit testing as the name suggests will be carried out on a block of code or unit of code as it is being developed so that to test that particular functionality of unit is working fine. Most of the times unit testing is carried out by the developer only.

Popular Course in this category
All in One Software Development Bundle (600+ Courses, 50+ projects)600+ Online Courses | 3000+ Hours | Verifiable Certificates | Lifetime Access
4.6 (3,144 ratings)
Course Price

View Course

Related Courses
Software Testing Training (9 Courses, 2 Projects)Penetration Testing Training Program (2 Courses)TestNG Training (4 Courses, 2 Project)

As an application developer, the developer when completes a part or functionality development then he carries out this unit testing to make sure it is working fine and depending on the result only they proceed further. Unit testing is a better way to identify the major bugs in the code. If ignored, then in the later part we may find it difficult to detect. The bugs identified are easy to detect, easy to fix and hence efficient on cost-wise as well.

2. Static and Dynamic Analysis

Static analysis testing is nothing but the following code to catch through any defects. Here we will not be executing the code. Dynamic analysis testing is running the code and analyzing the output to identify the possible defects. This type of testing is mainly for the validation of the data.

3. Memory Leaks Testing

If we work as IT professional then we might have heard optimization term quite many times. This is a major concern for any application and testing it thoroughly will help from saving log running time of applications. Generally, memory leaks are a major culprit for the code to run logger times. Hence any sort of memory leaks must be identified. This testing is mainly handled by QA specialist and this testing is must if you are handling large scale projects which have a heavy dependency on the memory.

4. Statement Coverage

The main purpose of this testing is to make sure that all the statements present in the code are executed and tested at least once. This makes sure that there are not any side effects or any functional defects with respect to the statements.

5. Branch Coverage

Generally, in projects with wider scope the code will not be written continuously. There will be branching out at some points to make sure that the code written till that point is working properly meeting all exceptions. Thus branching out is common in developing the code and branch coverage makes sure that all the branches are working as expected without any major drift from the requirements.

6. Mutation Testing

This testing is quite popular and this is used to test the code that has been modified after bug detection or corrections. This testing also helps in analysis of strategy like which will be the best strategy to adopt in enhancing and developing the functionality.

7. Security Testing

This testing is carried to identify the rigidness of application with respect to security and unauthorized access. It tests how the application performs when it comes to unauthorized and other security-related attacks such as hacking etc. This testing is also important as the organization will be intending to compromise on its product.

Advantages and Disadvantages of White Box Testing

Given below are the advantages and disadvantages mentioned:

Advantages

Below are the advantages:

  • The main advantage of white box testing is that it helps in optimizing the code.
  • This testing can identify hidden defects which may not be detected when we perform black box testing.
  • These testing can be easily Automated.
  • With the unit testing, we can say that the testing phase starts early in SDLC.

Disadvantages

Below are the disadvantages:

  • White Box testing will take a considerable amount of time since full structure and internal logic of the code tested.
  • This testing requires skilled and professional’s resources.
  • Some time white box testing can become quite complex.

Conclusion

Thus white box testing in contrast to black-box testing which tests only the functional part will test structural part in detail so any major defects in code and other standard violations can be captured.

Recommended Articles

This is a guide to Types of White Box Testing. Here we discuss 7 different types of white box testing, advantages and disadvantages respectively. You may also have a look at the following articles to learn more –

  1. Security Testing
  2. Grey Box Testing
  3. Application Testing
  4. Static Testing Techniques

All in One Software Development Bundle (600+ Courses, 50+ projects)

600+ Online Courses

3000+ Hours

Verifiable Certificates

Lifetime Access

Learn More

0 Shares
Share
Tweet
Share
Primary Sidebar
Software Testing Tutorial
  • Types of Testing
    • Adhoc Testing
    • Agile Testing
    • What is Agile Testing
    • Alpha and Beta Testing
    • Application Testing
    • Automation Testing
    • Benchmark Testing
    • Black Box Testing
    • Domain Testing
    • Dynamic Testing
    • Ecommerce Testing
    • Fuzz Testing
    • Gray Box Testing
    • GUI Testing
    • Installation Testing
    • Interface Testing
    • Interoperability Testing
    • Mainframe Testing
    • Manual Testing
    • Mutation Testing
    • Monkey Testing
    • Negative Testing
    • Penetration Testing
    • Protocol Testing
    • Recovery Testing
    • Regression Testing
    • Accessibility Testing
    • Sanity Testing
    • Scalability Testing
    • Security Testing
    • Spike Testing
    • Stability Testing
    • State Transition Testing
    • Static Testing
    • Gatling Load Testing
    • System Integration Testing
    • Structural Testing
    • Locust Load Testing
    • System Testing
    • Control Flow Testing
    • Unit Testing
    • Volume Testing
    • Web Testing Application
    • What is Exploratory Testing
    • What is Stress Testing
    • What is Usability Testing
    • White Box Testing
    • Types of White Box Testing
    • Compatibility Testing 
    • Use Case Testing
    • Beta Testing
    • Integration Testing
    • Non Functional Testing
    • What is Functional Testing
    • Cookie Testing
    • Alpha Testing
    • Boundary Value Testing
    • Equivalence Class Testing
    • Glass Box Testing
    • SOA Testing
    • Smoke Testing
    • Visual Testing
    • Visual Paradigm
    • Model-Based Testing
  • Basics
    • What is Software Testing
    • Careers in Software Testing
    • Defect Life Cycle in Software Testing
    • Levels of Software Testing
    • Software Testing Life Cycle
    • Software Tester Work
    • Software Testing Principles
    • Testing Methodologies
    • Grey Box Testing
    • Types of Software Testing
    • What is a Bug in Software Testing
    • Benefits of Automation Testing
    • What is Automation Testing?
    • Types of Automation
    • Automation Testing Process
    • Mobile Automation Testing
    • Automation Testing Life Cycle
    • Software Quality Assurance
    • Software Quality Assurance
    • What is Test Environment?
    • Verification and Validation Testing
  • Testing techniques
    • Software Testing Methodologies
    • Black Box Testing Techniques
    • Static Testing Techniques
    • Test Case Design Techniques
    • What is Static Analysis
  • Testing tools
    • Automation Testing Tools
    • Functional Testing Tools
    • GUI Testing Tools
    • Penetration Testing Tools
    • Performance Testing Tools
    • SOA Testing Tools
    • Accessibility Testing Tools
    • What is QTP
    • Regression Testing Tools
    • Security Testing Tools
    • Test Management Tools
    • Code Coverage Tools
    • Test Coverage Tools
    • Defect Tracking Tools
    • Continuous Integration Tools
    • Install Bugzilla
    • Test data generation tool
    • Unit Testing Tools
    • Web Testing Tools
    • Stress Testing Tools
    • Performance Monitoring Tools
    • Mobile Testing Tools
    • Responsive Testing Tool
    • Cross Browser Testing Tools
    • Risk Based Testing
    • Database Testing Tools
    • WinRunner
    • What is Squish?
    • CubicTest
    • What is WinRM?
    • Bugzilla Tool
    • Code review tools
    • Penetration Testing Open Source Tools
  • Advance
    • Cyclomatic Complexity
    • Decision Table Testing
    • Decision Tree Algorithm
    • What is Continuous Integration
    • Mantis Bug Tracker
    • Equivalence Partitioning
    • Gantt Chart Software
    • Install TestNG
    • Install Unity
    • Defect Management Process
    • Test Plan Template
    • Testing Interview Questions
    • Testing of Mobile application
    • What is Test Automation Frameworks
    • Application of Automation
    • Test Automation Process
    • What is Cucumber?
    • 15 Best Popular Bug Reporting Tools
    • What is Automated Testing?
    • Software Maintenance Types
    • Types of Penetration Testing
    • Software Reliability
    • Best Gantt Chart Software
    • Code Coverage
    • Branch Coverage
    • Decision Coverage
    • Statement Coverage
    • What is Test Case
    • Types of Test Case
    • What is Test Scenario
    • Formal Review
    • Alpha Beta Pruning
    • What is Cyclomatic Complexity?
    • Test Coverage
    • How to Write Test Case
    • Testing Documentation
    • Performance Testing Life Cycle
    • What is Xpath
    • Test Harness
    • Test Strategy
    • Software Incident Management
    • What is Debugging
    • What is Defect?
    • Listeners in TestNG
  • Inteview Questions
    • Automation Testing Interview Questions
    • Manual Testing Interview Questions
    • ISTQB Interview Questions
    • Cucumber Interview Questions
    • Software Testing Interview Questions
    • Penetration Testing Interview Questions

Related Courses

Software Testing Course

Penetration Training Course

TestNG Training Course

Footer
About Us
  • Blog
  • Who is EDUCBA?
  • Sign Up
  • Corporate Training
  • Certificate from Top Institutions
  • Contact Us
  • Verifiable Certificate
  • Reviews
  • Terms and Conditions
  • Privacy Policy
  •  
Apps
  • iPhone & iPad
  • Android
Resources
  • Free Courses
  • Java Tutorials
  • Python Tutorials
  • All Tutorials
Certification Courses
  • All Courses
  • Software Development Course - All in One Bundle
  • Become a Python Developer
  • Java Course
  • Become a Selenium Automation Tester
  • Become an IoT Developer
  • ASP.NET Course
  • VB.NET Course
  • PHP Course

© 2020 - EDUCBA. ALL RIGHTS RESERVED. THE CERTIFICATION NAMES ARE THE TRADEMARKS OF THEIR RESPECTIVE OWNERS.

EDUCBA Login

Forgot Password?

EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you
Book Your One Instructor : One Learner Free Class

Let’s Get Started

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the cookie policy. By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to our Privacy Policy

EDUCBA

*Please provide your correct email id. Login details for this Free course will be emailed to you
EDUCBA
Free Software Development Course

Web development, programming languages, Software testing & others

*Please provide your correct email id. Login details for this Free course will be emailed to you

Special Offer - All in One Software Development Bundle (600+ Courses, 50+ projects) Learn More