Jump to content

Gray-box testing

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Netra Nahar (talk | contribs) at 20:15, 15 October 2011 (→‎Applications). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Introduction

Gray Box Testing is combination of the White box testing and Black box testing. Aim of this testing is to find out the defects due to improper design or improper implementation of applications.Gray Box Testing is also known as Translucent Testing. Normally this testing is done by end-users,testers and developers.

Overview

The Black Box Tester is unaware of internal structure of the application to be tested, whereas White Box Tester knows the internal structure of the application. But the Gray Box Tester knows the internal structure partially which includes the access to internal structures as well as the algorithms for defining the test cases.[1]
Gray Box testers require overall and detailed description of documents with required documents of the application. On state-based models or architecture diagrams of the target system, Gray Box Testing collects the information for defining testcases.[2]

Need for Gray Box Testing

Gray Box Testing is beneficial because it applies straight forward technique of Black Box Testing and influences it against the code targeted systems in White Box Testing.[3]
Gray Box Testing is based on requirement test case generation because it presets all the condition before program is tested by using assertion method. Requirement specification language is used to state the requirements which make easy to understand the requirements and verify its correctness too where input for requirement test case generation is the predicates and the verification discussed in requirement specification language.[4]

Gray Box Testing assumptions for object-oriented softwares

Object oriented softwares consist of objects only; where objects are single indivisble units having programming code or data. Some assumptions are stated below which are needed for the applications which use Gray Box Testing.

  • Activation of Methods[5]
  • State Reporting in Class Under Test (CUT).
  • Report Testing is inherent in Class Under Test.[6]

Examples

Advantages

  • Offers combined benefits: As Gray Box Testing is combination of white box and black box testing , it serves advantages from both the testings.
  • Non Intrusive: It is based on functional specification, architectural view whereas not on source code or binaries which makes it invasive too.
  • Intelligent Test Authoring : Gray Box Tester handles intelligent test scenario, for example, data type handling, communication protocol, exception handling.
  • Unbiased Testing: Inspite of all above advantages and functionalities, Gray Box Testing maintains boundary for testing between tester and developer.[8]

Disadvantages

  • Partial code coverage: In Gray Box testing, source code or binaries are missing because of limited access to internal or structure of the applications which results in limited access for code path traversal.
  • Defect Identification: In distributed applications, it is difficult to associate defect identification. Still, Gray box testing is a boon to find how appropriate these systems throw exceptions and how fine are these exceptions handled in distributed systems having web services environment.[9]

Applications

  • Gray Box Testing is well suited for web applications.
  • Gray Box Testing is suited for functional or business domain testing in depth.

[10][11]

Refernces

  1. ^ http://softwaretestingfundamentals.com/gray-box-testing
  2. ^ http://www.geekinterview.com/question_details/35806
  3. ^ http://www.successful-quality-assurance.com/types-of-software-testing.html
  4. ^ http://www.softwaretestinggenius.com/articaldetails.php?mode=details&qry=435&parent=146
  5. ^ http://pascal-central.com/OOE-stds.html#sect-6.5.8.2
  6. ^ http://www.softwaretestinggenius.com/articaldetails.php?mode=details&qry=435&parent=146
  7. ^ Patton, Ron (July 26, 2005). Software Testing. Sams. p. 2. ISBN 0-672-32798-8.
  8. ^ http://www.crosschecknet.com/soa_testing_black_white_gray_box.php
  9. ^ http://www.crosschecknet.com/soa_testing_black_white_gray_box.php
  10. ^ Bach, James. Lessons Learned in Software Testing. Wiley Computer Publishing.
  11. ^ Falk, Jack. Testing Computer Software, 2nd Edition. Wiley Computer Publishing.