<<

International Journal of Trend in Research and Development, Volume 2(4), ISSN 2394-9333 www.ijtrd.com

A Review on Swetha.C, Gomathi.S, Ranjani.R, Department of IT, Sri Krishna Arts and Science College, Coimbatore, India.

Abstract: This document is based on the software  In the today’s competitive market only the testing. Importance of testing, process of testing in quality product stays longtime firmly, so to make steps, types of testing, methods of testing, levels of sure the produce the good quality product the testing. This document describes about the testing of application is key factor in SDLC. comparison of three different boxes of testing.  As it not possible makes it software application is defect free but testing will be necessary. Keywords: testing, black, white, grey box testing,  Most important thing of testing is the functional and non-) development environment is different than the Testing environment and the testing done on I. INTRODUCTION testing environment is similar to the Production Software testing is a process of executing a program environment. or application with the intent of finding the software A) The Fundamental Test Process in to the bugs [1]. It can also be stated as the process of Following Basic Steps: validating and verifying that a software program or 1) Planning and Control application or product: Meets the business and 2) Analysis and Design technical requirements that guided its design and 3) Implementation and Execution development Works as expected. Can be 4) Evaluating exit criteria and Reporting implemented with the same characteristic. 5) Test Closure activities Software testing is a process used to identify the B) Difference between Testing and Debugging correctness, completeness, and quality of developed computer software. It includes a set of activities a) Testing: It involves the identification of conducted with the intent of finding errors in bug/error/defect in the software without software so that it could be corrected before the correcting it [2]. Normally professionals with a product is released to the end users. Quality Assurance background are involved in the identification of bugs. Testing is performed In simple words, software testing is an activity to in the testing phase. check whether the actual results match the expected results and to ensure that the software system is b) Debugging: It involves identifying, isolating and defect free. fixing the problems/bug. Developers who code the software conduct debugging upon According to ANSI/IEEE 1059 standard, Testing can encountering an error in the code. Debugging is be defined as “A process of analyzing a software the part of White box or . item to detect the differences between existing and Debugging can be performed in the development required conditions (that is defects/errors/bugs) and phase while conducting Unit Testing or in to evaluate the features of the software item”. phases while fixing the reported bugs. II. What is Importance of Testing?  Testing should be introduce in the early stage of III. Testing Methods the SDLC, The cost of fixing the bug is larger if  Black Box Testing testing is not done in early stage & bugs found in  White Box Testing later stages[1].  Grey Box Testing

IJTRD | July-August 2015 Available [email protected] 13

International Journal of Trend in Research and Development, Volume 2(4), ISSN 2394-9333 www.ijtrd.com

A) Black Box Testing to find out hidden errors that may create Black box testing – Internal system design is not problems, as many considered in this type of testing [3]. Tests are based paths will go untested. on requirements and functionality. It is difficult to Table 1.1: Advantages and Disadvantages of Black Box maintain white-box Extra lines of code can Testing. testing, as it requires be removed which can specialized tools like bring in hidden defects. Advantages Disadvantages code analyzers and Limited coverage, since debugging tools. Well suited and efficient for only a selected number large code segments. of test scenarios is actually performed. Due to the tester's knowledge about the Inefficient testing, due to code, maximum the fact that the tester coverage is attained Code access is not required. only has limited during test scenario knowledge about an writing. application. Clearly separates user's Blind coverage, since the perspective from the tester cannot target C) Grey Box Testing developer's perspective specific code segments or through visibly defined Grey box testing is the testing of software error-prone areas. roles. application using effective combination of both Large numbers of White box testing & Black box testing method. This moderately skilled testers is nice & powerful idea to test the application.[3] can test the application with The test cases are Grey Box Testing approach is the testing approach no knowledge of difficult to design. used when some knowledge of internal structure but implementation, not in detailed. The name is comes because the programming language, or application for tester is like a grey box like a operating systems. transparent box and tester see inside it but not fully B) White Box Testing transparent & can see partially in it. White box testing – This testing is based on Table 1.3: Advantages and Disadvantages Of Grey-Box knowledge of the internal logic of an application’s Testing code. Also known as Glass box Testing. Internal Advantages Disadvantages software and code working should be known for this Since the access to source type of testing. Tests are based on coverage of code Offers combined benefits code is not available, the statements, branches, paths, conditions. of black-box and white-box ability to go over the code testing wherever possible. Table 1.2: Advantages and Disadvantages Of White-Box and test coverage is limited. Testing Grey box testers don't rely Advantages Disadvantages on the source code; instead The tests can be redundant they rely on interface if the software designer has As the tester has definition and functional already run a . knowledge of the source Due to the fact that a specifications. code, it becomes very skilled tester is needed easy to find out which to perform white-box Based on the limited Testing every possible type of data can help in testing, the costs are information available, a input stream is unrealistic testing the application increased. grey-box tester can design because it would take an effectively. excellent test scenarios unreasonable amount of Sometimes it is It helps in optimizing the especially around time; therefore, many impossible to look into code. communication protocols program paths will go every nook and corner and data type handling. untested.

IJTRD | July-August 2015 Available [email protected] 14

International Journal of Trend in Research and Development, Volume 2(4), ISSN 2394-9333 www.ijtrd.com

The test is done from the methodologies that can be used while conducting point of view of the user software testing. The main levels of software testing and not the designer. are:  Functional Testing D) Comparison of Testing  Non-functional Testing Table 2: Compares The Three Different Boxes (Black, White, A) Functional Testing Grey) This is a type of black-box testing that is based on Black-Box Grey-Box White-Box the specifications of the software that is to be Testing Testing Testing tested[3]. The application is tested by providing input and then the results are examined that need to The tester has conform to the functionality it was intended for. The internal limited Tester has full workings of an knowledge of the knowledge of the Functional testing of software is conducted on a application need internal workings internal workings complete, integrated system to evaluate the system's not be known. of the of the application. compliance with its specified requirements. application. B) Non Functional Testing Also known as Also known as translucent Also known as This section is based upon testing an application closed-box testing, as the clear-box testing, from its non-functional attributes. Non-functional testing, data- tester has limited structural testing, testing involves testing software from the driven testing, knowledge of the or code-based or functional requirements which are nonfunctional in nature but insides of the testing. testing. important such as performance, security, user application. interface, etc. Performed by Performed by Normally done by C) Distinguish between Functional and end-users and end-users and testers and Non Functional Testing also by testers also by testers developers. and developers. and developers. Table 3: Difference of Functional and Non-Functional Testing Testing is based Testing is done on external on the basis of Internal workings Functional Testing Non- Functional Testing expectations - high-level are fully known Internal database and the tester can In functional Testing In Non-Functional Testing behavior of the diagrams and design test data tester tests how well the tester tests how well the application is data flow accordingly. system performs. system responds. unknown. diagrams. Functional Testing is Non- Functional Testing is It is exhaustive The most based on client Partly time- based on client expectations. and the least exhaustive and requirements. consuming and time- time-consuming exhaustive. Functional Testing Non- Functional Testing consuming. type of testing. means Testing the means Testing the application Not suited for Not suited for Suited for application against against clients and algorithm algorithm testing. algorithm testing. business requirements. performance requirements. testing. Data domains This can only Data domains and It is a part of System It is also a part of System and internal be done by trial- internal Testing. Testing boundaries can and-error boundaries can be be tested, if Functional Testing Non- Functional Testing method. better tested. known. Validating the behavior Validating the performance of of application. application. IV. LEVELS OF TESTING There are different levels during the process of testing. Levels of testing include different

IJTRD | July-August 2015 Available [email protected] 15

International Journal of Trend in Research and Development, Volume 2(4), ISSN 2394-9333 www.ijtrd.com

This Testing covers Unit This Testing covers CONCLUSION Testing, Integration Load/Performance Testing, Testing, , ƒ Testing is a critical part of the development of any Stress/Volume Testing, Sanity Testing, system. Testing can be carried out at a number of , Installation and Testing and so on. levels and is planned as an integral part of the so on. development process[2].ƒ There is a wide range of It is always It is always concentrating on approaches to test case generation and evolution of concentrating on customer expectations. the adequacy of a test suite. Test needs to be customer requirements. managed effectively if it is to be efficient. Non- Functional Testing Functional Testing means how well your system means how is your is doing example usability, REFERENCES system is doing. performance and . [1]www.tutorialspoint.com [2]www.testingexcellence.com [3]www.softwaretestingclass.com

IJTRD | July-August 2015 Available [email protected] 16