Software Testing Career

More

Software Testing Jobs & Resume

More

Software Testing Skills

More
7
Apr
2015
0

Software Test Plan Framework

In this new age of rapid development models like Agile, we want to jump onto design and testing with good enough documentation instead of spending lifetime on it to make it perfect.

Though it makes perfect sense but we should not undermine the importance of quality of the contents in the Test Plan documents.

Test plan helps us to manage change. During early phases of the project, as we gather more information, we revise our plans. As the project evolves and situations change, we adapt our plans.

Updating the plan at major milestone helps us to keep testing aligned with the project needs. As we run the tests, we make final adjustments to our plans based on the results.

Test Plan – A document describing the scope, approach, resources, and schedule of intended testing activities. It recognizes test items, features to be tested, testing tasks, who will perform each task, and any risks requiring contingency planning.

The test plan is a by-product of the comprehensive planning process. The Purpose of a Test Plan is:

  • To advise the scope, approach, resources, and schedule of the testing actions.
  • To recognize the items being tested, the features to be tested, the testing tasks to be done, the personnel accountable for each task, and the risks related with the plan.

The final aim of the test planning procedure is to communicate the software test team’s purpose, its expectations, and understanding of the testing that is to be achieved.

The test planning process and the plan itself provides a platform to discuss with other members of the project team, testers, peers, managers and other stakeholders.

 

Also Read: Test Design, Test Case, Test Suite, Test Script

 

Test plan forces us to confront the challenges well in advance and we could focus our thinking on important topics.

It helps gain clarity on the requirements and their testability. Test plan once drafted must be reviewed by conducting review meetings.

Types of Test Plan:

  • Mission Plan – Usually 5-10 pages documents and contains explanation of “Why”.
  • Strategic Plan – Addresses “What” and “When”. Usually 15-20 pages document. They are seldom used by practicing testers and developers.
  • Tactical Plan – Addresses “How” and “Who”. Tactical plans are the most detailed of all plans. For example, a Tactical Plan would describe how each individual Unit will be tested.
Test plan helps us to think through the efforts needed to validate the acceptability of a software.

TEST PLAN OUTLINE

1) Test Plan Identifier

This is required to manage in coordinating software and test ware versions within configuration management.

This is no specific syntax to be followed, it depends on the organization.

Usually it has series number which identifies the release number, feature name and/or number, version number and it also maintains a history section to note the evolutions.

2) References

List all documents that support this test plan. Documents that can be referenced include:

  • Project Plan
  • Requirements specifications
  • High Level design document
  • Detail design document
  • Development and Test process standards
  • Methodology guidelines and examples

3) Introduction

It covers the purpose of the Plan.

4) Test Items

This section is for what is being tested, i.e. all the functions of a specific product, its existing interfaces, integration of all functions.

Includes Test Estimations (Time of tests, Budget etc.).

Test coverage in the test plan states what requirements will be verified during what stages of the product life. Test coverage for different product life stages may overlap, but will not necessarily be exactly the same for all stages.

5) Risks and Assumptions

Recognize the high-risk assumptions with the test plan, what are the components or resources which may be late or unavailable.

Specify contingency plans for each item, and provide an initial assessment on the impact of the risk, along with how likely it will be.

6) Features to be tested

It essentially covers the test items not from the technical point of view but from users perspective. It contains list of features to be tested with the severity and priority from users point of view.

7) Features not to be tested

This is a listing of what is not to be tested from technical and user view. It captures the reasons for the same.

8) Testing Approach

This is your overall test strategy for this test plan which covers overall rules and processes identified.

It answers:

  • Are there any special tools to be used and what are they?
  • Will the tool require special training?
  • What metrics will be collected?
  • At which level each metric is to be collected?
  • How is Configuration Management to be handled?
  • How many different configurations will be tested?
  • Hardware & Software requirements.
  • Combinations of HW, SW and other vendor packages
  • What levels of regression testing will be done and how much at each test level?
  • Will regression testing be based on severity of defects detected?

9) Item Pass/Fail Criteria

It basically covers the definition of done. It is the criteria based on which we decide if the plan is complete.

This could be an individual test case level criterion or a unit level plan or it can be general functional requirements for higher level plans.

10) Suspension Criteria and Resumption Requirements

If the defect density ratio is too high, sometimes it makes no sense to continue the test as there would not be enough time to get it fixed or quality might be too low for delivery.

Specify what constitutes stoppage for a test or series of tests and what is the acceptable level of defects that will allow the testing to proceed past the defects.

Identify what type of defects would be considered showstoppers.

11) Test Deliverables

  • Test Sign-Off Report – A report by the Test Team signifying all tests have been completed successfully and fulfills the requirements.
  • Test Incident Report – Details, for any test that failed, the actual against expected result, and other information projected to throw light on why a test has failed.
  • Test Case Documents – Series of simple steps that needs be done to check a particular functionality.
  • Test Plan Document – Describes the Strategy that is used to verify and to make sure that a product or system meets its design specifications and other requirements.
  • Test Strategy Document – This defines “Testing Approach” to attain testing purposes.
  • Traceability Matrix Document – Typically in the form of a table, that correlates two base-lined documents.
  • Schedule and Milestone –Estimates time to do each testing task and specifies the schedule to do each Testing task and Test Milestone. A milestone is an important event in the course of a project that is used to give visibility of progress in terms of achievement of predefined milestone goals. Failure to meet a milestone indicates that a project is not proceeding to plan and usually triggers corrective action by management.

12) Environmental Needs

Specify both the necessary and desired properties of the test environment.

The specification should contain the physical characteristics of the facilities, including the hardware, the communications and system software, the mode of usage (for example, stand-alone), and any other software or supplies needed to support the test.

Also specify the level of security which must be provided for the test facility, system software, and proprietary components such as software, data, and hardware.

13) Test Resources

Tools – Describes and identifies special test tools needed. Identifies any other testing needs. Identifies the source of all needs which are not currently available.

People – List of specific people carrying out the Test and their roles. Also needs to encounter constraints in staffing shortage.

15) Schedule

It is extremely important to get the estimates right, little deviation from the plan is acceptable, keyword here being ‘little’.

It should be based on realistic and validated estimates.

If estimates go haywire for design and they take more time, it is highly likely that project management would cut down on testing time

It usually comes down to the decision on what is the impact of delivering the solution if it is partially tested. How slippage in the schedule will be handled should also be addressed here.

Plan all test dates directly to their related development activity dates.

16) Planning Risks and Contingencies

Plan for various risks e.g.:

  • Lack of personnel resources when testing is to begin.
  • Lack of availability of required hardware, software, data or tools.
  • Late delivery of the software, hardware or tools.
  • Delays in training on the application and/or tools.
  • Changes to the original requirements or designs.

It should be captured in here, how such situations be handled when encountered.

17) Approvals

Determine the approval process keeping the audience in mind.

18) Glossary

Used to define terms and acronyms used in the document, and testing in general, to eliminate confusion and promote consistent communications.

There you go. These are most important aspect of test planning. Happy test planning !!

Please share your thoughts with us.


Comments 0

  • HERE IS WHAT YOU’LL RECEIVE

    • Get Articles on Upcoming Training, Seminars and Workshops1
    • Get Tips and Tricks for Resume, Coverletter and Interview Prepration
    • Latest Industry Updates
    • Your Details are safe with us
  • Other Training Courses

    JMeter is an open source Java application designed to load test, functional behavior and effective performance testing tool for QA. This course is designed for QA to familiarize with JMeter load test tool. The main focus is to practically use of…

    More

    Software Testing Intensive(STI) is designed to assist newcomers to join the software testing field and gain intermediate to advanced level software testing skills. The candidates will be able to manage to perform testing throughout the test life cycle. This course also helps the intermediate testers to gain the absolute confidence in software testing field in web as well as mobile application.

    More

    This course include includes an intensive workshop where you are learning all the mental barriers you need to avoid and the game plan you should be creating. You will also be practically doing and updating all the necessary marketing collateral for your job applications with confidence by using world class material and resources this course provides to all its students.

    More

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Appium as a tool for mobile test automation is getting very popular in the market for mobile automation testing not only it is an open source but also is absolutely free for open discussions in communities to get quicker solutions.

    More

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    This course include includes an intensive workshop where you are learning all the mental barriers you need to avoid and the game plan you should be creating. You will also be practically doing and updating all the necessary marketing collateral for your job applications with confidence by using world class material and resources this course provides to all its students.

    More

    .Net Developer Advanced Training

    This course is about to gain understanding of advanced level knowledge of Microsoft .Net framework. It will cover advance development using ASP.NET, Data Binding and Web Configuration, C# Advance features, Web Service Implementation and many more advanced topics.

    More

    .Net Developer Training

    This course is about to gain understanding of current IT industry and prepare yourself for Microsoft .Net Developer Position. In this course, you will learn various Microsoft .Net tools and technologies. It will help you to build and deploy website from scratch using .Net framework. At the end of this course, you will be able to give web solutions using .Net technologies to the businesses, and able to attend interview for .Net developer position.

    More

    Advanced LinkedIn For Job Seekers

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    Agile Testing Intensive (AgTI)

    Understanding of Fundamentals Software Testing

    More

    AJS1: AngularJS Development Level 1

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    AJS2: AngularJS Development Level 2

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Automation Testing Intensive Level 2(ATI2)

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Blockchain Fundamentals 101 Training

    The Blockchain Fundamentals 101 training course provides and excellent platform to learn the basics of the blockchain. This course is for the professionals who want to understand background of the development of the blockchain, what are the major players and the full ecosystem around blockchain. You’ll also learn various business use cases for the Blockchain and the industries using it.

    More

    Oracle Training

    The Oracle well known, widely used Database is an object-relational database management system produced by Oracle Corporation. This is the ideal course for any tech savvy programmer, DBA, SQA…

    More

    Ruby Scripting Training

    Ruby is a scripting language designed by Yukihiro Matsumoto, also known as Matz. It runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX. Ruby Scripting language is dynamic and object oriented. In a sense, it’s a purist’s language for those who love object-oriented languages. Everything, without exception, is automatically an object, whereas in other programming languages this isn’t true. It is simple enough for beginning programmers to use while also powerful enough for experienced programmers to have all the tools they’d need.

    More

    SQL for Testers Training

    If you are new to software testing or looking for a career change to become a software tester Understanding the relational data model behind an application enables you to design additional tests…

    More

    SQL Training

    SQL (Structured Query Language) is a programming language intended for managing data held in relational database management systems (RDBMS). SQL expertise are advantageous in a number of professions such as database developers, report writers, business analysts, computer programmers, web developers, testers and data analysts. SQL has a shorter learning curve compared to other skills like business analysis or computer programming or testing.

    More

    VB Scripting Training

    VB Script is a subset of Visual Basic 4.0 language. It was developed by Microsoft to provide more processing power to Web pages. VB Script can be used to write both server side and client side scripting.

    More

    Front End Web Development

    Front End Web Development (FED) is a training which will allow candidates to understand about HTML5, CSS3 and JavaScript, Ajax along with a few key frameworks such as Bootstrap and jQuery. This course also helps you work on creating your own basic application throughout the course.

    More

    FWD2: Frontend Web Development Level 2

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Interview Like a Pro

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    ISTQB Certification Training

    ISTQB foundation course allows you to learn from the very core fundamentals to advance level software testing concepts. The course is intended for anyone who is new to testing or has been in the testing and wants to learn more in details…

    More

    Java Development

    Skiva is a leading IT consulting firm based in Sydney, Australia. Our team of dedicated developers and experienced IT professionals allows us to develop every kind of software application required for improving and max imising the functionality of both new and existing websites. Our sole aim is to help you grow your business, by developing an informative and dynamic website that produces effective and profitable conversion rates for website traffic.

    More

    Java Fundamentals Training

    Fundamentals of Java is a very comprehensive yet simple course on java programming which concentrates on basic concepts of Java. This course is great because it covers just the right amount of Java which is needed for automation, but this course does not cover Selenium WebDriver or any other type of automation tool. Java is one of the most and useful programming languages to learn. You will get the best in class support from the instructor for any question you have related to the course.

    More

    LoadRunner Training

    One of the most crucial test tool to load test the application and measure the performance. Why to load test application, Is application scalable to withstand concurrent number of users? All such answers and application performance…

    More

    Mobile App Testing

    Mobile App testing consists of several of the same processes as other software testing. Application software which has been created, or enhanced for any portable devices, is checked to ensure that it is consistent in results, usable, and functions as it was intended to. Mobile applications may be factory installed or installed from a software distribution platform, while the growth of the number of mobile devices has been matched by the opportunities for new smartphone and other apps.

    More

    Mobile Test Automation With Appium

    Appium as a tool for mobile test automation is getting very popular in the market for mobile automation testing not only it is an open source but also is absolutely free for open discussions in communities to get quicker solutions.

    More

    Psychology & Mindset For Job Seekers

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    QTP Test Automation Training

    QTP (Quick test professional) course series designed for beginner automation QA to advanced level QA for automation. This course covers all concepts and basics fundamental with complete in depth examples…

    More

    Rockstar Resume & Compelling Cover Letter That Sells

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    Salary Negotiation to Probation and Promotion

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    Software Testing Training Career Package

    Software Testing course allows you to learn from the very core fundamentals to advance level testing course which is intended for anyone who is new to testing or have been in the testing and want to learn more in details.

    More

    Ultimate Job Search Strategies To Find Hidden Job Market

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    User Acceptance Testing

    User Acceptance Testing is normally the pre-production testing that is done by Users or probably the Product Owners in Agile terms.

    More