Welcome To TestQSpider

It's Testing World.Lets Explore Your Life Here

Distinction between Smoke and Regression Testing - Simple

              Smoke testing
               Regression testing
1. Smoke testing is a surface level testing to verify/ensure that build provided/given by development team to QA team is ready to accept for further testing.
1. Regression testing is not considered as a surface level testing and it is performed/ executed by testers only.
2. Smoke testing is known as a quick-and-dirty test means that the major/crucial functions of a piece of software work/perform without bothering with finer details.
2. Regression testing is not known by the quick-and-dirty test and in this testing testers test the application with more details.
3. It is executed/ performed when testers have to accept a build for further testing.
3. It is executed/performed when tester's have enough time for testing.
4. Smoke testing may be conducted manually or by using automation tools.
4. Regression testing is also conducted manually or using automated tools.
5. Performing smoke testing will not enlarge the product cost and budget because it didn't requires more manpower and time.
5. Performing Regression testing definitely will enlarge the product cost and budget because it requires more manpower and time.
6. It is also called as BAT (Build Acceptance Test) or BVT (Build Verification Testing).
6. It is not known by any other name.
7. It is done by developers before the build is released or by testers before accepting a build for further testing.
7. It is usually done by testers only.
8. We use script for smoke testing.
8. We use script for regression testing.


Difference between Adhoc and Exploratory Testing

           Adhoc Testing
            Exploratory Testing
1. Adhoc Testing means learn the application than test it.
1. Exploratory Testing means test the application while learning.
2. In Exploratory Testing QA is always asked to test an application without any specific set of documents.
2. In Adhoc Testing QA is always asked to test an application with detailed set of documents.
3. In this Testing we always gather information regarding the software/application from complete possible sources and document and then test the application/software.
3. In this Testing we gather the information, and also document and test the application simultaneously.
4. In Adhoc Testing tester should have good knowledge about the application in order to test the software.
4. In Exploratory Testing tester should increases their knowledge by exploring the application/software.
5. In this testing testers have significant testing of the software before test it.
5. In this testing testers may be learning the software before testing it.
6. It is not considered as a type of any.
6. It is considered as a type of Adhoc Testing
7. It is not an approach to testing.
7. It is an approach, not a technique.


Before us proceeding towards the Difference between Functional and Non Functional Testing it is very important for us to first take a brief look at Functional and Non Functional Testing.

Functional and Non Functional Testing is what?

Functional testing is performed using the functional specifications provided by the client or you can say by using the design specifications like use cases provided by the design team.

In this, tester has to test the application to see that all requirements of the client which he has said in SRS and BRS have been incorporated or not.
Non Functional Testingis that which is always concerned with the client expectations like performance, load and stress issues and so on.

Distinction between Functional and Non Functional Testing

                  Functional Testing
               Non- Functional Testing
1. In functional Testing tester tests how well the system performs.
1. In Non-Functional Testing tester tests how well the system responds.
2. Functional Testing is based on client requirements.
2. Non- Functional Testing is based on client expectations.
3. Functional Testing means Testing the application against business requirements.
3. Non- Functional Testing means Testing the application against clients and performance requirements.
4. It is a part of System Testing.
4. It is also a part of System Testing
5. Functional Testing Validating the behavior of application.
5. Non- Functional Testing Validating the performance of application.
6. This Testing covers Unit Testing, Integration Testing, Smoke Testing, Sanity Testing, Regression Testing and so on.
6. This Testing covers Load/Performance Testing, Stress/Volume Testing, Security Testing, Installation Testing and so on.
7. It is always concentrating on customer requirements.
7. It is always concentrating on customer expectations.
8. Functional Testing means how is your system is doing.
8. Non- Functional Testing means how well your system is doing example usability, performance and stress testing.


Distinction between Sanity and Regression Testing

                Sanity Testing
             Regression Testing
1. Sanity testing is a surface level testing where QA engineer verifies that all the menus, functions and commands available/presented in the product are working fine.
1. Regression testing is not a surface level testing.
2. Sanity testing is considered as a subset of regression testing.
2. Regression testing is not considered as a subset of any.
3. This testing is performed/executed when testers have not much/enough time for doing testing.
3. This testing is performed/executed when tester�s have enough time for testing.
4. Sanity testing is usually conducted manually not by using any automation tools.
4. Regression testing may be conducted/consider manually or using automated tools.
5. Performing this type of testing will not enlarge the product/project cost and budget because it didn't require much manpower and time.
5. Performing this type of testing definitely will enlarge the product cost and budget because it requires more manpower and time.
6. Not complete test cases are executed/ performed in the product during sanity testing.
6. During this testing complete test cases are executed/ performed in the product.
7. During this testing tester test the application or product with finer details.
7. During this testing tester test the application or product with more details.
8. We do not use script for sanity testing.
8. We use script for regression testing.

Conclusion

At end we conclude that these are the quick and simple Differences between Sanity and Regression Testing in tabular form but the main difference is in its use. We use Regression Testing when we have enough time for Testing, and we use Sanity Testing when we do not have enough time for Testing.

But keep one thing in mind that purpose of both the Regression and Sanity Testing is same; the only difference is in its use. 
Random Testing is also confused with Monkey and GorillaTesting but it is obviously different from Monkey Testing and Gorilla Testing. Here I am writing the post on Random Testing which clears what a Random Testing is and how it is different from Monkey and Gorilla Testing.

Random Testing � Complete Guidance

Random Testing is a black box test design technique where test cases are always selected randomly means by using an algorithm named pseudo random generation, which is used to match an operational profile. This technique of Random Testing is always used for non functional testing attributes such as performance and reliability points.

Random Testing Approach and Method

As the name gives you the answer there is no specific approach to perform the Random Testing because it is an ad-hoc way of software testing. In Random Testing tester always picks some modules randomly to test by giving inputting random values.

Random Testing is a method which is always used to exercise a class. Random Testing is totally based on developing a randomly based test sequence that always tries the minimum number of operations usually to the behavior of the class.

Random Testing Example - Proper Guidance

Below is given the best example on Random Testing which clears more means what a Random Testing is all about.

For example you are testing a website which is full of images means website is totally based on images and there is less content on that. Now as you know it is time consuming to test all the images so you randomly select some images to test than it is Random Testing.

Suppose there is a page name Samsung Mobile and there are fifty images on it so it is almost impossible to test all these images manually but you test the images randomly to check whether they are displaying properly or not means there is no broken images on that page. You test the images randomly like firstly you test the first image than you leave the next two images than you test the 4th image and so on.

So in this way you perform the Random Testing by testing the images randomly means you do not test all the images instead you test it randomly.

What you say � Feedback Welcomed

This is all I know regarding Random Testing now what you say about this testing means how much you like the post and what suggestions you want to give because your feedback are always welcomed, so give your opinion and thoughts to help others regarding the very spectacular post of Random Testing
Endurance Testing is a type of Performance Testing which is usually used to determine how much a system can sustain the continuous expected load. During the period of Endurance Testing memory utilization is always monitored to detect any potential leaks.

In short we can say that judging/studying the memory leak of a server under the period of stability is known as Endurance Testing. Due to its judgment and study on memory leak that is the reason why Endurance Testing is also known by the name Soak Testing.

As you know in Endurance Testing memory utilization is monitored so it very important for us to know about memory leak means what it is all about.

When memory allocated to objects are not being freed by the system/application than definitely the memory leak occurs.

Endurance Testing Example -
Below is given the real time example of Endurance Testing and hope after seen these real time example your knowledge on Endurance Testing should definitely be increased.
For example in the closing days of bank we have continues load on that days so we always test the banking application by keeping in mind the Endurance Testing.
So in Banking Application we always test how much a system/application can sustain the continuous expected load during the closing days of Bank, so it is Endurance Testing Example done on real time Banking Environment.

Endurance Testing Definition

Below is given the definition of Endurance testing which is only a one line definition but clears you a most.
Endurance is an ability to handle continuous load in a difficult/unpleasant situation over some long period of duration/time.

Endurance Testing Meaning

You can estimate what an Endurance Testing is by discovering the meaning of word "Endurance". Endurance means capacity/fitness so in other words you can say Endurance Testing means Capacity Testing. By Capacity Testing we mean how much a system has its capacity by handling the load for continuous period of time.

Note

Please note that Endurance Testing applies a huge but natural load arrangement of transactions to the system/application for a continuous period of time.

Conclusion


At end we conclude that Endurance Testing is also known as Longevity testing which is used in Load Testing that is the reason why it is considered as the type of Performance Testing. So after seen the post if you have any sort of issues related to the Endurance Testing than, discuss it here in the below comments section.
Integration Testing

When individual software modules are combined and tested as a group than it is Integration Testing and before software people doing integration testing a system must be unit tested before.

System Testing Definition

This definition of System Testing is given by "Hetzel" and according to him the mechanism of testing a completely integrated system to verify/ensure that it meets the defined means specified requirements is known as System Testing.
So outcome of author definition is that in system testing we test the complete system as a whole.

Difference between System Testing and Integration Testing in Tabular form

But apart from that before you take a look at differences first of all take a brief look at above than go for differences.

             System Testing
              Integration Testing
1. In system testing we test the complete system as a whole to check whether the system is properly working or not means as per the requirements or not.
1. In integration testing we test the modules to see whether they are integrating properly or not by combining the modules and tested as a group.
2. In system testing testers always have to concentrate on both functional and non functional testing like performance, load, stress, security, recovery testing and so on.
2. In integration testing testers have to concentrate on functional testing means main focus on how two modules are combined and tested as a group.
3. For performing this testing system must be integrated tested.
3. For performing this testing system must be unit tested before.
4. It starts from the requirements specifications.
4. It starts from the interface specification.
5. System Testing does not test the visibility of code.
5. Integration Testing test the visibility of the integration structure.
6. It does not require any frame means scaffolding.
6. It requires some frame means scaffolding.
7 In System Testing Tester pays attention to the system functionality.
7. In Integration Testing Tester pays attention to the integration among modules.
8. It pays attention to the system functionality.
8. It pays attention to the Integration among modules.
9. It is always only the kind of Black Box Testing.
9. It is a kind of both White Box Testing and Black Box Testing.

Note

In system testing we test the both functional as well as non functional testing of software testing and before performing System Testing system must be integrated tested before.