Welcome to the testing world in this session, I'll explain you smoke testing and sanity testing, that
is one of the most important topic.
If you're looking for a job as a software tester or if you're working as a software tester, because
this is the topic which will be asked in interviews as well as you will do these testing practically.
So I'll show you what is smoke testing, what is sanity testing and what is the difference between smoke
and sanity?
So let's start with smoke testing.
OK, let's take an example.
We are working in a team and we are getting build from the development site.
But whenever we are getting billed and we start testing on it, we saw there are some changes in the
build.
And because of that, most of the functionalities are not working.
Now we'll go back to the developer will report these issues.
They will correct it and again make it build.
But it is taking a lot of time because every time we go to build, many functionalities are not working.
And if they're not working, we cannot run our test kits because we will run our test cases only when
the functional functionalities are working.
So let's take example of this application.
Here we have a registration page and they ask you to test registration page so you can test this registration
with the multiple set of input data by putting the mandatory data by leaving the mandatory data.
But if I give you a bird where this registration is not opening, or maybe that is open, but that is
not working, if we enter the correct data, we click on it.
So it's not working, it's not working.
In any case, then there is no advantage of getting built because we cannot best any of the test kits
because that functionality is not working.
So here in that kind of scenario where we are not sure big would be stable or not, we have to perform
smoke testing.
So let's take this example this image whenever we are getting built.
First of all, we are doing smoke testing if smoke testing is filled.
We will check the build.
We will not go for actual testing.
So let's again come to this application.
And if I want to go for the testing of registration page, but before doing actual testing, we are
doing smoke testing in which we are just checking this registration functionality is working or not.
If it is not working, we will reject the build note that it is not stable.
Make it correct.
Only after that, I'll do my actual testing.
So here we can see we are testing a build to check whether the building is ready for the testing or
not.
So that is the aim of the smoke testing is to check whether a build is ready for the smoke, ready for
actual testing or not.
So here we are.
Going to test functionalities are working or not.
It is correctly working or not.
That will be covered in the actual testing.
But in smoke testing, we check whether functionalities are working.
Only after that, we will take this build or accept this build and do actual testing.
So as per definition of the smoke testing is to check whether the bird is ready for the testing or not.
Yes, we already covered this in this testing.
We try to cover all the major functionality of the application at upper level.
OK.
In this smoke testing, we are not going to do deep testing.
We are just testing all the functionalities at upper level.
Let's take an example of a G.M..
I wanted to smoke testing of the gym.
I got a bird and want to do smoke testing of the G.M. So what I do, I try to log in.
I tried to send one email.
I try to chat with someone else.
I try to check send items.
I'll try to make it draft.
So I test all major functionalities at upper level means I'm just checking that is working or not.
It could have many test cases for each functionality, but we are not running all the test cases.
We are just checking it's working or not.
If it is working, but it is past now, it will go to my testing team.
Testing team will perform actual testing, which will run hundreds of test kits.
So in this testing, we try to cover all the major functionalities of application at upper level.
Smoke testing is it scripted?
Means we already have test kits for this mock testing.
So for the application total, we have 500 test kits, but out of the 500, we pick only 22 SKUs, which
will check application functionalities.
Or I would say, major functionalities are working or not.
So we already have test.
Cases of smoke testing.
That's why we called smoke testing a scripted.
Now one question come who will do the smoke testing you?
You as a tester or your test lead or anyone else actually that will be done by the testing team only.
So let's take an example.
I'm a lead.
I'll pick one tester from the team and give the responsibility like you have to do smoke testing.
So every time a bird is coming first, that particular tester will do the smoke testing in which he
will check.
All major functionalities are working or not.
If it does not, he will reject the bird else.
He will accept the bill.
Now, the rest of the team will start doing its testing so I can see Smoke Tester will work over here
and complete the well will work over here.
So once the smoke testing is passed, only completed will work on a particular build.
This type of testing is mainly done when the initial builds because initial builds are a bit unstable,
so we want to check the stability of the build.
Only after that will do testing.
That is.
We do smoke testing with the initial build.
Now I'll come to the Senate digesting insanity testing.
We try to cover one or two functionality at deep level.
So let's take an example I have a build in which in one functionality developer me made changes, and
I just want to make sure after the changes, this particular module, particular functionality is working
correctly or not.
So I'll go with the sanity testing, insanity testing.
We try to cover one or two functionalities only, but deep level what detailed testing we can do, we
will do here in the test, in sanity testing.
Sanity testing is not scripted, it is it I just updated that.
It's a sanity testing is not scripted, not scripted means we are not having any test cases.
So let's take an example we are working on the G.M. There are some changes taking place in compose email
functionality.
I have given the task to my team only just compose email at deep level.
Deep level means whatever you can test, just tested in the particular functionality only.
But if you understand regression, it's all the same.
Yes, but integration, we are going for the complete application here.
Insanity, we are going for a particular module or particular functionality.
Also, integration, we are falling test cases, but sanity testing is not a scripted means.
We are not following any discuses.
This type of testing is mainly done when bills are stable.
So let's take an example.
I have 120 build and one point two zero build, so I know that that build is stable.
After the changes, there is a very less chance it will impact the other part.
So I just wanted to check only a particular module, and I want to check it quickly so I will not go
for the test cases.
I just give it like, okay, due to sanity.
Insanity will try to cover what a deep level will try to test this functionality at a deep level, but
I do not follow any test cases.
So here you can check verify this small section of the functionality is working or not after a make
or break fix.
So once it is passed now, my belt is passed to protesters to do complete detailed testing.
Now, what is the difference between the smoke and sanity?
So smoke testing aim is check, but it is ready for the testing or not.
Incentive to distinguish check functionality is stable after the changes or not, because here I am
taking example some changes taking place on a particular functionality and I want to check after the
changes.
Still, that functionality is up and running, so I want to check it in the detail level.
In smoke testing, we try to cover all the major functionalities, but upper level.
So we check all the functionalities are working or not.
But we are not going to the details of that here.
We will check only one or fewer functionalities, but in deep level, smoke is scripted means we have
the discuses sanity is not scripted.
We do not have the discs.
Normally we do smoke testing when Burt is unstable, so we will do smoke testing in that case.
Normally, we don't sanity when the bird is stable, only changes taking place in one or a few functionalities.
So here we have seen what is smoke testing, what is sanity testing?
You can take it as as a prerequisite before going for actual testing.
So if it is unstable, we can do smoke testing to check.
But it is ready for the testing or not if Bert is stable, but changes taking place in one module.
And I want to make sure that module is correctly working before rolling for the actual testing, actual
detailed testing.
We will do sensory testing.
That's all for this edition.
Thanks for watching this video.