A list of mostly asked software testing interview questions or QTP interview questions and answers are given below.
1) What is PDCA cycle and where testing fits in?
There are four steps in a normal software development process. In short, these steps are referred as PDCA.
PDCA stands for Plan, Do, Check, Act.
- Plan: It defines the goal and the plan for achieving that goal.
- Do/ Execute: It depends on the plan strategy decided during the plan stage. It is done according to this phase.
- Check: This is the testing part of the software development phase. It is used to ensure that we are moving according to plan and getting the desired result.
- Act: This step is used to solve if there any issue is occurred during the check cycle. It takes appropriate action accordingly and revises the plan again.
The developers do the "planning and building" of the project while testers do the "check" part of the project.
2) What is the difference among white box, black box and gray box testing?
Black box Testing: The strategy of black box testing is based on requirements and specification. It requires no need of knowledge of internal path, structure or implementation of the software being tested.
White box Testing: White box testing is based on internal paths, code structure, and implementation of the software being tested. It requires a full and detail programming skill.
Gray box Testing: This is another type of testing in which we look into the box which is being tested, It is done only to understand how it has been implemented. After that we close the box and use the black box testing.
3)What are the advantages of designing tests early in the life cycle?
Designing tests early in the life cycle prevent defects from being in the main code.
4) What are the types of defects?
There are three types of defects: Wrong, missing and extra.
Wrong: These defects are occurred due to requirements have been implemented incorrectly.
Missing: It is used to specify the missing things i.e. a specification was not implemented, or the requirement of the customer was not noted properly.
Extra: This is an extra facility incorporated into the product that was not given by the end customer. It is always a variance from the specification but may be an attribute that was desired by the customer. However, it is considered as a defect because the variance from the user requirements.
5) What is exploratory testing?
Simultaneous test design and execution against an application is called exploratory testing. In this testing the tester uses his domain knowledge and testing experience to predict where and under what conditions the system might behave unexpectedly.
6) When should exploratory testing be performed?
Exploratory testing is performed as a final check before the software is released. It is a complimentary activity to automated regression testing.
7) What are the advantages of designing tests early in the life cycle?
It helps you to prevent defects into the code.
8) Tell me about the risk based testing.
Risk based testing is a testing strategy that is based on prioritizing tests by risks. It is based on a detailed risk analysis approach which categorizes the risks by their priority. Highest priority risks are resolved first.
9) What is acceptance testing?
Acceptance testing is done to enable a user/customer to determine whether to accept a software product. It also validates whether the software follows a set of agreed acceptance criteria.
10) What is accessibility testing?
Accessibility testing is used to verify whether a software product is accessible to the people having disabilities (deaf, blind, mentally disabled etc.).
11) What is Adhoc testing?
Adhoc testing is a testing phase where the tester tries to 'break' the system by randomly trying the system's functionality.
12) What is Agile testing?
Agile testing is a testing practice that uses agile methodologies i.e. follow test-first design paradigm.
13) What is API (Application Programming Interface)?
Application Programming Interface is 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.
14) What do you mean by automated testing?
Testing by using software tools which execute test without manual intervention is known as automated testing. Automated testing can be used in GUI, performance, API etc.
15) What is Bottom up testing?
The Bottom up testing is a testing approach which follows integration testing where the lowest level components are tested first, after that the higher level components are tested. The process is repeated until the testing of top level component.
16) What is Baseline Testing?
In Baseline testing, a set of tests is run to capture performance information. Baseline testing improves performance and capabilities of the application by using the information collected and make the changes in the application. Baseline compares present performance of application with its own previous performance.
17) What is Benchmark Testing?
Benchmarking testing is the process of comparing application performance with respect to industry standard given by some other organization.
It is a standard testing which specifies where our application stands with respect to others.
18) Which types are testing are important for web testing?
There are two types of testing which are very important for web testing:
- Performance testing
- Security testing
19) What is the difference between web application and desktop application in the scenario of testing?
The difference a web application and desktop application is that a web application is open to the world with potentially many users accessing the application simultaneously at various times, so load testing and stress testing are important. Web applications are also prone to all forms of attacks, mostly DDOS, so security testing is also very important in the case of web applications.
20) What is the difference between verification and validation?
Difference between verification and validation:
Verification
Verification is Static Testing.
Verification occurs before Validation.
Verification evaluates plans, document, requirements and specification.
In verification inputs are checklist, issues list, walkthroughs and inspection.
Verification output is set of document, plans, specification and requirement documents.
Validation
Validation is Dynamic Testing.
Validation occurs after Verification.
Validation evaluates products.
In validation testing, actual product is tested.
In Validation actual product is output.
21) What is the difference between Retesting and Regression Testing?
A list of differences between Retesting and Regression Testing:
- Retesting is done to verify defect in previous and fix them to work correctly, on the other hand, regression testing is performed to check if the defect fix have not impacted other functionality that was working fine before doing changes in the code.
- Retesting is specific and it is performed on the bug which is fixed where as in regression is not be always specific to any defect fix it is performed when any bug is fixed.
- Retesting concern with executing those test cases that are failed earlier where as regression concern with executing test cases that was passed in earlier builds.
- Retesting has higher priority over regression testing.
22) What is the difference between preventative and reactive approaches to testing?
Preventative tests are designed earlier and reactive tests are designed after the software has been produced.
23) What is the purpose of exit criteria?
The exit criteria is used to define the completion of the test level.
24) Why the decision table testing is used?
A decision table consists of inputs in a column with the outputs in the same column but below the inputs.
The decision table testing is used for testing systems for which the specification takes the form of rules or cause-effect combination. The reminders you get in the table explore combinations of inputs to define the output produced.
25) What is alpha and beta testing?
These are the key differences between alpha and beta testing:
No. Alpha Testing
1) It is always done by developers at the software development site.
2) It is also performed by Independent testing team.
3) It is not open to the market and public.
4) It is always performed in virtual environment.
5) It is used for software applications and projects.
6) It follows the category of both white box testing and Black Box Testing.
7) It is not known by any other name.
Beta Testing
1) It is always performed by customers at their own site.
2) It is not be performed by Independent testing team.
3) It is open to the market and public.
4) It is always performed in real time environment.
5) It is used for software products.
6) It is only the kind of Black Box Testing.
7) It is also known as field testing.
26) What is Random/Monkey Testing?
Random testing is also known as monkey testing. In this testing, data is generated randomly often using a tool. The data is generated either using a tool or some automated mechanism.
Random testing has some limitations:
- Most of the random tests are redundant and unrealistic.
- It needs more time to analyze results.
- It is not possible to recreate the test if you do not record what data was used for testing.
27) What is the negative and positive testing?
Negative Testing: When you put an invalid input and receive errors is known as negative testing.
Positive Testing: When you put in the valid input and expect some actions that are completed according the specification is known as positive testing.
28) What is the benefit of test independence?
Test independence is very useful because it avoids author bias in defining effective tests.
29) What is boundary value analysis / testing?
In boundary value analysis/testing, we only test the exact boundaries rather than hitting in the middle. For example: If there is a bank application where you can withdraw a maximum of 25000 and a minimum of 100. So in boundary value testing we only test above the max and below the max. This covers all scenarios.
The following figure shows the boundary value testing for the above discussed bank application.TC1 and TC2 are sufficient to test all conditions for the bank. TC3 and TC4 are just duplicate/redundant test cases which really do not add any value to the testing. So by applying proper boundary value fundamentals we can avoid duplicate test cases, which do not add value to the testing.
30) How would you test the login feature of a web application?
There are many ways to test the login feature of a web application:
- Sign in with valid login, Close browser and reopen and see whether you are still logged in or not.
- Sign in, then logout and then go back to the login page to see if you are truly logged out.
- Login, then go back to the same page, do you see the login screen again?
- Session management is important. You must focus on how do we keep track of logged in users, is it via cookies or web sessions?
- Sign in from one browser, open another browser to see if you need to sign in again?
- Login, change password, and then logout, then see if you can login again with the old password.
No comments:
Post a Comment