R4R provide basic Testing Tutorials concept withTesting Examples .Through R4R you can develop Testing programming concept. R4R provide Testing Interview Questions with answers.R4R provide Testing Languages study materials in easy way..

Introduction of Testing

Software testing is both a discipline and a process. Though software testing is part of the software development process, it should not be considered part of software development. It is a separate discipline from software development. Software development is the process of coding functionality to meet defined end-user needs .Testing is an activity that helps in finding out bugs/defects/errors in a software system under development, in order to provide a bug free and reliable system/solution to the customer.

In Other Words

Testing is used to prevent the bugs and make the product bug free or defect less...the main aim of testing is to retest the product to verify whether testing had done perfectly or not .Tester always thinks in the direction of a user and if he feels that the product is user friendly, he stops testing the product, otherwise he goes on testing the software till it is error free (off course no product will be an error free even it is tested 100s of times).

Software Testing Types

This Testing is Used to verify a product meets customer specified requirements


Testing without knowledge of the internal workings of the item being tested. Tests are usually functional.


Testing in which modules are combined and tested as a group. Modules are typically code modules, individual applications, client and server applications on a network, etc. Integration Testing follows unit testing and precedes system testing.


Similar in scope to a functional test, a regression test allows a consistent, repeatable validation of each new release of a product or Web site. Such testing ensures reported product defects have been corrected for each new release and that no new quality problems were introduced in the maintenance process. Though regression testing can be performed manually an automated test suite is often used to reduce the time and resources needed to perform the required testing.


Testing conducted to evaluate a system or component at or beyond the limits of its specified requirements to determine the load under which it fails and how. A graceful degradation under load leading to non-catastrophic failure is the desired result. Often Stress Testing is performed using the same process as Performance Testing but employing a very high level of simulated load.


Testing conducted on a complete, integrated system to evaluate the system's compliance with its specified requirements. System testing falls within the scope of black box testing, and as such, should require no knowledge of the inner design of the code or logic.


Functional and reliability testing in an Engineering environment. Producing tests for the behavior of components of a product to ensure their correct behavior prior to system integration.


Testing based on an analysis of internal workings and structure of a piece of software. Includes techniques such as Branch Testing and Path Testing. Also known as Structural Testing and Glass Box Testing.

Goal of Testing
  1. To find the Defects.
  2. To measure the quality of the Product
  3. The application should be as per the customer requirement.
  4. It should be defect free and easy to maintain.
Life Cycle of S/w Testing
  1. Test Planning
  2. Test Analysis
  3. Test Design
  4. Construction and verification,
  5. Testing Cycles
  6. Final Testing and Implementation and
  7. Post Implementation

Software testing has its own life cycle that intersects with every stage of the SDLC. The basic requirements in software testing life cycle is to control/deal with software testing – Manual, Automated and Performance

There are main Six Step of S/w Testing Life Cycle
  • Reduce the cost of software testing
  • Reduce the overall time to test a software
  • Increase the overall productivity and efficiency
  • Increase the scalability of resources
  • Increase the confidence in delivery by reducing overall risk
  • Project Testing Process
    Important key steps for Test strategy are as follows
    1. Define project scope & commitments
    2. Define terms of reference
    3. Set customer expectations
    4. Tie together the business objectives of our project with the release/sign off criterion and associated testing activity
    5. Integrate the processes with development lifecycle
    6. Partition the problem into manageable test plans
    7. Identify key dependencies & trade-offs
    8. Scope resource requirements
    Important key steps for Test Planning
    1. Defining release criteria
    2. Outline and prioritize the testing effort.
    3. Chart test automation requirements
    4. Identify resource requirements at various stages of testing
    5. Set up calendar-based activity plan
    6. State reporting mechanism & establish communication model
    7. Configure team including number, type, and seniority of resources and length of time required, mapped each resource onto the activity plan.
    Important key steps for Text Execution

    Execution of the test plan begins with fulfillment of test-start criteria, and ends with the fulfillment of test-complete criteria. Although each project has different requirements, the intermediary steps will resemble the following

    1. Prepare comprehensive test plan specifications and test cases for each level of testing.
    2. Review all test plans and test cases
    3. Prepare test data and test logs.
    4. Set up the test environment so that all operations can be completed promptly, accurately, and efficiently.
    5. Execute Error/Trap tests to ensure testers accuracy.
    6. Execute tests as described, noting where test cases require revision and updating.
    7. Report all bugs in the manner agreed upon with the customer, following all defect management protocols, informing customer of current status, monitoring and driving to resolution all red-flag conditions, and ensuring that communication between all parties is complete and accurate.
    8. Run spot checks to ensure quality.
    9. Update weekly the Project Health Status document for Internal Audit & Tracking.
    10. When the project has been completed, review all aspects of the project and submit a Project Retrospective report to the customer that objectively evaluates the project's execution.
    Advantages of black box testing
  • Black box tests are reproducible.
  • The environment the program is running is also tested.
  • The invested effort can be used multiple times.
  • Disadvantages of black box testing
  • The results are often overestimated.
  • Not all properties of a software product can be testedgif.
  • The reason for a failure is not found.
  • Testing Tutorials
    Testing Examples
    Testing Interview Materials