Software testing is the most critical phase of the Software development life cycle. The software application which is developed has to be a quality deliverable to the client and should be error-free. Testing is a significant phase of SDLC. It needs a systematic approach and foolproof planning. The errors should be recorded and fixed, and testing cycles should be done multiple times by professional testers until the product is error-free. This article will give you a list of software testing interview questions or software engineer interview questions to help you to prepare for upcoming software testing interviews.
Top Software Testing Interview Questions
Here are some of the top Software Testing Interview questions:
Question: What is Software testing?
Answer: Software testing is done to check if the piece of software developed meets the client’s requirements and is error-free to produce quality software.
Question: What is Quality Assurance and Quality Control?
Answer: Quality Assurance is used in processes to prevent errors and to produce a software application which has assured quality and Quality Control is done on the product. It executes the code or program to find errors in software applications.
Question: What is verification in software testing?
Answer: Verification is the process to ensure that the software being developed meets the requirements. It involves Inspection, Reviews, walkthroughs, etc.
Question: What is validation in software testing?
Answer: Software testing of the product is validation, it validates that the product is error-free and meets the client’s requirements.
Question: What is static testing?
Answer: Static testing involves reviewing the documents in the early stage of SDLC (Software Development Life Cycle).
Question: What is dynamic testing?
Answer: Dynamic testing is done during the execution of code to check if the output matches the expected outcome.
Question: What is white box testing?
Answer: White box testing is also called glass box testing or clear box testing or structural testing. In this, while creating the test cases, the internal code perspective is taken. This is usually done at the unit level.
Question: What is black box testing?
Answer: This is a testing method in which testers do not look at the internal code structure. It can be done at unit level, integration level, system-level, or acceptance testing.
Question: What is grey box testing?
Answer: This is a combination of white and black testing. In this testing, the tester needs to have design documents to create test cases.
Question: What is Positive testing?
Answer: Positive testing is used to test what the system is supposed to do i.e whether it is meeting the requirements or not.
Question: What is Negative testing?
Answer: Negative testing is used to test what the system is not supposed to do i.e finding errors in the software.
Question: What is the test strategy?
Answer: Test strategy is a high-level document prepared by the project manager at the start of the project based on business requirement specifications. It has the approach to be used for testing and meeting testing goals. This document is later used as one of the base documents to prepare test cases etc.
Question: What is Test Plan and what are its contents?
Answer: Test Plan is prepared by the Test Manager to list out the activities to be carried out on software while testing to deliver an error-free product. It is based on Product description, use cases, and SRS.
Contents of test Plan are:
- Test Plan Identifier
- Test items
- Software risks
- Features to be tested
- Features not be tested – out of scope
- Items pass/fail criteria
- Suspension criteria and resolution requirements
- Test deliverables
- Environmental needs
- Training needs
- Resources required
- Risks and contingencies
Question: What is the difference between Test Strategy and Test Plan?
Answer: Test Strategy is a static document prepared at Organization level with the base as Business requirement specification. In contrast, Test Plan is a dynamic document that should always be up to date and is ready at the Project level with the base as Use cases, SRS, and Product description.
Question: What is Test Suite?
Answer: Test Suite is a collection of test cases that are used to test the software application.
Question: What is a Test Scenario?
Answer: Test Scenario is like a high-level test case. Does it decide what is to be tested?
Question: What is a Test case?
Answer: The test case defines how to test the functionality. It has positive and negative executable steps of a test scenario.
Eg. Test scenario: Verify the login functionality
- Test case 1: Enter a valid username and valid password (positive step)
- Test case 2: Enter a valid username and invalid password (Negative step)
- Testcase 3: Enter invalid username and valid password
- Testcase 4: Enter invalid username and invalid password
Question: What is testbed?
Answer: The testbed is the environment prepared for testing a software application. It has software, hardware, network configuration, the software application to be tested, and related software.
Question: What is the test data?
Answer: The data used by testers for executing test cases while testing is called test data. It is prepared manually ahead of testing or by certain tools.
Question: What is Test harness?
Answer: The test harness is the software and Tet data configured to test a piece of software under varying conditions to monitor the output with the expected outcome.
Question: What is Test closure?
Answer: Test closure is a note prepared by Testing team before ending testing which has a number of test cases tested, no. of test cases not tested., no. of errors found, no, of errors closed successfully, no. of errors not closed or fixed., no. of errors rejected, etc.
Question: What are the activities of Test closure in Software Testing?
- Completion of Testing: No. of Testcases tested, skipped, error found, fixed, rejected, etc. should be documented and informed to respective persons.
- Handing over of testbed elements to respective persons especially maintenance and support staff. Also, known errors should be communicated to them.
- Lessons learned while testing should be documented for future releases and projects and learning passed on to respective persons.
- Archive the necessary results, logs, documents, and scripts, etc in CMS (Configuration management system).
Question: What is test coverage?
Answer: Test coverage is used to check the areas of software application covered by test cases so that if there are areas that are not included, test cases can be prepared for the same.
Question: What is code coverage?
Answer: Code coverage is used for unit testing only to see that test cases cover each part of code at least once. It is done by the testers or developers.
Question: What is unit testing?
Answer: Unit testing is done by the developer to check each unit or program code module or unit wise.
Question: What is Integration testing?
Answer: Integration testing is done to check the connection of two modules connected together and may have been developed by two different developers. The integrator does it. It is done in three ways Top-down, Bottom-up and Big Bang approach.
Question: What is system testing?
Answer: When the whole integrated application is ready, integration testing is done to test the interface between units and end to end testing is done.
Question: What is Top-down testing?
Answer: First, high-level modules are tested, and then low-level modules are tested, and then integrating the low-level modules with high-level modules testing is done from top to bottom. Stubs are used in place of missing components.
Question: What is Bottom-up testing?
Answer: Testing is done from bottom up. First, low-level modules are tested, and then high-level modules are tested, and then high-level modules are integrated with low-level modules, and then stubs are used for missing components/modules, and full testing is done.
Question: What is the Big Bang approach?
Answer: Full functionality testing after integrating the whole application i.e. all modules. Stubs and drivers are used for missing modules.
Question: What is functional testing?
Answer: Testing all the functions of the software application to see if they are giving the desired result is called functional testing.
Question: What is non-functional testing?
Answer: Doing load testing, performance testing, security, scalability, and compatibility testing comes under this. To see how fast the application responds to user input.
Question: What is acceptance testing?
Answer: After the whole application is ready, the testers and users do combined testing to see if the request is behaving as expected by the user so that the user can accept or reject the request. Alpha, beta, and gamma testing come under this.
Question: What is Alpha testing?
Answer: It is done by end-users along with developers and testers at the developer’s place.
Question: What is Beta testing
Answer: It is done by end-users at the client’s place to see if the application is working as expected.
Question: What is Gamma testing?
Answer: It is done before release at the client’s place.
Question: What is smoke testing?
Answer: It is done on Day 0 by the user to see if the build received is testable or not. This is done so that whole testing is not done and time not wasted if all bugs have not been fixed and some features are not working in it.
Question: What is sanity testing?
Answer: Sanity testing is done at the release phase to see if the main functionalities are working fine without going much deeper into it.
Question: What is Re-testing?
Answer: To test that bugs found in the previous releases have been fixed and not present in the new release.
Question: What is Regression testing?
Answer: Repeated testing of functionality to see if new bugs are not introduced or detected due to modification in the application.
Question: What is GUI Testing?
Answer: Graphical user interface testing is to check to test the interface between the user and the application.
Question: What is Recovery testing?
Answer: This is used to see how soon the system will come back to its normal state after a system crash.
Question: What is Globalization testing?
Answer: In this testing, the application should work in different languages and regions as desired.
Question: What is Localization testing?
Answer: This is adapting the global application to a local region or language by adding local components.
Question: What is installation testing?
Answer: This is used to test whether an application can be installed quickly and is giving the desired output after installation.
Question: What is formal testing?
Answer: In this testing, testers test the application using pre-planned procedures and documents.
Question: What is Risk-based testing?
Answer: In this testing, functions that are most likely to fail are individually tested.
Question: What is compatibility testing?
Answer: In this testing, the application is tested in different environments to see its compatibility.
Question: What is exploratory testing?
Answer: In this testing domain, experts do the testing of the application by exploring and without knowing its requirements.
Question: What is monkey testing?
Answer: In this testing, abnormal action is done on the software application deliberately to check its stability.
Question: What is usability testing?
Answer: In this testing, it is checked if the end-user can easily access the application and explore it easily and use it comfortably without any training.
Question: What is security testing?
Answer: In this testing, it is tested that the data is secure in the system and it behaves as expected.
Question: What is soak testing?
Answer: The software application is subjected to intense load for an extended period and then it is observed if the form is working as desired.
Question: What is Performance testing?
Answer: In this type of testing the speed, scalability, and stability of the application is tested. The response time and throughput and whether are resources are utilized at optimum levels are checked. In short, it is tested as to how the application performs under different conditions.
Question: What is load testing?
Answer: In this type of testing, it is checked if the application gives the desired outcome under normal and peak load conditions.
Question: What is volume testing?
Answer: In this testing, it is checked if the application can handle the massive amounts of data.
Question: What is stress testing?
Answer: In this application, it is checked if the application behaves as desired under increased load (more than it is designed for).
Question: What is concurrency testing?
Answer: It is used to check the behavior of the application when multiple users are accessing the application at the same time. This is used primarily to identify deadlock issues.
Question: What is Fuzz testing?
Answer: It issued to test the coding errors of security loopholes in the application. By subjecting the claim to random data and deliberately trying to crash the application to see if internally anything is braking or not.
Question: What is ad hoc testing?
Answer: This is the opposite of formal testing. Here the experts who know the application well check it randomly with random data without any fixed plan or document and any fixed method.
Question: What is interface testing?
Answer: This is done between two modules to see if the data is being passed between them correctly and both modules communicate correctly.
Question: What is Bucket testing?
Answer: In this type of testing, two versions of the application are tested to see which version performs better.
Question: What is Exhaustive testing?
Answer: Doing testing of all functionalities of the application with valid and invalid inputs is called exhaustive testing.
Question: What is early testing?
Answer: Doing testing in early phases of SDLC (Software Development Life cycle)so that errors can be fixed early which is less expensive than fixing errors at later stages of SDLC.
Question: What is error Clustering?
Answer: When one particular module of application has maximum errors or failures then it is called error clustering.
Question: What is the pesticide paradox?
Answer: When the same test cases are used again and again repeatedly for testing, no new bugs are found. So to overcome this pesticide paradox, we need to update our test cases to find new errors and failures in our application.
Question: What is error cascading?
Answer: When one error triggers other errors in the application at later stages of SDLC, it is called error cascading.
Question: What is an error?
Answer: The error is any variance between actual and expected outcomes.
Question: What is the bug?
Answer: Any mismatch in the application found by testers.
Question: What is the error?
Answer: When core cannot be compiled or run, then it is called an error?
Question: What is failure?
Answer: When the application is installed at the client’s place, and the client finds anything not working correctly, then it is Product failure.
Question: What is Bug severity?
Answer: The impact of a bug on the client’s business is categorized as critical, major, or minor severity.
Question: What is Bug priority?
Answer: To decide the priority of which error should be fixed first, it is given a priority of High, Medium, or low.
Question: What is bug leakage?
Answer: If a bug is missed in the testing phase of the application and is found by the end-user in the client’s location, then it is called bug leakage.
Question: What is Bug Release?
Answer: Releasing the software application with known bugs is called bug release. These bugs should be mentioned in Release notes.
Question: What is error age?
Answer: It can be defined s the time interval between error identified and the error closed.
Question: What is error seeding?
Answer: Error seeding means introducing known errors in the application to see if the test can find them and to see how the application is performing with these effects.
Question: What is show stopper error?
Answer: A show stopper is a error, which does not allow the user or tester to move further; it is like an application crash. Eg. If the login button is not working even if you have a valid login name and password, then it is a show-stopper error.
Question: What is Hotfix?
Answer: A bug to be treated as a high priority bug and treated immediately.
Question: What is boundary value analysis?
Answer: Boundary value analysis means that the errors are more likely to occur in the boundaries of partitions of application.
Question: What is decision table testing?
Answer: Decision table testing is that instead of input values, you have input conditions such as if then else. Conditions are input, and actions based on these conditions are output.
Question: What is an entry criterion?
Answer: The requirements that should be met before starting the testing.
Question: What is the exit criteria?
Answer: The requirements that should be met before ending the testing.
Question: What is the difference between SDLC (Software development Life cycle ) and STLC (Software Testing Life cycle)?
Answer: SDLC deals with the development and coding of software, whereas STLC deals with verification and validation of software.
Question: What are the valuable steps in testing to resolve issues?
- Record the issue
- Report the issues to higher-level meaning to escalate
- Control: Define issue management process
Question: What is the function of the software testing tool “Phantom”?
Answer: This is free software and is used to take control of windows GUI and can simulate mouse click and other GUI functions, i.e. mouse keys and menus, etc.
Question: Explain what test deliverables are?
Answer: Test deliverables are the documents, tools, and components that have to be delivered during the testing phase: before testing, during testing, and after testing.
Question: What is the common risk that leads to project failure?
Answer: The common risks are:
- Limited human resources
- Limited Budget
- Shortage of time
- The testing environment has to be proper.
Question: What is a test report, and what are its benefits?
Answer: A typical test report contains
- Project information
- Test objective
- Test Summary
The Benefits are:
- The project status and testing status is communicated to all.
- Stakeholders can take decision-based on it.
- The final report will indicate if the software can be released or not.
Question: What is Test Matrix?
Answer: It is used to capture effort, quality, plan, time, and resources taken for each phase of testing.
Question: What are the steps you would follow once you find the error?
- Recreate the error
- Take a screenshot of the error.
- Log the error
Question: What is N+1 testing?
Answer: This testing is done in multiple cycles and repeated many times so that errors found in cycle N are retested and fixed in the N+1 period. This is repeated until there are no more errors.
Question: Mention the purpose behind doing end to end testing?
- This is done after functional testing.
- The whole application is tested with external interfaces.
- The application is tested with the database.
- The application is tested in a real environment.
Question: Explain that in a testing project, what testing activities would you automate?
- Tests in which multiple data is used for the same actions
- Tests which are run for every build of the application
- In which pages do not change in a short time
- In mission-critical pages
- Same tests to be used for different browsers
Question: What is functional system testing?
Answer: Testing end to end functionality of the whole system is called functional system testing.
Question: What is Independent testing?
Answer: Independent testers are not biased and detect errors at the same time.
Question: What is typically the most significant reason to use risk to drive testing efforts?
Answer: This is because it is not feasible to test everything.
Question: What type of testing investigates the functions relating to the detection of threats such as virus etc
Answer: Security testing
Question: What can static analysis not find
Answer: Memory leaks
Question: What are the experienced-based testing techniques?
Answer: The experienced people technical or business-related can give better insights into the system by testing the application as they have prior experience and expert knowledge.
Question: What type of review requires formal entry and exit criteria including metrics
I hope these Software testing interview questions and answers have made your testing concepts clear and made you appreciate the importance of testing and error-free quality product development. If you think that these are not covering the topic or interview questions that you faced in interviews, then you can comment down your questions, We will add your comment as a question with answers in our article.
You might be also interested in: