0:02 hello everyone welcome again in this
0:04 software testing tutorial
0:07 we are going to learn about what is test plan
0:09 plan
0:13 now before we understand what exactly is
0:14 test plan
0:17 i'll explain in general why
0:21 planning is important and what a plan is
0:24 now i'll take an example of say
0:25 you know you are building your house so
0:27 you have bought the land
0:29 and you are building the house before
0:31 building the house
0:33 there are a lot of planning activities
0:34 that in general happen
0:36 right so you have the you know floor
0:38 plan made
0:41 and then based on that floor plan
0:43 there are other planning that needs to
0:45 happen before you actually start putting
0:46 the slab
0:48 and then putting bricks and building the
0:50 walls right
0:53 so why does it happen that when you are
0:55 building the house you plan it first
0:58 the reason is say for example you
1:02 are you know having a piece of land and
1:04 say for example you start building the slab
1:05 slab
1:08 altogether okay so you have laid down
1:08 the fla
1:13 slab on the overall area and
1:15 after that you realize that you forgot
1:16 the plumbing work
1:19 okay so plumbing needs to go beneath
1:20 your house
1:23 and it needs to be planned properly so
1:26 these are some of the issues that happen
1:28 if you do not plan your work properly so planning
1:28 planning
1:32 in general is very important so
1:33 when we build the house we build the
1:35 plan and plan covers
1:38 all the you know small things and it
1:40 helps you to basically
1:42 give a bit of you know thought what all
1:44 needs to go there there needs to be
1:46 plumbing there needs to be electrical work
1:46 work
1:49 how electrical work will happen where
1:51 based on you know like the floor plan
1:53 where the bathroom will be where the
1:55 kitchen will be what all plumbing and electrical
1:56 electrical
1:58 you know connections need to go in each
1:59 of those rooms
2:03 that all is defined in your normal
2:06 house plan right now when we talk about
2:07 the test plan
2:10 it is no different with any other planning
2:11 planning
2:13 activity so when you are building the
2:15 house you build a plan
2:17 to build the house when you are doing
2:18 software testing
2:22 you build or you create a plan to
2:25 basically mention or identify
2:28 what and how you are going to test a
2:30 particular software
2:33 right so planning gives you a
2:38 predefined or gives you a guidance to
2:40 basically analyze what you are going to test
2:41 test
2:44 and how you are going to test okay so there
2:44 there
2:46 are a lot of you know templates
2:48 available and the
2:51 you know organizations customize these
2:52 templates accordingly
2:56 so as per their needs but in general
3:00 test plan template this is ieee template
3:02 sections these are the key sections that
3:04 need to be included in the test
3:06 plan so we haven't we have understood
3:08 about the general plan
3:10 um and planning so planning is important
3:12 without planning if you start
3:15 you know actually um doing some work
3:18 you are you know going to end up in some
3:19 sort of trouble
3:22 or you know you might be forgetting
3:23 something but if you have you know
3:25 proper plan in place then you
3:27 give it a thought about the software
3:29 testing module that you are going to
3:30 test or the overall software that you
3:32 are going to test
3:36 and based on that you know testing or
3:37 the thought that you have given in that
3:39 particular plan you define all the
3:42 activities that need to go in that plan
3:45 step by step right so if you talk about
3:46 the test plan
3:48 uh you know what all needs to go into
3:51 the test plan so test plan is specific
3:53 to software testing
3:56 and in the test plan we have the first
3:57 thing is test plan identifier now when
4:00 we talk about test plan identifier
4:02 it is something you know a document
4:04 identifier say for example
4:06 you write something you know uh tp underscore
4:07 underscore
4:09 and then say for example your project
4:11 name or initials are
4:14 abc and then you start you know zero one
4:16 or something so this is something you
4:16 know you
4:19 you you basically provide the name of the
4:19 the
4:23 plan so that anybody who is seeing
4:25 uh can easily understand that this is
4:27 test plan of this particular project in the
4:27 the
4:29 organization right so test plan
4:31 identifier is identifier of that
4:33 particular document that you'll be creating
4:33 creating
4:36 as part of the project then in the introduction
4:37 introduction
4:39 section as the name suggests you will
4:41 introduce what
4:44 this plan is all about right so which
4:46 particular module or which particular
4:49 application this particular test plan that
4:50 that
4:52 the document that you'll be writing will
4:53 be uh you know
4:55 handling or will be testing for so
4:58 introduction about the project
5:00 and some of the details about the
5:01 project so couple of you know statements there
5:02 there
5:04 in the introduction section so that if
5:06 anybody reads that introduction section he
5:07 he
5:09 can or he or she can understand what
5:11 exactly the plan is all about
5:14 okay then you have the test items so
5:15 this is another
5:17 important thing so what this will guide
5:18 you is when you
5:22 identify the items or the testing items
5:24 what this means is all the features that
5:25 you are going to test right so high
5:31 are the requirements right so if if you
5:33 have the requirements or the features
5:34 so there will be you know like high
5:36 level features say for example if i'm testing
5:36 testing
5:40 uh e-commerce website then
5:42 what all features need to be built as
5:45 part of the release one or release two
5:47 and then you include those features so
5:49 for example login functionality so you
5:51 mention login with some of the details
5:52 then you
5:55 mentioned registration so high level you know
5:55 know
5:57 functionalities that you are going to
5:59 test as part of the application you provide
6:00 provide
6:02 those details in the test item section
6:04 of the plan
6:05 then you have the features to be tested
6:08 and features not to be tested these two
6:10 are also very important sections of the plan
6:11 plan
6:14 and in features to be tested you mention
6:15 or you
6:18 uh you know write down all the features
6:21 that need to be tested so for example
6:22 here we have already
6:26 included the test items as such now
6:29 we have to basically elaborate what all features
6:30 features
6:33 um of these items right so in this case
6:34 say for example
6:36 you know test items are login or
6:39 registration or any of the details so
6:42 what all features among those items need
6:43 to be tested
6:46 okay so whatever items you are
6:48 mentioning here at the test item level
6:51 then you elaborate what all features
6:52 within those items
6:54 or high level modules that you have
6:56 mentioned here in the test items
6:59 need to be tested here right so those
7:01 all details will go into features to be
7:03 tested then features not to be tested
7:05 is also very important because you need
7:08 to upfront analyze what you are going to
7:09 test and what you are not
7:11 not going to test right so this gives
7:13 you a clarity that
7:16 when you are starting to execution phase
7:17 then you know what you are going to
7:19 execute and what is basically required
7:20 as part of the
7:23 test execution right so you mentioned
7:25 whatever features need to be tested in
7:26 the features to be tested features not
7:28 to be tested in the features not to be
7:32 tested section then the approach is another
7:33 another
7:34 very important section and you will
7:36 spend a lot of time on
7:39 approach because approach changes
7:41 based on the type of you know
7:42 application or
7:44 project that you're working in right so
7:46 for example you are testing a banking
7:48 application the approach will be different
7:49 different
7:51 and if you are testing an e-commerce
7:53 application approach will be different
7:53 and in
7:56 approach what mainly goes is how you are
7:57 going to
7:59 test a particular application what all
8:01 interfaces are there
8:03 what techniques you are going to apply
8:06 what will be the test levels etc so all
8:07 those details
8:11 go into approach right so you have to
8:13 think about the particular you know
8:14 product or
8:16 application and then based on that
8:18 particular application or product you
8:20 define the approach
8:23 or test approach for that particular application
8:24 application
8:26 then you have item pass and fail
8:27 criteria so
8:29 when an item will be considered or the
8:32 or a particular module or you know
8:34 feature will be considered
8:37 as pass or fail say for example
8:40 i have a module or a feature which has
8:44 15 test cases and when all those 15 test
8:46 cases are executed there are two test
8:47 cases failing
8:51 which have low priority defects still
8:54 attached to it right or still open then
8:56 in the item pass and fail criteria
8:59 define where what are the criterias
9:01 which mark the item as pass or fail
9:03 so in the past criteria you can you know mention
9:04 mention
9:06 that and this is all you know this as
9:08 per discussion with the stakeholders or the
9:08 the
9:11 members of the team so in the item pass
9:13 criteria you can mention that
9:16 you know no severity one and two defects
9:19 open even if there are you know low
9:20 priority or
9:23 low severity defects still open if they
9:25 are accepted we can still
9:28 mark the item as pass right so these are
9:29 some of the
9:31 statements that need to go into item
9:33 pass and fail criteria
9:35 when we say item fail you can say if
9:36 there is any
9:39 you know severity one defect or severity
9:40 2 defect that
9:44 is you know identified for a particular
9:45 feature then that
9:49 is failed or that this case is failed so
9:52 any pass or fail criterias that can be defined
9:53 defined
9:56 need to go into item pass and fail criteria
9:57 criteria
9:58 then you have sub suspension and
10:01 resumption criteria so suspension as the
10:03 name suggests when will you suspend the
10:05 testing right so for example you got a
10:08 blocker defect and the testing cannot
10:09 progress further
10:12 or you got a defect which needs to be
10:14 fixed because unless and until that
10:16 defect is fixed
10:18 all the testing that is done in future
10:19 or further
10:21 it doesn't make any sense so in that
10:23 case you will suspend
10:25 the testing so any criterias that need
10:27 to be you know
10:30 identified and discussed with the team uh
10:30 uh
10:32 which will block the testing need to go
10:34 into the suspension section and
10:37 resumption is when you are going to
10:38 resume say for example testing got blocked
10:39 blocked
10:41 because of these and these defects once
10:43 those defects will be fixed
10:46 and verified successfully we will resume
10:49 our testing as per plan right so all
10:50 those things
10:52 will go into suspension and resumption criteria
10:53 criteria
10:56 okay so these are the eight sections now
10:57 coming to the ninth one so this is test
10:59 deliverable so what
11:03 you will deliver as part of the testing
11:05 so you'll deliver test cases scripts plan
11:06 plan
11:08 um if there are any automation scripts
11:09 that you are doing
11:12 all those deliverables whatever
11:14 deliverable has been agreed
11:17 you deliver or you mention that as the test
11:17 test
11:20 deliverables okay then you have
11:24 the testing tasks what all tasks will be
11:26 required to perform all the activities so
11:28 so
11:31 what all testing tasks will be involved
11:35 in the overall testing life cycle
11:37 then in the environmental needs what is
11:39 the environment so
11:42 you know windows server is required you
11:43 need to install something what
11:46 software version what hardware version
11:48 how many os is required
11:50 if there is any tool specific a specific
11:52 tool required any automation tool
11:54 required what test management
11:57 you know tools so any any specific you
11:58 know test environment
12:02 related needs that need to be
12:04 available before you can actually start
12:06 you know testing needs to go into
12:09 environmental needs section then in the
12:10 responsibility section
12:12 who is responsible for what within the
12:15 team right so what test manager will do
12:16 what test lead will do
12:19 what a person within a particular
12:21 testing team say for example i am the
12:24 you know api tester or person who
12:27 has expertise in the api testing so i'll
12:30 be focusing more on the api
12:32 related story so any responsibilities or
12:34 specific responsibilities that need to
12:36 be defined
12:38 will go into the responsibility section
12:40 so test manager
12:42 test lead any team member what all
12:44 responsibilities are there
12:46 for each of the team member will go into
12:48 the responsibilities section
12:50 then if there are any staffing and
12:52 training needs required then you will basically
12:53 basically
12:55 mention that into the staffing and
12:57 training needs so how many people are
12:59 required to basically
13:01 achieve this particular project or
13:02 finish the testing
13:04 if there are any training needs for
13:06 example i am going to
13:08 use the new tool or new test management
13:10 tool for which
13:13 the team is not a team is fairly new for it
13:14 it
13:17 then we'll have a brief training session
13:17 for it
13:19 if there is any automation tool that is
13:21 required we can have training session
13:23 for that how many people will be
13:24 required to
13:26 perform that overall testing will go
13:28 into the staffing section
13:30 schedule is basically you know like the
13:31 timeline of
13:33 the overall test activity will go into
13:35 the schedule
13:37 then any risk and contingencies will go
13:39 into the risk and contingency
13:41 section in risks you mentioned say for example
13:42 example
13:45 what will happen if something goes wrong
13:46 wrong within
13:49 the test life cycle so for example you
13:50 know team members get sick
13:53 is there any contingency plan for that if
13:54 if
13:56 there is a blocker defect that has you know
13:57 know
14:00 stopped or you know suspended our
14:01 testing for
14:04 three days what all risks
14:06 are possible in the overall testing life
14:08 cycle will go into the risk and contingency
14:09 contingency
14:12 section right and then approvals will have
14:13 have
14:16 the name of the approvers who will
14:19 be approving this overall plan
14:23 okay so project manager test manager
14:26 um mostly this plan test plan is you
14:27 know written by either by test manager
14:29 or test lead
14:32 with the input from the overall team if
14:32 the team is there
14:35 otherwise from the experience of that
14:36 you know a particular person who server
14:39 is test lead and test manager
14:41 and then they will be providing the
14:43 details of all the people who are going
14:44 to approve
14:45 this plan right so whatever has been
14:47 documented in this plan
14:50 like this is what we are going to test
14:52 these are the features this is
14:54 how we are going to test who is going to test
14:55 test
14:58 this is the schedule how it looks like
14:59 and these are the dates when we'll finish
15:00 finish
15:03 our work right so this is
15:06 these are the key sections or ski 16
15:09 16 sections as per ieee
15:13 you know test plan template which will
15:16 be found in any test plan that you pick
15:18 so it will be you know it doesn't matter
15:20 which organization you go
15:23 you will find these sections
15:26 um in every place
15:28 there might be you know a difference in
15:30 you know naming convention or
15:32 the terminology that they use but these
15:34 sections will definitely be there
15:37 along with some more sections if it is
15:39 relevant for that particular project or
15:40 specific to that project
15:44 right so these are some of the you know
15:46 uh these are you know key sections of a
15:47 test plan that
15:50 will be there and should be there in any
15:51 of the test plan
15:54 and this plan once you write this
15:58 it will guide your thought process how
16:00 you are going to approach the testing
16:01 for a particular project
16:06 or application right same analogy as
16:08 building the house if you do not have
16:09 the plan
16:11 and you haven't thought about how you
16:13 are going to perform plumbing or
16:14 electrical work
16:18 prior to building the rooms and roofs
16:21 then you know um it in in
16:23 software testing term it's similar so
16:25 you have to you know
16:28 give a thought up front to basically
16:29 how you are going to lay your
16:31 foundations how you are going to approach
16:32 approach
16:34 testing to that particular application
16:36 what all is required how many people are required
16:38 required
16:40 what will be the timeline to deliver
16:41 that particular
16:42 you know testing for that particular
16:44 application or software
16:48 okay so that is all about you know
16:51 a test plan and what exactly is a test plan
16:52 plan
16:54 now going through you know any of the
16:56 you know google templates you can find
16:58 there are few things here and there
17:01 are you know few sections renamed differently
17:02 differently
17:04 that doesn't make difference these are
17:05 the key sections
17:07 that you can correlate with any of the
17:09 plans test plans available out there and
17:11 you can also
17:13 you know you you might also find some
17:15 new sections so you you
17:17 if new sections are available there they
17:20 might be specific to the projects
17:23 okay so this is all about
17:25 the test plan why you need a test plan
17:27 and how it helps you to basically
17:30 perform the software testing with proper
17:32 approach and
17:35 confidence now this is this was more relevant
17:36 relevant
17:39 with the waterfall approach and
17:43 still even with agile approach these
17:46 you know or quick test planning is done
17:48 and required
17:51 but it is not as detailed or
17:54 it it is not a phased approach anymore
17:55 in agile approach so
17:57 because agile is you know sprint by
17:59 sprint work which is too weak so you
18:01 don't write a test plan in each and
18:03 every sprint or you do not write the
18:04 detailed test plan
18:06 in each every every sprint you write a
18:08 plan for
18:09 you know a particular release for
18:11 example six months or so
18:14 and then in each and every sprint what
18:15 you do is you basically
18:19 write a quick one pager of the approach
18:21 or the test approach that you are going
18:23 to apply
18:26 for that particular sprint to test those stories
18:26 stories
18:29 right because you don't want to you know waste
18:30 waste
18:32 too much of your time just documenting
18:33 the stuff this
18:36 plan or the detailed test plan is required
18:37 required
18:39 for the upfront analysis or basically for
18:40 for
18:42 the longer period of duration so this
18:44 was very popular in the waterfall or v
18:47 model approach but in agile you still
18:48 write it but you
18:51 write it for six months or you know for
18:53 at least you know like six months
18:55 release which might have you know like
18:57 20 sprints within
18:59 it okay so that's all for this tutorial
19:01 on test plan i hope i was able to clarify
19:02 clarify
19:05 um the test plan and this
19:08 is helpful for you for your actual
19:10 project work and
19:13 for the interviews as well so
19:16 thank you very much for watching please
19:17 do share and subscribe