Software Testing is the process of executing a program with the intent of
finding bugs. (or) Testing is a process of exercising or evaluating a
system component; by manual or automated means to verify that it satisfies a
specified requirement.
What is Acceptance Testing?
Testing conducted to enable a user/customer to determine whether to accept a software product.Normally performed to validate the software meets a set of agreed acceptance criteria.
What is Accessibility Testing?
Verifying a product is accessible to the people having disabilities (deaf, blind, mentally disabled etc.).
What is Adhoc Testing?
A testing phase where the tester tries to ‘break’ the system by randomly trying the system’s functionality. Can include negative testing as well. See also Monkey Testing.
What is Agile Testing?
Testing practice for projects using agile methodologies, treating development as the customer of testing and emphasizing a test-first design paradigm. See also Test Driven Development.
What is Application Programming Interface (API)?
A formalized set of software calls and routines that can be referenced by an application program in order to access supporting system or network services.
What is Automated Testing?
Testing employing software tools which execute tests without manual intervention. Can be applied in GUI, performance, API, etc. testing. The use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions.
What is Beta Testing?
Testing of a release of a software product conducted by customers.
What is Black Box Testing?
Testing based on an analysis of the specification of a piece of software without reference to its internal workings. The goal is to test how well the component conforms to the published requirements for the component.
What is Bottom Up Testing?
An approach to integration testing where the lowest level components are tested first, then used to facilitate the testing of higher level components. The process is repeated until the component at the top of the hierarchy is tested.
What is component Testing?
Testing whether software is compatible with other elements of the system with which it should operate. eg: Browsers ; OS .
What is Regression testing ?
When a bug is fixed by the development team than testing the other features of the applications which might be affected due to the bug fix is known as regression testing.
Regression testing is always done to verify that modified code does not break the existing functionality of the application and works within the requirements of the system.
Regression Testing Example - Real and Practical
Example of regression testing with its process is explained below:
For Example there are three Modules in the Project named Admin Module, Personal Information, and Employment Module and suppose bug occurs in the Admin Module like on Admin Module existing User is not able to login with valid login credentials so this is the bug.
Now Testing team sends the above - mentioned Bug to the Development team to fix it and when development team fixes the Bug and hand over to Testing team than testing team checks that fixed bug does not affect the remaining functionality of the other modules (Admin, PI, Employment) and also the functionality of the same module (Admin) so this is known as the process of regression testing.
What Is Sanity Testing Explain It with Example?
Sanity Testing is the subset of Regression Testing and it is performed when we do not have enough time for doing testing.
Sanity testing is the surface level testing where QA engineer verifies that all the menus, functions, commands available in the product and project are working fine.
Sanity Testing Example
For Example in a project there are five modules like login page, home page, user detail page, new user creation, and task creation etc. So we have the bug in login page like on login page username field accepts the less than six alpha-numeric characters which are against the requirements as in requirements it is specified that username should not be below than six characters but as username accepts the less than six characters it is the bug.
So now the bug is reported by the testing team to the developer team to fix it. When the developing team fixes the bug and passed it to testing team than the testing team checks the other modules of the application means checks that fix bug does not affect the functionality of the other modules but keep one point always in mind that testing team only checks the extreme functionality of the modules, do not go deep to test the details because of the short time so this is the sanity testing.
Sanity testing is performed after the build has clear the Smoke test and has been accepted by QA team for further testing, sanity testing checks the major functionality with finer details.
When we Perform Sanity Testing?
Sanity testing is performed when development team needs to know quick state of the product after they have done changes in the code or there is some controlled code change in a feature to fix any critical issue, and stringent release time-frame does not allow complete regression testing.
Explain Smoke Testing Example in Easy and Simple Way?
Smoke Testing Example is always confused with Sanity Testing Example but in reality both the testing examples are different with each other. Here I am writing Smoke Testing Example in such a way that your confusion can definitely be removed by seen the example.
Now before us proceeding towards Smoke Testing Example it is very important for us to first take a warm look at Smoke Testing.
Smoke Testing – Brief Look
Smoke Testing is considered as the surface level testing which is always used to validate that build provided by development to QA team is ready to accept for further testing. In Smoke Testing we test the major point’s means major functionality of the application and it is also known by the name Build Acceptance Testing (BAT).
Smoke Testing Example – Real One
Smoke Testing Example is given below which is totally based on Real Practical Scenario means which totally reflect your software testing process in a company environment.
For example we are working in a small project named Employee Management System and in this project there are four modules like New Employee Module, Existing Employee Module, Admin Module, User Module etc. So firstly in this four modules development team performs the Smoke Testing by executing all the major functionality of modules like New Employee is able to login or not and after login new employee can seen the record of the existing employee or not, and employee that is created can also be edited, deleted or not.
So in this way Smoke Testing is done by development team before releasing means submitting the build to the Software Testing team.
Now when the build is hand over means releasing to the testing team than the software testing team has to check whether to accept or reject the build by checking the major functionality of that build. So as you know we are taking the example Employee Management System, so our build is Employee Management System.
Now when the build (Employee Management System) is submitted means release to the testing team than the testing team has to check whether to accept the build (Employee Management System) or not by checking the major functionality of the build like employee is able to login or not and after login they can seen the existing employee record or not and after that logout easily or not. So this is the Smoke Testing done by Software Testers.
Define Verification And Validation ?
Verification
Validation :
Bug is a mismatch between expected result and actual result. Hope as a tester you know regarding expected result and actual result.
As a tester whether you are working in small companies or in top MNC, when you detect the bug you have to report it.
But the pattern for reporting the bug differs from companies to companies like in top MNC’s tester’s always reporting the bug through bug reporting tools.
So various Open Source bug reporting tool available today but popular one is Bugzilla and Mantis, but Mantis is easier and user friendly than Bugzilla.
As people always knows that there are 1-2 testers in small companies so in these companies testers never report the bug through bug reporting tools. Testers just orally talk it to the development team that in this module we catch the bug so fixed it.
And similar thing happens it to the developers squad when they fixed the bug they just call the tester to his and her seat and said that check whether bug is fixed or not.
But you know this is not the appropriate or right way to communicate because we are working in a professional environment so we have to follow little documentation also.
The basic goal of the software
development process is to produce software that has no errors. In an effort to
detect errors, each phase ends with V & V activity such as Technical
review. But most of the V & V
(review) is based on human evaluation and can't detect all errors.
As testing is the last phase in the SDLC (Software Development Life
Cycle) before the final software is delivered, it has the enormous
responsibility of detecting any type of errors
Two basic approaches for software
testing:
1.White Box Testing or Structural testing or Glass Box
testing.
2. Black Box Testing or Functional testing
Combination of white box and
block box testing is called as 'Gray box testing'
What is Acceptance Testing?
Testing conducted to enable a user/customer to determine whether to accept a software product.Normally performed to validate the software meets a set of agreed acceptance criteria.
What is Accessibility Testing?
Verifying a product is accessible to the people having disabilities (deaf, blind, mentally disabled etc.).
What is Adhoc Testing?
A testing phase where the tester tries to ‘break’ the system by randomly trying the system’s functionality. Can include negative testing as well. See also Monkey Testing.
What is Agile Testing?
Testing practice for projects using agile methodologies, treating development as the customer of testing and emphasizing a test-first design paradigm. See also Test Driven Development.
What is Application Programming Interface (API)?
A formalized set of software calls and routines that can be referenced by an application program in order to access supporting system or network services.
What is Automated Testing?
Testing employing software tools which execute tests without manual intervention. Can be applied in GUI, performance, API, etc. testing. The use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions.
What is Beta Testing?
Testing of a release of a software product conducted by customers.
What is Black Box Testing?
Testing based on an analysis of the specification of a piece of software without reference to its internal workings. The goal is to test how well the component conforms to the published requirements for the component.
What is Bottom Up Testing?
An approach to integration testing where the lowest level components are tested first, then used to facilitate the testing of higher level components. The process is repeated until the component at the top of the hierarchy is tested.
What is component Testing?
Testing whether software is compatible with other elements of the system with which it should operate. eg: Browsers ; OS .
What is Regression testing ?
When a bug is fixed by the development team than testing the other features of the applications which might be affected due to the bug fix is known as regression testing.
Regression testing is always done to verify that modified code does not break the existing functionality of the application and works within the requirements of the system.
Regression Testing Example - Real and Practical
Example of regression testing with its process is explained below:
For Example there are three Modules in the Project named Admin Module, Personal Information, and Employment Module and suppose bug occurs in the Admin Module like on Admin Module existing User is not able to login with valid login credentials so this is the bug.
Now Testing team sends the above - mentioned Bug to the Development team to fix it and when development team fixes the Bug and hand over to Testing team than testing team checks that fixed bug does not affect the remaining functionality of the other modules (Admin, PI, Employment) and also the functionality of the same module (Admin) so this is known as the process of regression testing.
What Is Sanity Testing Explain It with Example?
Sanity Testing is the subset of Regression Testing and it is performed when we do not have enough time for doing testing.
Sanity testing is the surface level testing where QA engineer verifies that all the menus, functions, commands available in the product and project are working fine.
Sanity Testing Example
For Example in a project there are five modules like login page, home page, user detail page, new user creation, and task creation etc. So we have the bug in login page like on login page username field accepts the less than six alpha-numeric characters which are against the requirements as in requirements it is specified that username should not be below than six characters but as username accepts the less than six characters it is the bug.
So now the bug is reported by the testing team to the developer team to fix it. When the developing team fixes the bug and passed it to testing team than the testing team checks the other modules of the application means checks that fix bug does not affect the functionality of the other modules but keep one point always in mind that testing team only checks the extreme functionality of the modules, do not go deep to test the details because of the short time so this is the sanity testing.
Sanity testing is performed after the build has clear the Smoke test and has been accepted by QA team for further testing, sanity testing checks the major functionality with finer details.
When we Perform Sanity Testing?
Sanity testing is performed when development team needs to know quick state of the product after they have done changes in the code or there is some controlled code change in a feature to fix any critical issue, and stringent release time-frame does not allow complete regression testing.
Explain Smoke Testing Example in Easy and Simple Way?
Smoke Testing Example is always confused with Sanity Testing Example but in reality both the testing examples are different with each other. Here I am writing Smoke Testing Example in such a way that your confusion can definitely be removed by seen the example.
Now before us proceeding towards Smoke Testing Example it is very important for us to first take a warm look at Smoke Testing.
Smoke Testing – Brief Look
Smoke Testing is considered as the surface level testing which is always used to validate that build provided by development to QA team is ready to accept for further testing. In Smoke Testing we test the major point’s means major functionality of the application and it is also known by the name Build Acceptance Testing (BAT).
Smoke Testing Example – Real One
Smoke Testing Example is given below which is totally based on Real Practical Scenario means which totally reflect your software testing process in a company environment.
For example we are working in a small project named Employee Management System and in this project there are four modules like New Employee Module, Existing Employee Module, Admin Module, User Module etc. So firstly in this four modules development team performs the Smoke Testing by executing all the major functionality of modules like New Employee is able to login or not and after login new employee can seen the record of the existing employee or not, and employee that is created can also be edited, deleted or not.
So in this way Smoke Testing is done by development team before releasing means submitting the build to the Software Testing team.
Now when the build is hand over means releasing to the testing team than the software testing team has to check whether to accept or reject the build by checking the major functionality of that build. So as you know we are taking the example Employee Management System, so our build is Employee Management System.
Now when the build (Employee Management System) is submitted means release to the testing team than the testing team has to check whether to accept the build (Employee Management System) or not by checking the major functionality of the build like employee is able to login or not and after login they can seen the existing employee record or not and after that logout easily or not. So this is the Smoke Testing done by Software Testers.
Define Verification And Validation ?
Verification
- Verification is a static practice of verifying documents, design, code and program.
- It does not involve executing the code.
- It is human based checking of documents and files.
- Verification uses methods like inspections, reviews, walkthroughs, and Desk-checking etc.
- Verification is to check whether the software conforms to specifications.
- It can catch errors that validation cannot catch. It is low level exercise.
- Target is requirements specification, application and software architecture, high level, complete design, and database design etc.
- Verification is done by QA team to ensure that the software is as per the specifications in the SRS document.
- It generally comes first-done before validation.
- Validation is a dynamic mechanism of validating and testing the actual product.
- It always involves executing the code.
- It is computer based execution of program.
- Validation uses methods like black box (functional) testing, gray box testing, and white box (structural) testing etc.
- Validation is to check whether software meets the customer expectations and requirements.
- It can catch errors that verification cannot catch. It is High Level Exercise.
- Target is actual product-a unit, a module, a bent of integrated modules, and effective final product.
- Validation is carried out with the involvement of testing team.
- It generally follows after verification.
Bug is a mismatch between expected result and actual result. Hope as a tester you know regarding expected result and actual result.
As a tester whether you are working in small companies or in top MNC, when you detect the bug you have to report it.
But the pattern for reporting the bug differs from companies to companies like in top MNC’s tester’s always reporting the bug through bug reporting tools.
So various Open Source bug reporting tool available today but popular one is Bugzilla and Mantis, but Mantis is easier and user friendly than Bugzilla.
As people always knows that there are 1-2 testers in small companies so in these companies testers never report the bug through bug reporting tools. Testers just orally talk it to the development team that in this module we catch the bug so fixed it.
And similar thing happens it to the developers squad when they fixed the bug they just call the tester to his and her seat and said that check whether bug is fixed or not.
But you know this is not the appropriate or right way to communicate because we are working in a professional environment so we have to follow little documentation also.
No comments:
Post a Comment