Friday, June 15, 2012

Test Plan Template.


Test Plan Template:
A simple Test Plan template appears, as shown below:


Company Name.

<Project Name>.
----------------------------------------------------------------------------------------------------------

 Index:
------------

1.) Introduction about Project....................................Page Number.
    1.1) Description of this document:.........................Page Number.
    1.2) Related Documents.........................................Page Number.

2) .......... and so on...

--------------------------------------------------------------------------------------------------------------------------------

1) INTRODUCTION:

A brief Introduction about the project.

1.1) Description of this document:

This document is a test plan for the <Project Name> platform, produced by Quality Assurance. It describes the testing strategy and approach to testing. QA will use this document to validate the quality of this product. It also contains requirements of various resources required for the successful completion of the <Project Name> and associated products.

The focus of testing the <Project Name> is to support those new features that will allow easier deployment and maintenance of solutions built upon the -<Project Name> - and -<Its associated applications name>. This release of the -<Project Name> will also include legacy bug fixing, and redesigning or including missing functionality from previous release.

1.2) Related Document(s) :

●      1. Requirement and Design doc.
●      2. ------
●      3. Business Specifications Requirement doc.
●      4. ------

--------------------------------------------------------------------------------------

2.) ROLES AND RESPONSIBILITIES:

Software Testing and QA Engineer:
      Identify Test Data.
●      Execute Test scenarios.
●      Raise Software Error Reports.
●      Administer Error Measurement System.
●      Liaising with technical staff to ensure availability of all testing facilities.
      Collate and distribute all testing documentation, and collect completed test documentation.
      Report on testing progress to the Testing Team Lead and other designated project personnel (s).

Testing Support Team / Developers / Project Managers / Team Leads:
●      Take part in daily Error Reviews.
●      Co-ordinate/provide support for system test.
●      Resolve errors.
●      Re-release product after amendments.
      Support Systems Testers.
      Regularly review Testing progress and provide feedback on shared docs.
      Raise and manage issues/risks relating to project or outside Test Teams control.
●      Review & sign off Test approach, plans and schedule.

3.) Features to be tested:

      All the modules in <Project Name>
      Search Forms
      Buttons/Tabs
      Accessibility
      Availability
      Compatibility
      Functional
      Performance
      Reliability
      Scalability
      Usability

4.) Feature not to be tested:

      List of Features not to be tested.

5.) OBJECTIVES:

The objective of this <Project Name> Test Plan is to define the procedures and logistics necessary to test the functionality of <Project Name> and applications associated with the <Project Name>. 

The following objectives were incorporated into the test plan:

●      Provide a formal testing process
●      Test each Tier of requirement.
●      Document the results of each test.
●      Collect issues from the tests.
      Provide verifiable documentation that the concept, as developed, is functional.
      To test the functionality of <Project Name> and intended working of the same.

6.) Testing Personnel’s:

The testing will require participation of most of the personnel assigned to the project in order to operate and oversee the <Project Name>.  To assist in coordination and documentation.

A dedicated testing team will be needed that will have no other duties during the testing period.  This test team will oversee the testing. Optimally, the test team will consist of one team of at least four testers.

This team will consist of —

1.) Name 1.
2.) Name 2.
3.) Name 3.
4.) Name 4.

Recruitment Required:


7.) Equipment (s) / Tools Required:

The <Project Name> Test Phase will require the following resources: 

●      <Project Name> Test environment.
●      Proactive chat system.
●      More than one land line phone number for SMS and Call tracking
      Tools for Load and stress testing [Tool yet to be decided].. OR Load Runner.
      Basic training on Tools used.

8.) Classification of Bugs:

●      Blocker:  This bug prevents developers from testing or developing the software.
●      Critical:  The software crashes, hangs, or causes you to lose data.
●      Major A major feature is broken.
●      Normal:  It's a bug that should be fixed.
●      Minor:  Minor loss of function, and there's an easy work around.
●      Trivial:  A cosmetic problem, such as a misspelled word or misaligned text.
●      Enhancement:  Request for new feature or enhancement.

9.) Bugs Priority List:

Priority
Priority Level
Priority Description
5
Must fix
Must be fixed immediately;
the product cannot ship with
This bug.
4
Should fix
Should be fixed as soon as
possible or else it will ruin the
Company’s reputation.

3
Fix
 Fix it when it does not delay
The shipping date.

2
Low Priority
Fix it after all other higher levels are done.
1
Trivial
 Fix it to make the product
Perfect.


10.)  Error Management:

●      During tests, errors will be recorded as they are detected on Error Report forms.
●      Errors should be strictly turned around by Bugs Fixing Team and reported back to QA.

11.) SOFTWARE RISK ISSUES:

Identify what software is to be tested and what the critical areas are, such as:

A. Delivery of a third party product.B. Ability to use and understand product/package/tool, etc.D. Extremely complex functions.E. Modifications to components with a past history of failure.F. Poorly documented modules or change requests.


There are some inherent software risks such as complexity; these need to be identified. They include :

A. Safety
B. Multiple interfaces
C. Impacts on Client
D. Flash player dependencies.



12.) STAFFING AND TRAINING NEEDS :

Training on the application/system.

Training for any test tools to be used/ required.

13.) Schedule:

APPROACH:

It is hoped that there will be at least one full time independent test team for system/Load testing. However, with the time line constraint established to one month; most testing will be done by the test team with the development team’s participation.

UNIT Testing:

Will be done by the developer and will be approved by the development team leader.

ACCEPTANCE Testing:

UAT shall be performed by the actual end users with the assistance of the project manager. Applicaions will enter into Acceptance test after all critical and major defects have been corrected. An application may have one or more major defect as long as it does not impede testing or performance of the application. Prior to final completion of acceptance testing, all open critical and major defects MUST be corrected and verified by the Customer test representative.

14.)  After Final Test:

To generate a final test report and wait for sign-off. The bugs should be reported as clear and complete as possible. The informal feedback of these tests should be collected, evaluated and could lead to feature requests.

15.) Formal Sign Offs / Approvals:

Required
Name
Sign off and Date
Yes


Yes


Yes


Yes


Yes


Yes


Yes


Yes


Yes




Thursday, June 14, 2012

Discussions

Start Discussions, Ask Questions by commenting in this post...!


What is Unit Testing, Integration testing, System Testing, User Acceptance testing and Release Testing…?

Answer:


Unit Testing:

Unit testing is a phase in which each sole units of modules or source codes are tested to verify that they are feasible to use. A "unit" is the smallest testable part of a product or an application. Unit tests are usually created by coders/developers and barely by white box testers.



Integration Testing:

In integration testing each single unit of modules will be combined together and tested to unmask the defects and faults in the fuses of units and in the interaction between integrated units/components. There are different types of integration testing - some are :- big-bang, bottom-up, top-down, and sandwich testing.


System Testing:
System testing is a stage in which the system requirements and conditions will be analyzed and compared against the actual developed system.


Important Links:


|   Introduction to Software Testing   |   Roles and Responsibilities of a Software Tester   |   What is a Test Case   |   Software Testing types and Methods   |   STLC Process   |   Hierarchy Chart   |   Most Common Interview Questions   |   Resume Preparation Tips   |   SDLC Models   |   Blog Index   |   Software Testing FAQs   |


Monday, June 11, 2012

Introduction to Software Testing:

Software Testing is a process of validating and verifying a system/application/product whether they:

  • Meet the requirements and it does not deviate from the desired functionalities.
  • Work as expected.
  • Are secure & non risky.
  • Work in desired resource configuration.
  • Are having lesser bugs and product/application is deliverable.
  • Satisfies the End User.
  • Are user friendly and understandable.


The basic purpose of Testing is to execute programs to detect bugs. In traditional practices, testing was done after - completion of Development or coding phases. But with the enhancements in SDLC Models like Agile processes  - Testing is a side by side process.


Quality: – the degree to which the software satisfies stated and implied requirements-
  • Absence of system crashes.
  • Correspondence between the software and the users’ expectations.
  • Performance to specified requirements.

Quality must be controlled because doing so increases production speed, decreases maintenance costs and can eliminate competition while improving business.


Quality Assurance Plan:
  • The plan for quality assurance activities should be in writing.
  • Decide if a separate group should perform the quality assurance activities.
  • Some elements that should be considered by the plan are: defect tracking, unit testing, source-code tracking, technical reviews, integration testing, system testing and User Acceptance Testing [UAT].

Quality Assurance Plan:
  • Defect tracking – keeps track of each defect found, its source, when it was detected, steps to reproduce, when it was resolved etc,.
  • Unit testing – each individual module is tested.
  • Source code tracking – step through source code line by line.
  • Technical reviews – completed work is reviewed by peers.
  • Integration testing --  exercise new code in combination with code that already has been integrated.
  • System testing – execution of the software for the purpose of finding defects.

Testing does not guarantee that the application or product is free of bugs. It only Assures that the product or application is Quality oriented and that it meets the requirements and exceeds user expectations. It lowers maintenance cost and increases production rate.


Important Links:



|   Introduction to Software Testing   |   Roles and Responsibilities of a Software Tester   |   What is a Test Case   |   Software Testing types and Methods   |   STLC Process   |   Hierarchy Chart   |   Most Common Interview Questions   |   Resume Preparation Tips   |   SDLC Models   |   Blog Index   |   Software Testing FAQs   |



Google Search