What
is difference between Test plan and Test strategy?
Test plan is a term and a
deliverable. Test plan is a document that lists all the activities in a QA
project, schedules them, defines the scope of the project, roles &
responsibilities, risks, entry & exit criteria, test objective and anything
else that you can think of. Test plan is as I like to call a ‘super document’
that lists everything there is to know and need.
This is also a deliverable and also
a document at that. Test strategy outlines the testing approach and everything
else that surrounds it. It is different from the test plan, in the sense that a
Test strategy is only a sub set of the test plan. It is a hard core test
document that is to an extent generic and static. There is also an argument
about at what levels test strategy or plan is used- but I really do not see any
discerning difference.
Example:
Test plan gives the information of who is going to test at
what time. For example: Module 1 is going to be tested by “X tester”. If tester
Y replaces X for some reason, the test plan has to be updated.
On the contrary, test strategy is
going to have details like – “Individual modules are to be tested by test team
members. “ In this case, it does not matter who is testing it- so it’s generic
and the change in the team member does not have to be updated, keeping it
static.
What
is difference between Test case and Test script?
In my opinion, these two terms can
be used interchangeable. Yes, I am saying there is no difference. Test case is
a sequence of steps that help us perform a certain test on the application.
Test script is the same thing.
Now, there is one school of thought
that test case is a term used in the manual testing environment and test script
is used in an automation environment. This is partly true, because of the
comfort level of the testers in the respective fields and also on how the tools
refer to the tests (some call test scripts and some call them test cases). So
in effect, test script and test case both are steps to be performed on an
application to validate its functionality whether manually or through
automation.
What
is difference between Test scenario and Test condition?
This is a one line pointer that
testers create as an initial, transitional step into the test design phase.
This is mostly a one line definition of “What” we are going to test with
respect to a certain feature. Usually, test scenarios are an input for the
creation of test cases. In agile projects, Test
Scenarios are the only test design outputs and no test cases are written
following these. A test scenario might result in multiple tests.
Example:
·
Validate
if a new country can be added by the Admin
·
Validate
if an existing country can be deleted by the admin
·
Validate
if an existing country can be updated
Test conditions on the other hand are more
specific. It can be roughly defined as the aim/goal of a certain test.
Example:
In the
above example, if we were to test the scenario 1, we can test the following
conditions:
·
Enter the
country name as “India”(valid )and check for the addition of the country
·
Enter a
blank and check if the country gets added.
In each
case, the specific data is described and the goal of the test is much more
precise.
What is difference between Test
procedure and Test suite?
Test procedure is a combination of test cases
based on a certain logical reason, like executing an end-to end situation or
something to that effect. The order in which the test cases are to be run is
fixed.
Example:
If i was
to test the sending of an email from Gmail.com, the order of test cases that I
would combine to form a test procedure would be:
·
The test
to check the login
·
The test
to compose email
·
The test
to attach one/more attachments
·
Formatting
the email in the required way by using various options
·
Adding
contacts or email addresses to the To, BCC, CC fields
·
Sending
email and making sure it is showing in the “Sent Mail” section
All the
test cases above are grouped to achieve a certain target at the end of them.
Also, test procedures have a few test cases combined at any point of time.
Test Suite, on the other hand, is the list of
all the test cases that have to be executed as a part of a test cycle or a
regression phase etc. There is no logical grouping based on functionality. The
order in which the constituent test cases get executed may or may not be
important.
Example:
If an
application’s current version is 2.0. The previous version 1.0 might have had
1000 test cases to test it entirely. For version 2 there is 500 test cases to
just test the new functionality that is added in the new version. So, the
current test suite would be 1000+500 test cases that include both regression
and the new functionality. The suite is a combination too, but we are not
trying to achieve a target function. Test suites can contain 100s or even 1000s
of test cases
No comments:
Post a Comment