Jump to content

Gray-box testing: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Line 13: Line 13:
== ''' Testing Strategies''' ==
== ''' Testing Strategies''' ==
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;When both black-box and white-box testing strategies are required to test a software then we can apply Gray box testing.Suppose application source code is not present then tester use Run time code coverage analysis which is feasible and useful.For information as fitness for pools of sessions to actively learn the interface protocol called as GRAY BOX FUZZING(more effective than rfc compliant or mutation black box).</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;When both black-box and white-box testing strategies are required to test a software then we can apply Gray box testing.Suppose application source code is not present then tester use Run time code coverage analysis which is feasible and useful.For information as fitness for pools of sessions to actively learn the interface protocol called as GRAY BOX FUZZING(more effective than rfc compliant or mutation black box).</p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Test cases are based on knowledge of algorithm, intermediate states, architecture or other high level behaviour of programs.Gray Box Testing tests data domains,internal boundaries and overflow of data ,if known.It has medium granularity.
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Test cases are based on knowledge of algorithm, intermediate states, architecture or other high level behaviour of programs.Gray Box Testing tests data domains,internal boundaries and overflow of data ,if known.It has medium granularity.Unlike White box and Black box Testing ,Test strategy of Gray Box Testing is based on limited knowledge of internal model.GRAY MEENS COMBINATION OF BITH WHITE AND BLACK BOXES

THE TESTING OF A GRAY BOX IS DESIGNED ON THE BASES OF HIGH LEVEL DESCRPITIONS OF THE BEHAVIOUR OF THE PROGRAM


== ''' Gray Box Testing Assumptions for Object-Oriented softwares ''' ==
== ''' Gray Box Testing Assumptions for Object-Oriented softwares ''' ==

Revision as of 16:13, 15 October 2011

Gray Box Testing

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.[1].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.[2]

         The typical gray box tester is permitted to set up his testing environment,like seeding a database, and can view the state of the product after their actions,like performing a SQL query on the database to be certain of the values of columns.It is used almost exclusively of client-server testers or others who use a database as a repository of information.Gray Box testers have access to detailed design documents, with information beyond requirement documents.Gray Box tests are generated based on information such as state-based models or architecture diagrams of the target system.[3]

Need for Gray Box Testing

      In this testing,knowledge of database validation can be combined with Black Box Testing, such as SQL for database query and adding/loading data sets to confirm functions, as well as query the database to confirm expected result.[4].Gray Box testing try to gain the advantages or strength of every type and mold it into "whole" testing that is greater than the sum of its parts.Gray Box take operates in straight approach of Black Box testing and leverage it against the in-depth, code targeted testing of White Box.[5]

      Gray Box Testing is based on requirement test case generation because it presets all the conditions,prior program is tested by using assertion methods.Requirement specification language is used to state the requirements which make easy to understand the requirement,and verify its correctness.Input for requirement based test case generation is the predicates and the verification defined for requirement specification language.[6]

Testing Strategies

         When both black-box and white-box testing strategies are required to test a software then we can apply Gray box testing.Suppose application source code is not present then tester use Run time code coverage analysis which is feasible and useful.For information as fitness for pools of sessions to actively learn the interface protocol called as GRAY BOX FUZZING(more effective than rfc compliant or mutation black box).

         Test cases are based on knowledge of algorithm, intermediate states, architecture or other high level behaviour of programs.Gray Box Testing tests data domains,internal boundaries and overflow of data ,if known.It has medium granularity.Unlike White box and Black box Testing ,Test strategy of Gray Box Testing is based on limited knowledge of internal model.GRAY MEENS COMBINATION OF BITH WHITE AND BLACK BOXES

THE TESTING OF A GRAY BOX IS DESIGNED ON THE BASES OF HIGH LEVEL DESCRPITIONS OF THE BEHAVIOUR OF THE PROGRAM

Gray Box Testing Assumptions for Object-Oriented softwares

Object Oriented softwares consist of objects only; where objects are single indivisble unit having programming code or data.Here below assumptions are stated which is needed for the applications who used Gray Box Testing.

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

Examples

Advantages

  • Offered Combined Benefits : As Gray Box Testing is combination of white box and black box testing , it sevres 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.[10]

Disadvantages

  • Partial code coverage : In Gray Box testing, soucre code or binaries are missing because limted 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 boon to find how appropriate these systems throw exceptions and how fine are these exceptions handle in distributed systems having Web Services environment.[11]

Applications

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


Refernces

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