Software testing is the process of running or executing the software with the intention of finding software bugs, and verifying that the system meets the different requirements including functional, performance, reliability, security, usability, and so on. It helps the stakeholders to understand the risks involved in the implementation of the software and if it meets the business and technical requirements that guided its design and development.
Software testing has become an integral part of IT companies to maintain the customer’s reliability and ensure satisfaction. According to Global Market Insights, Software Testing market size exceeded USD 40 billion in 2019 and is expected to grow at a CAGR of over 6% from 2020 to 2026.
If you are preparing for a software testing interview and are worried about the type of questions asked, this article will help you. Here is a list of some of the commonly asked Software Testing interview questions (with answers) in a software testing interview:
Q1. What do you mean by software testing?
Ans. Software testing is a process helpful in finding any existing bugs in the software with the help of executing a program or application. Testers use it to validate and verify software programs, applications, and products. Unlike other steps, testing an ongoing stage in the software development life cycle (SDLC). Several test designs are used to verify the software codes.
Q2. What is the purpose of risk-based testing?
Ans. Risk-based testing is done for projects and applications based on risks. It uses risk to prioritize and emphasize the appropriate tests during test execution.
Q3. How is static software testing different from dynamic testing?
Ans. Below highlighted are the key differences between static and dynamic testing:
|Static Testing||Dynamic Testing|
|Helps in finding bugs without executing any code||Execution of code is required to find results of running tests|
|Done at the time of the verification process||Executed during the validation process|
|A cost-effective way of testing||Little expensive|
|Example – Reviewing, Walkthrough, Inspection||Example – Unit testing, system testing, integration testing|
Q4. What do you think, how much testing will be sufficient?
Ans. There is no one answer to how much software testing is enough and as per BCS/ISTQB, which is a well-known Software Testing Foundation, it is not possible to test software for every possible situation. A tester should examine factors like quality, the risk involved, budget, and time constraints.
Q5. What is quality assurance?
Ans. It is a process-oriented activity that ensures the prevention of defects/bugs during the development process of software applications. The objective of measuring quality assurance is to avoid any hindrances once the software is ready.
Q6. How is software testing different from quality assurance?
Ans. Below is the list of differences:
|Software Testing||Quality Assurance|
|A process for finding bugs in software||A process for ensuring that the software is designed as per the required specifications|
|Focused more on corrections||Works on the preventive approach|
|Aims at controlling the quality||Aims at ensuring quality|
Q7. What do you mean by Quality Control?
Ans. Quality control is an activity based on product orientation. It is used to define the error in a particular software application.
Q8. What do you mean by Positive and Negative Testing?
Ans. Positive testing is used to determine what a system is supposed to do and is it justifying the planned requirement.
Whereas negative testing helps in determining what the system should not perform, leading to finding the possible defects in the software.
Q9. Which contents are available in a test plan?
Ans. The test plan document is acquired from the Product description, SRS, or Use Case Document. It defines the testing plan and incorporates activities that are helpful in delivering quality software. Generally in a test plan, a testing manager should include things like:
- Test functions
- Pass and fail criteria
- Test deliverables
- Planned risks and risk probabilities
- Supervision criteria
- Detailed schedule
Q10. What is baseline testing?
Ans. Baseline testing is the process of running a set of tests to capture performance information. It is to compare the performance of software with its own previous version.
Q11. What is benchmark testing?
Ans. Benchmark testing is the process of testing a software’s performance with respect to industry guidelines.
Q12. Define some of the common software testing approaches.
Ans. Some of the common testing approaches are:
|Common Software Testing Approaches|
|Black box testing||For a given input, the output is tested|
|White-box testing||Testing of source code is done|
|Acceptance testing||Expectations vs reality testing|
|Automated testing||The test is done with recurring scripts|
|Regression testing||The test verifies the existing working of a system and compares with the way it used to work previously|
|Functional testing||Helpful in testing functionalities|
|Exploratory testing||Test is done within certain areas only and no specified test cases are done|
Q13. What are the white box and black box testing?
Ans. White box testing is a software testing method that tests the internal structures or workings of an application.
Black box (aka behavioral testing) is a method in which the internal structure/ design/ implementation of the item being tested is not known to the tester.
Q14. Define some advantages and disadvantages of black-box testing.
Ans. Below are some advantages and disadvantages:
|Advantages of Black Box Testing||Disadvantages of Black Box Testing|
|It simplifies the testing process.||It doesn’t highlight the reasons for errors.|
|Even a non-tester person can work on this.||It is difficult to design test cases.|
Q15. What is the difference between Retesting and Regression testing?
Ans. Re-testing is a type of testing performed to check the test cases that were unsuccessful in the final execution are successfully passed after the defects are repaired.
Regression testing is a type of software testing executed to check whether a code change has not unfavorably disturbed current features and functions of an application
Q17. What are bug releases and bug leakage?
Ans. A Bug Leakage has resulted when a bug is detected and that should have been detected in the previous versions/builds of the application. A bug release is when a particular version of s/w is released with a set of known bug(s).
Q17. What is random testing?
Ans. Random testing is a black-box software testing technique where programs are tested by generating random and independent inputs.
Q18. Define Agile Testing.
Ans. Agile testing is a software testing practice that follows the principles of agile software development.
Q19. What is the difference between a defect and a failure?
Ans. Failure is the variation in the results produced by the software from its expected result, whereas a defect is a problem that got by the customer in production time.
Q20. Define latent bugs and golden bugs.
Ans. A latent bug is a bug that is present in the system from previous iterations or release. It is a low priority bug.
A golden bug is a bug that appears in every iteration or release, affecting the major module. It is a high priority bug.
Q21. What do you mean by Verification and Validation?
Ans. Verification is the process of checking that the software meets the specification.
Validation is the process of checking whether the specification captures the customer’s needs.
Q22. What are alpha and beta testing?
Ans. Alpha testing is conducted within the organization and tested by a representative group of end-users at the developer’s side and sometimes by an independent team of testing.
Beta testing is conducted by the end-users, and they are not programmers, software engineers or testers.
Q23. Name the steps involved in the process of the bug cycle?
Ans. Below is the bug life cycle:
- Bug investigation
- Bug assignment
- Bug fixing
- Bug retesting
- Bug closing and reopening
Q24. What is concurrency testing?
Ans. Concurrency Testing is defined as a testing technique to detect the defects in an application when multiple users are logged in.
Q25. Are there more defects in the design phase or in the coding phase?
Ans. The design phase is more error-prone than the coding phase.
Q26. What are the types of maintenance in software testing?
Ans. Corrective maintenance, adaptive maintenance, perfective maintenance, and preventive maintenance.
Q27. What are the phases of a formal review?
Ans. There are six phases of a formal review: planning, kick-off, preparation, review meeting, rework, and follow-up.
Q28. What is the traceability matrix?
Ans. Traceability matrix is the document with the help of which relationship between test cases and requirements is shown.
Q29. What is Cyclomatic Complexity?
Ans. Cyclomatic complexity is used to measure the complexity of the software using the control flow graph of the software.
Q30. When is the decision testing table used?
Ans. Decision table testing is used for testing systems for which the specification takes the form of rules or cause-effect combinations.
Q31. Which type of functional testing investigates the functions related to the detection of threats, such as viruses from malicious outsiders?
Ans. Security testing.
Q32. What type of review requires formal entry and exit criteria, including metrics?
Q33. Which of the following tools would be involved in the automation of regression test?
Ans. Below are some tools that help in the automation of regression test:
- Data tester
- Boundary tester
- Output comparator
Q34. What is the purpose of the test design technique?
Ans. The purpose of the test design technique is to identify test conditions and test cases.
Q35. What are the three types of impact rating classifications?
Ans. Minor, major, and critical.
Q36. What are the different types of verifications?
Ans. Walkthrough and inspection.
Q37. What are the different types of coverage techniques?
Ans. Statement coverage, decision coverage, and path coverage.
Q38. What is the Rapid Application Development (RAD) model?
Ans. RAD is a software development methodology that uses minimal planning in favor of rapid prototyping.
Q39. What are the common problems in the software development process?
Ans. Bad requirements, unrealistic schedules, inadequate testing, adding new features, and poor communication.
Q40. What are the two types of recording methods?
Ans. Context-sensitive and analog.
Q41. What is Integration testing?
Ans. Integration testing, which is also known as I&T, String Testing, or Thread Testing, is a process of testing through which several software modules are logically integrated as a group and each group is tested. The prominent role of integration testing is to check the data communication between different software modules.
Q42. What are the different approaches and strategies used in Integration Testing?
Ans. Below are the two approaches used in integration testing:
- Big Bang Approach
In the big bang integration testing approach, separate components are integrated together and tested at once. This type of testing is convenient when the systems are small and manageable but in this approach, fault localization is a challenging task.
- Incremental Approach
This is an advanced approach where two or more modules are joined by considering a logical relationship between them. Once a set of the module is tested, more modules are added in the loop until all the modules are assembled and tested. This type of testing is conducted via two approaches – bottom-up and top-down testing.
Q43. What is a Bottom-Up Testing?
Ans. Bottom-up testing is a type of testing approach where the lowest level components are tested first with the higher modules with the help of drivers. This approach is highly convenient for fault localization and is time-efficient when compared to the big bang testing approach.
Q44. What is Top-Down Integration Testing?
Ans. In this method, testing starts from the top and move to the bottom by seeking help from stubs. It follows the software system’s control flow. In top-down testing, fault localization is easy and the possibility of obtaining an early prototype is high. It works on the concept of priority testing and resolves major design defects on the highest priority. The only disadvantage of this approach is that it requires too many stubs and gives the least importance to modules which are present at the lower level.
Q45. When planning to execute integration testing what guidelines you consider to follow?
Ans. I keep in mind things like:
- Formulate effective test strategy and accordingly prepare the test cases.
- Identify modules which are on high priority as per the application’s architecture design and test these modules first.
- Verify each and every module’s interface details.
- Keep mock data ready.
Q46. Define something about API testing.
Ans. Application programming interface or API testing has predefined sets of routines, protocols, and tools which guide about how one component should interact with any other component. Below are some of the test which is performed on API:
- Return value as per the input condition
- Verify what APIs return
- Verify what API trigger
- Verify whether API updates the data structure
Q47. What do you mean by CAST?
Ans. It stands for Computer-aided software testing which is an automated process, technique, and tool used by a computer to test software apps and programs. CAST’s performance is equivalent to thousands of users working at a time as the CAST-based tools evaluate the code using the testing tools and built-in software testing solutions.
Q48. What is an emulator?
Ans. An emulator is a computer program, device, or system that behaves like any other system, program, or device; taking the same type of input and producing the same output.
Q49. What is fault-masking?
Ans. Fault masking is hiding an error condition with another error condition.
Q50. What is a test log?
Ans. IEEE states that the test log is a chronological record of relevant details about the execution of test cases.
Q51. Which groups are involved in test closure activities?
Ans. When the testing process ends, test closure activities are performed including tasks like test generation. It involves 4 different groups which are mentioned below:
- Check the completion of tests
- Hand over test objects
- Share learning experience
- Archive essential reports
Q52. Do you know the difference between functional testing and non-functional testing?
Ans. Below are some major differences between both:
|Functional testing||Non-functional testing|
|It tests the overall functionality and behavior of a software||It checks the software’s quality which is to be tested.|
|This type of testing is conducted before the non-functional testing||It is only performed after the functional testing is finished|
|It is used to check software as per the client’s requirement||It is used to check the software as per the client’s expectations|
|It is behavior-oriented||It is performance-oriented|
|Manual ways are used for testing||It is difficult to conduct via manual testing hence requires automation tools|
|Software is tested in the real environment||Software is tested based on factors like time, accuracy, durability, stability, etc.|
Q53. What are the different types of functional testing?
Ans. Below are some types of functional testing:
- Smoke testing
- Sanity testing
- Integration testing
- Regression testing
- Localization testing
- User acceptance testing
Q54. What are the different types of non-functional testing?
Ans. Below are some types of non-functional testing:
- Performance testing Usability Testing
- Security Testing
- Installation testing
- Recovery testing
Q55. How is unit testing different from integration and functional testing?
Ans. Below table gives a clear difference between all three:
|Basis||Unit Testing||Integration Testing||Functional Testing|
|Purpose||It individually test every smallest unit and module||It tests a combination of two or more units or modules||It is used to test the behavior of software based on the client’s requirements|
|Complexity||Not complex||Slightly complex||Complex|
|Technique||White box testing||White box and black box Testing||Black box Testing|
|Test||It highlights frequently occurring issues in the unit||Highlights issues occurring during module integration||Finds issues that affect the functionality of software|
Q56. Which are the most popular integration testing tools?
Ans. Below is the list of integration testing tools:
- Relational Integration Tester
Q57. Define the steps to writing a software testing weekly reports.
Ans. There are a few aspects that you must cover in weekly reports:
- Talk about the issues you have found in the solution. The below format could be of help:
Description of Issue:
Resources Required to Resolve(if any):
- Set Priorities for the coming week. The helpful format can be:
Reason for extending (if any):
- Status Report
Q58. What do you mean by crowd testing or CrowdSource?
Ans. In this type of testing, the software product is shared with expert software testers for finding bugs and defects. Nowadays it is a modern way of testing.
Q59. Which are some of the popular crowdsource testing services?
Ans. Below is the list:
- test IO
- Global App Testing
Q60. Define Defect Triage?
Ans. This is a way to prioritize defects or bugs based on factors like the risk involved, defect severity, and frequency of occurrence. Triage means the degree of urgency and the role of a tester is to prioritize and resolve the bug based on its priority.
Q61. What is the importance of defect triage in software testing?
Ans. It is essential for bringing in the agile project management approach and as per the project schedule, if a tester has defined priority, the project delivery date will not get affected.
Q62. Which are some tools that you use for automation testing?
Ans. Below is the list of best automation tools which are helpful for every software tester:
Q63. What is the Waterfall Model in the software development lifecycle (SDLC)?
Ans. It is the initial approach that works on the concept of finishing each phase of testing before commencing the next phase. This process avoids overlapping between any phases as the output of the current phase will be the input of the next phase.
Q64. What do you mean by V-Model in software testing?
Ans. This is an add-on version of the waterfall model. It has an additional feature where there is a specific corresponding testing phase for SDLC.
Q65. In software testing, what do you mean by embedded testing?
Ans. It is a system in which both the software and hardware devices joined to ease the testing of embedded software. The following activities are performed in embedded testing:
- Some inputs are provided
- A division of software is executed
- Software state is observed to check the quality
Q66. What are the different types of embedded software testing?
Ans. Below are the types:
- Software unit testing
- System unit testing
- Software Integration testing
- System integration testing
- System validation testing
Q67. What do you mean by the Workbench concept in software testing methodology?
Ans. Workbench methods aim to examine and verify the structure of the testing performance and it is a popular way of documenting the below-mentioned activities:
Q68. What are the different Workbench Phases?
Ans. Below is the list of different Workbench phases:
- Requirement phase
- Execution phase
- Testing phase
- Distribution phase
- Maintenance phase
- Design phase
Q69. State difference between Verification and Validation Function?
Ans. Both verification and validation functions are different and below are some of the major differences in verification and validation:
|Verification Function||Validation Function|
|It checks programs, documents, and designs||It tests and validates software|
|It uses methods like reviews, desk-checking, walkthroughs, and inspection||It is used for non-functional testing, black box testing, white box testing|
Q70. How will you involve a novice tester in your project workflow?
Ans. If someone is passionate about testing and holds the right knowledge and skills testing, it is easy to involve such a candidate in the existing project workflow. I will start with the below steps:
- Brief him about the project
- Involve in testing activities
- Communicate the progress
Q71. How do you enhance the work efficiency of your test team?
Ans. Increasing the efficiency of test team requires improvement on a few things like:
- Good management
- Testing strategy
- Research about the product and project
- Deep understanding of risk and how to eliminate it
Q72. What do you mean by code coverage?
Ans. Code coverage is a form of white box testing which is used to discover the areas of the program that are not implemented by set cases. The main task of code coverage is to find detailed information about the running program.
Q73. Which methods are used in code coverage?
Ans. Some of the methods used in code coverage are:
- Statement coverage
- Decision coverage
- Branch coverage
- Toggle coverage
Q74. What is covered under statement coverage?
Ans. Below things are covered under statement coverage:
- Unused Statements
- Dead Code
- Unused Branches
- Missing Statements
Q75. What is the formula applied for statement coverage?
Ans. The below formula is used for statement coverage:
Q76. What is the formula applied for decision coverage?
Q77. What is the formula applied for branch coverage?
Q78. What is the formula for condition coverage?
Q79. How is Code coverage different from Functional coverage?
Ans. The key difference between code coverage and functional coverage are:
|Code Coverage||Functional Coverage|
|It validates the functionality of the source code||It tests the functionality of design|
|Works on different design specifications||It works on a single design specification|
|Used by developers||Used by testers|
Q80. What do you mean by software build?
Ans. When software is designed, there are multiple source code files and creating a program that is executable is a difficult task. This is where software build works well. A software build helps in generating executable programs in software engineering.
Q81. How is sanity testing different from smoke testing?
Ans. Below is the difference between sanity and smoke testing:
|Smoke Testing||Sanity Testing|
|It checks if the core functionalities of the software are functioning fine||It checks are all bugs resolved and fixed|
|It verifies the stability of the system||It verifies the rationality of the system|
|It is documented||It is not documented|
|Acceptance testing||Regression testing|
|Complete focus on end to end system||Focused on a specific part|
|Done by both developers and testers||Done by testers|
Q82. What is not suitable for automation testing?
Ans. In the below cases automation testing will not be of much help:
- When test changes are regular
- When test changes are conducted just once
- When planning for a random test
Q83. What are the different kinds of frameworks used in automation testing?
Ans. Below is the list:
- Hybrid automation
- Modular automation
Q84. Define data-driven testing.
Ans. In such a testing case, the inputs are reported from files like Excel, CSV, ODBC which are used for performing automated testing.
Q85. Which software performance testing tools you use?
Ans. Below is the list of top software performance tools:
- Apache Jmeter
- HP Load Runner
- Load Complete
- WAPT (web application performance tool)
- Open STA (System Testing Architecture)
Q86. What do you mean by protocol testing?
Ans. It is a means to check communication protocols in various domains like:
Q87. What do you mean by L2 and L3?
Ans. OSI or the open system interconnection model has 7 layers, out of which L2 and L3 i.e. Layer 2 and Layer 3 play a significant role.
Layer 2: It is referred to as ‘Data Link’ (example – Ethernet and token ring)
Layer 3: It is referred to as ‘Network’ (example – IP address)
In the below image layers of both OSI and TCP/IP models are present along with their layers:
Q88. Name some tools for protocol testing.
Ans. Below is the list of protocol testing tools:
Q89. Name the technique used in the script that has no frame id and frame name?
Ans. For such scripts, we can use the technique frame by index.
Q90. Is it possible to skip a method in TestNG?
Ans. If the enabled parameter in test annotation is selected as false, we can skip a method in TestNG.
@Test(enabled = false)
Q91. Define Defect Cascading.
Ans. If one defect is caused due to the occurrence of another defect (probably an unattained defect), it is termed as defect cascading.
Q92. Define RTM.
Ans. Requirements Traceability Matrix or RTM or traceability matrix, or Cross-reference matrix is the term used check is the testing requirements are satisfied.
Q93. Which test should you perform before conducting User Acceptance Testing?
Ans. System Testing
Q94. Define boundary value analysis.
Ans. It tests valid and invalid partitions’ boundary values.
Q95. What do you mean by defect age?
Ans. It is the time between defect detection and defect closure. The defect age should be as low as possible at least for the HotFix issues.
Q96. State standalone application vs client-server application vs web application.
|Standalone Application||Client-server Application||Web Application|
|One-tier architecture||Two-tier architecture||Three-tier architecture|
|The system layer consists of presentation, business, and database||Client system layer consists of presentation and business||The presentation layer is in client system, business in the application server, database layer in database server|
|Works in one system||Works in intranet||Works in intranet and internet|
Q97. How is error different from failure?
Ans. Both are different in software testing:
Error – When a program is unable to compile or run due to coding mistakes it is termed as an error.
Failure- If the end-user is unable to program due to any issue, it is termed as a failure.
Q98. What do you mean by the pesticide paradox?
Ans. When a tester uses the same test cases, repeatedly it is possible that after some interval, the test case will not be able to catch new bugs. Thus in the pesticide paradox, the tester frequently updates the test case to maintain the efficiency.
Q99. What do you mean by a test stub?
Ans. The test stub is integrated with an application as a dummy program. The objective is to complete the functionality of the application. Unlike the test driver, a test stub uses a top-down approach.
Q100. Apart from white, black and grey-box testing, name some of the different colour box testing.
Ans. Colour box or rainbow testing types are:
- Glass box testing
- Red box scripts
- Yellow box testing
- Green box checking
Q101. Mention HTTP response codes that are returned by the server.
Ans. HTTP response codes are mentioned as below:
- 2xx – It means ‘Success’
- 3xx- It means ‘Redirection’
- 4xx- It means ‘Application error’
- 5xx- It means ‘Server error’
Q102. What are the variety of environments available on the Web?
Ans. The different types of environment available on the Web are:
- Internet (Wide Area Network)
- Intranet (Local Network)
- Extranet(Private network over the internet)
Q103. Mention a few subclasses of HTTP response objects?
Ans. Flush, tell, Write, etc are few HTTP response objects.
The sub-classes of HTTP response are:
Q104. Explain DFD (Data Flow Diagram)?
Ans. When data flows through a data system is graphically depicted then it is known as Data Flow Diagram. It is used for the design of data handling.
Q105. Mention different types of test levels?
Ans. Following are the different types of test levels:
- Integration testing
- System testing
- Acceptance testing
- Unit/component/program/module testing
Q106. What is the procedure to resolve issues during software testing?
Ans. By using:
Record: the defects are logged and recorded
Control: issue management process is identified.
Report: The defects are described to the development team
Q107. What are the two parameters that determine the quality of testing?
Ans. You can identify the quality of testing by using:
- Defect reject ratio
- Defect leakage ratio
Q108. Mention the things you consider before choosing automation tools for the AUT?
Ans. Following are the things to be considered before choosing automation tools for the AUT:
- Test data
- Application size
- Complexity level
- Application stability
- Technical Feasibility
- Execution across environment
- Re-usability of automated scripts
Q109. Mention what are the debugging categories?
Ans. Following are the debugging categories:
- Cause elimination
- Program Slicing
- Fault tree analysis
- Brute force debugging
Q110. Mention some of the risks that can occur in project failure?
Ans. Following are the few risks that can occur in project failure:
- Strict timelines
- Budget constraints
- Improper testing environment
- Insufficient resource for the project
Q111. What information should a test plan include?
Ans. Information that a test plan include are:
- Test Objective
- Test Strategy
- Resource Planning
- Test Deliverables
- Exit/Suspension Criteria
Q112. Write a few common mistakes that lead to issues?
Ans. Following are some common mistakes that lead to issues:
- Poor Scheduling
- Ignoring the small problems
- Not following the process
- Improper resource allocation
Q113. Mention the steps you should follow after you detect any defect?
Ans. Following are the steps you should follow after you detect any defect:
- Log the defect
- Recreate the defect
- Attach the screenshot
Q114. Who prepares the test plan in the team?
Ans. Test manager or the test lead prepares the test plan.
Q115. What is the procedure to launch the browser using WebDriver?
WebDriver driver = new FirefoxDriver();
WebDriver driver = new ChromeDriver();
WebDriver driver = new InternetExplorerDriver();
These are some of the popular questions that are asked in software testing interviews. Always be prepared to answer all types of questions — technical skills, interpersonal, or methodology. Being prepared and practiced are the ways you can be successful in a software testing job interview.
In case you have recently completed a professional course/certification,