Test Process


Test Process

Test Process

The five steps in the Test Process are:
  • Test Planning
  • Test Analysis and Specification
  • Test Execution
  • Test Recording (Verification)
  • Checking for Completion.

Test Planning:  The Test Plan describe how the Test Strategy is implemented.

Involves producing a document that described an overall approach and include test objectives.

Test Plan

Test Plan

Contents of a Test Plan Includes:

1. Background  2. Reference documents    3. Approach      4. Method

5.  Timetable     6. Resources        7.   Dependencies

8.  Report     9. Test Asset Identification           10. Exit Criteria

  • The most critical stage of the process
  • Effort spent now will be rewarded later
  • The foundation on which testing is built

Test Specification (Sometimes referred to as test design)

  • Preparation & analysis
  • Building or design test conditions and  test cases using recognized test techniques
  • Define expected results

Test preparation: Analyse the Application, Identify good test conditions, Identify tes cases, Document thoroughly and cross refercing among the team.

Building Test Cases: Test cases comparise of standard data, transaction data, actions and expected results

Test Cases Vs Expected Results

Test Cases Vs Expected Results

 Expected Results:
  • The outcome of each action
  • The state of the application during test and after test
  • the state of the data during test phase and after the test phase

Test Execution

  • Test execution schedule / log
  • Identify which tests are to be run
  • Test environment primed & ready
  • Resources ready, willing & able
  • Back-up & recovery procedures in place
  • Batch runs planned and scheduled

If all this are in place then we are ready to run carry out our tests

Test Script

Test Recording: involves keeping good records of the test activities that you have carried out.

For example , version of the software you have tested and the test specifications are recorded, along with the actual outcomes of each test.

     Test verification:

  • If  our planning and preparation is sufficiently detailed  this is the easy part of software testing
  • The test is run to verify the application under test
  • The test itself either passes or fails!

       The test log should record:

  • Software and test version control
  • Specifications used as test base
  • Test timings
  • Test result ( Actual results and Expected results)
  • Defect details for erroneous tests

Test Completion

        Test Exit Criteria

        Used to determine when to implement the software

  1. Budget used
  2. Defect detection rate
  3. Performance satisfactory
  4. Test Coverage
  5. Key Functionality tested
Completion or exit criteria are used to determine when testing (at any stage) is complete.  These criteria may be define in terms of cost, time, faults found or coverage criteria.
Coverage criteria  defined in terms of items that are exercised by test suites, such as branches, user requirements, most frequently used  transaction etc.
Tools such as code coverage monitors are use ascertain how many lines of code have been executed.

Software testing


Software testing is the process of executing a program or system  with in intent of finding error. Software testing is any activity aimed at evaluating on attribute or capacibility of a program or system and determining that it meets its required results. Software testing  is a process of  investigation conducted to provide stakeholders with information about the quality of the product or service under test. A Software Analyst is responsible  for the analysis of product and project documentation to identify the most relevant and effective testing of the product,  providing support to the Quality Assurance/ Release Control Team in software testing  and co-ordinating release activities for the business. Key responsibiilty for the Software Test Analyst include:

  • Software Testing
  • Customer Service
  • Good interpersonal relationship with Business Analyst, Project Management and Developer.
  • Good Teamwork (raising defect, bugs, errors,fault fixing, new feature, regression,  manual or automated, and  ad-hoc testing , and supporting all releases and patches to the live customer environment.
  • Knowlege of the Environment under test

Testing can never completely identify all the errors, defects within software. Test Screen It furnish a criticism or comparison that compare the state and behaviour of the product against oracles prinicples or mechanism by which someone might recognize a problem. Software testing can be stated as the process of validating and verifying that a software  program/application /product. 1.  Meets the requirements that guilded its design and development 2. Test works as expected (system under test) 3. Can be implemented with the same characteristics 4. Level of test conducted and the exit criteria set What is Testing ?

  • The process of executing a program with the intent to certify its Quality.  Quality can be measured by testing for Correctness,Reliabilty,Usability, Maintainability,testability and Reusability.
  • The process of executing a program with the intent of finding failures/ faults
  • The process of exercising software to detect bugs, to verify that it satisfies specified functional and non-functional requirements
  • It ensure legal requirements are met
  • To help maintain the organization’s reputation

Even the most carefully planned and design software cannot possibly be free of defects Why Testing is Necessary We can’t test everything, what  can we do?

  • Managing and reducing Risk
  • Carry out a Risk Analysis of the application under test
  • Prioritise tests to focus on the main areas of risk
  • Apportion time relative to the degree of risk involved
  • Understand the risk to the business of the software nor functioning correctly
  • Continuing testing beyond the implementation date should be considered
  • It is better for us (Tester) to find errors than the users.

Software Development life cycle  (SDLC) is sometimes referred  to as the  system development life  cycle;  is the process of creating or altering software systems and the model and methodologies  that people  use  to develop these systems.In any such lifecycle; people process and technology all play a role in success. Fundamental Test Process:This process is detailed in what has become known as the fundamental test process, a key element of what testers do and is applicable at all stages of testing. The most visible part of testing is running one or more tests; test execution.  We also have to prepare for running tests, analyse the tests that have  been run, and see whether testing is complete. Both planning and analysis are very neccessary activities that enhance and amplify the benefits of the test execution itself.  It is no good testing without deciding  how, when and what to test. Planning is also required for the less formal test approaches such as the exploratory testing. The  test process consists of five parts that encompass all areas of software testing.

  • Planning and Control
  • Analysis and Design
  • Implementation and Execution
  • Evaluating exist criteria and Reporting
  • Test closure activities

    Test Plan

    Test Plan

 

Testing Framework is an object-oriented approach to Programmer Test :

Quality Assurance, or QA is another word the evaluation of different portions of the software development life cycle and is used to minimize downtime, bugs, and mistakes, while keeping the bottom line – profitability – ate the forefront of any process.