SCMWise.com

White Box Testing


Definition

White Box Testing, WBT, is the practice of testing the internal workings of a software application.

This requires the Tester to have a thorough and deep understanding of the software being tested.

White Box is also commonly known as Glass Box Testing or Clear Box Testing.

Usually, the tester will need to study the software application source code to setup the tests to properly perform White-Box Testing.

The Test plans are derived from the details of the programming language, the software logic, and implementation specifics.

White-Box Testing addresses the issue, are we building the software "Right"?

Where as Black Box Testing addresses the issue, are we building the "Right" software?

Like Black Box Testing , White-Box Testing is more of high level testing strategy than an actual testing methodology.

Meaning, that WBT employs several Testing Methodologies.


Testing Methods

There are several different software testing Methodologies used to successfully perform White Box Testing.

  • Unit Testing
  • System Testing
  • Integration Testing



White-Box Testing Elements

White-Box Testing include the following:

  • Code Coverage Analysis
  • The Branch Conditions of the Software
  • The Data Flow of the Software
  • The Control Flow of the Software
  • The Path Flow of the Software


Code Coverage Testing

Code Coverage analyzes the software's source code directly.

Code Coverage Analysis determines which areas of the software's source code have been covered by testing,

Code Coverage is a fundamental part of White-Box Testing.


Branch Condition Testing

The Branch Condition is all the possible decisions of a condition of an application or software component.

Meaning, Branch Condition Testing attempts to test all the possible branches of a condition statement.

Only by deeply analyzing the software source code, can the tester determine all the possible Branch Conditions in the software. Data Flow Testing

The Data Flow is tracking the values of the variables in a software application or component.

Data Flow Testing is the analyzing of these values of the variables in a software application to ensure they are within designed parameters.

Thus ensuring all the proper controls are in place to protect the integrity of the data.


Control Flow Testing

The Control Flow of an application is the abstract representation of all the possible sequences of the software.

Which means the testing of all the possible sequences of events that can occur during a software applications execution.


Path Flow Testing

The Path Flow of a software application is the sequence of events the software which is the following of the input values through a given path of execution of the software component.


Conclusion

White Box Testing can be a very ambiguous concept to understand.

However, keep in mind the it is fundamental to know the source code and to understand the internal structure and workings of the software to properly White Box Test.

Conceptually, WBT is ensuring the software is doing the right thing.


Black Box Testing

Black Box Testing, BBT, is the process of testing an application's functionality and requirements.

BBT usually only requires the tester to know and understand the business requirements and software functional specifications.

For more information about Black Box Testing


Software Testing Procedures

Software Testing Procedures are the testing procedures and steps used to ensure the software application is tested and validating before releasing the software.

For more information about White Box Testing and Software Testing Procedures


Software Testing

Software testing measures the completeness, correctness and quality of the software. Because these can be somewhat subjective depending on who is doing the testing, There have been many attempts to formalize testing requirements.

For a deeper discussion about Software Testing


Software Quality Assurance

Software Quality Assurance provides the standards, processes and procedures that ensure that a software application meets it's requirements and is properly tested.

For more information about Software Quality Assurance.



Software Development Life Cycle Table of Contents

Software Development Life Cycle Software Development Life Cycle is the process in which you encapsulate your software development. Specifically meaning, it is the process and tools you use to ensure the accuracy and timeliness of your software development efforts.

Agile SCM Implementing Agile Software Configuration Management processes and practices will help your ability to successfully implement Agile software development processes.

Agile Software Agile software attempts to minimize risk by developing software in short iterations. This development methodology is about adaptability. Because of the chaotic nature of software development, it may be impossible to control or to predict.

Agile Source Code Providing agile source code control processes and procedures greatly aids an organization's ability to successfully implement Agile software development processes.

Feature Driven Development Feature Driven Development, FDD, is a short-iteration development process. It consists of five basic activities: Develop an Overall Model, Build a Feature List, Plan by Feature, Design by Feature, Build by Feature

Software Development Processes The Software Development Process, SDP, is the methodology used by a development team to produce software.

Software Development Life Cycle Models Software Development Life Cycle Models are systems and processes a software developer or software development team leverage to systematically produce software: Agile, Feature Driven Development, Waterfall, Object Oriented, Prototyping.

Software Engineering The IEEE Computer Society defines Software Engineering as the application of a systematic, disciplined and quantifiable approach to the development, maintenance and operation of software.

Software Engineering Best Practices Software Engineering Best Practices, SE Best Practices are the processes and techniques that have been proven over time to provide successful Software Engineering Results. When searching the Internet, there are many Software Engineering Best Practices to be found on the World Wide Web. Here are some of the more commonly used and proven SE Best Practices.

Software Requirements Software Requirements are the details and specifications about how the software should act and behave. There are several types requirements: Business, Functional, Non-Functional, User and System Requirements.

Software Requirements Template Software Requirements Template is an outline of a Software Requirements Specification that was used in a large software company. It is not meant to be the one and only way to do cover your Software Requirements. It is intended to be a starting point for you or your organization to approach Software Requirements.

Software Engineering Salaries Software Engineering Salaries - This page is dedicated to publishing salary information about Software Engineering jobs around the World.

Software Engineering Salaries Australia Software Engineering Salaries Australia - This page is dedicated to publishing salary information about Software Engineering jobs in Australia.

Software Engineering Salaries Bulgaria Software Engineering Salaries Bulgaria - This page is dedicated to publishing salary information about Software Engineering jobs in Bulgaria.

Software Engineering Salaries Canada Software Engineering Salaries Canada - This page is dedicated to publishing salary information about Software Engineering jobs in Canada.

Software Engineering Salaries Egypt Software Engineering Salaries Egypt - This page is dedicated to publishing salary information about Software Engineering jobs in Egypt.

Software Engineering Salaries Estonia Software Engineering Salaries Estonia - This page is dedicated to publishing salary information about Software Engineering jobs in Estonia.

Software Engineering Salaries France Software Engineering Salaries France - This page is dedicated to publishing salary information about Software Engineering jobs in France.

Software Engineering Salaries Germany Software Engineering Salaries Germany - This page is dedicated to publishing salary information about Software Engineering jobs in Germany.

Software Engineering Salaries Ghana Software Engineering Salaries Ghana - This page is dedicated to publishing salary information about Software Engineering jobs in Ghana.

Software Engineering Salaries India Software Engineering Salaries India - This page is dedicated to publishing salary information about Software Engineering jobs in India.

Software Engineering Salaries Italy Software Engineering Salaries Italy - This page is dedicated to publishing salary information about Software Engineering jobs in Italy.

Software Engineering Salaries Jamaica Software Engineering Salaries Jamaica - This page is dedicated to publishing salary information about Software Engineering jobs in Jamaica.

Software Engineering Salaries Kuwait Software Engineering Salaries Kuwait - This page is dedicated to publishing salary information about Software Engineering jobs in Kuwait.

Software Engineering Salaries Macedonia Software Engineering Salaries Macedonia - This page is dedicated to publishing salary information about Software Engineering jobs in Macedonia.

Software Engineering Salaries Malaysia Software Engineering Salaries Malaysia - This page is dedicated to publishing salary information about Software Engineering jobs in Malaysia.

Software Engineering Salaries Mongolia Software Engineering Salaries Mongolia - This page is dedicated to publishing salary information about Software Engineering jobs in Mongolia.

Software Engineering Salaries Netherlands Software Engineering Salaries Netherlands - This page is dedicated to publishing salary information about Software Engineering jobs in Netherlands.

Software Engineering Salaries Pakistan Software Engineering Salaries Pakistan - This page is dedicated to publishing salary information about Software Engineering jobs in Pakistan.

Software Engineering Salaries Philippines Software Engineering Salaries Philippines - This page is dedicated to publishing salary information about Software Engineering jobs in Philippines.

Software Engineering Salaries Poland Software Engineering Salaries Poland - This page is dedicated to publishing salary information about Software Engineering jobs in Poland.

Software Engineering Salaries Qatar Software Engineering Salaries Qatar - This page is dedicated to publishing salary information about Software Engineering jobs in Qatar.

Software Engineering Salaries Sri Lanka Software Engineering Salaries Sri Lanka - This page is dedicated to publishing salary information about Software Engineering jobs in Sri Lanka.

Software Engineering Salaries Sudan Software Engineering Salaries Sudan - This page is dedicated to publishing salary information about Software Engineering jobs in Sudan.

Software Engineering Salaries United Kingdom Software Engineering Salaries United Kingdom - This page is dedicated to publishing salary information about Software Engineering jobs in the United Kingdom.

Software Engineering Salaries United States Software Engineering Salaries United States - This page is dedicated to publishing salary information about Software Engineering jobs in the United States.

Software Quality Assurance Software Quality Assurance is the systematic testing of a software product to meet the planned requirements. Quality Assurance is the testing of a software product and the process improvement of the testing cycle.

Software Testing Software Testing is the systematic and sometimes programmatic, investigation of software for defects and to ensure the application runs appropriately.

SCMWise Software Configuration Management SCMWise is dedicated to Software Configuration Management. This site is a central repository for the collection of best practices, processes, methodologies and tools that surround SCM.



SCMWise Configuration Spec



© Copyright 2007 - 2016
Powered by Site Build It!
Page copy protected against web site content infringement by Copyscape SCMWise.com's Privacy Policy
ADD TO YOUR SOCIAL BOOKMARKS: add to BlinkBlink add to Del.icio.usDel.icio.us add to DiggDigg
add to FurlFurl add to GoogleGoogle add to SimpySimpy add to SpurlSpurl Bookmark at TechnoratiTechnorati add to YahooY! MyWeb