Nothing Special   »   [go: up one dir, main page]

Testing

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 5

SYSTEM TESTING

5.1 System Testing Software testing is the process used to help identify the correctness, completeness, security and quality of developed software. Testing is a process of executing a program or application in the intent of finding errors. The common view of testing held by users is that it is performed to prove that there are no errors in the program. This is extremely difficult since designer cannot prove to be one hundred percent accurate. Therefore, the most useful and practical approach is with the understanding that testing is the process of executing a program with explicit intention of finding errors that make the program fail. Testing has got its own cycle. The testing process begins with the product requirement phase and from their parallels the entire development process. In other words, for each phase of development process there is an important testing activity. Successful testing requires a methodical approach. It requires a focusing on basic critical factors like Planning, Project & process control, Risk management, Inspections, Measurement tools, Organization and professionalism. Software testing is an important element of software quality assurance and represents, the ultimate review of specifications, design and coding. This increasing visibility of software as a system and the costs associated with a software failure are motivating forces for well planned thorough testing. Testing, presents an interesting challenge for the software engineer. During the earlier definition and development phase, the engineer attempts to build software from an abstract concept to an acceptable

implementation. In testing, the engineer creates a series of tests cases that are intended to demolish the software that has been build.

5.2 Testing Objective There are several rules that can serve as Testing is a process of

executing a program with the intention of finding an error. A good test case is one that has a high probability of finding an

undiscovered error. A successful test is in that uncovers an undiscovered error.

If testing is conducted successfully according to the objectives stated above, it will uncover errors in the software. Also, testing demonstrates that software functions appear to the working according to specification, that performance requirements appear to have been met.

5.3 Test Plan The system engineering defines the role of software and leads to software requirements analysis, where the information domain, function, behavior, performance, constraints and validation criteria for the software are established. The unit testing begins at the vertex and concentrates on each unit of the software as implemented in the source code. Testing progresses by moving outwards to integrate testing, where the focus is on the design and the construction of the software architecture. Taking another turn outwards we encounter validation testing, where requirements established as a part of

software requirements analysis are validated against the software that has been constructed. Finally we arrive at system testing, where the software and other system elements are tested as a whole.

Considering the process from a procedural point of view, testing within the context of software engineering is actually a series of three steps that are implemented sequentially. Initially test focus on each module individually, ensuring that its functions properly as a unit. Hence the name unit is testing. Unit testing makes heavy use of white box testing techniques, exercising specific parts in a modules control structure to ensure complete coverage and maximum error detection. Next, modules must be assembled or integrated to form the complete software package. The entire testing process can be divided into 3 phases. Unit Testing Integration Testing Final / System Testing

5.4 Unit Testing Unit testing focuses verification effort on the smallest unit of software designs the module. To check whether each module in the software works properly so that it gives desired outputs to the given inputs. All validations and conditions are tested in the module level in the unit test. Control paths are tested to ensure the information properly flows into, and output of the program unit and out of the program unit under test. Boundary conditions is tested to ensure that the modules operate at boundaries. All independent paths through the control structure ensure that all statements in a module have been executed at least once.

5.5 Integration Testing The major concerns of integration testing are developing an incremental strategy that will limit the complexity of entire actions among components as they are added to the system. Developing a component as they are added to the system, developing an implementation and

integration schedules that will make the modules available when needed, and designing test cases that will demonstrate the viability of the evolving system. Though each program works individually they should work after linking them together. This is also referred to as interfacing. Data may be lost across interface and one module can have adverse effect on another. Subroutines after linking may not do the desired function expected by the main routine. Integration testing is a systematic technique for constructing program structure while at the same time conducting tests to uncover errors associated with the interface. In the testing, the programs are constructed and tested in small segments.

5.6 SYSTEM TESTING When a system is developed it is hoped that it performs properly. In practice however some errors always occur. The main purpose of testing and information system is to find the errors and correct them. A successful test is one which finds an error. The main objectives of system testing are: To ensure during operation the system will perform as per specifications. To make sure that the system meets users requirements during operation. To verify that the controls incorporated in the system function as intended. To see that when correct inputs are fed to the system the outputs are correct. To make sure that during operation incorrect input and output will be deleted.

The scope of a system test should include both manual operations and computerized. Operations system testing is a comprehensive evaluation of the programs, manual procedures, computer operations and controls. System testing is the process of checking if the developed system is working according to the original objectives and requirements. All testing needs to be conducted in accordance to the test conditions specified earlier.

5.7 Black Box Testing

This testing method focuses on the functional requirements of the software. It attempts to find out the error of the following categories such as incorrect and missing functions, interface error, error in data structure, performance error and initialization and termination errors.

5.8 White Box Testing This testing method is also called path testing. It is a test case design method that uses the control structure of the procedural design to drive test case. In this system, unit testing has been successfully handled. The test data was given to each and every module in all respects and got the desired output. Each module has been tested found working properly.

You might also like