Software Testing and Interview Questions

Top Manual Testing Interview Questions and Answers

Posted in Software Testing, Interview Questions
Top Manual Testing Interview Questions and Answers

Table of Contents

Are you preparing to get your dream job as a Manual Tester? Or, merely planning to switch to being a Manual Tester? In this article, we’re going to look at some of the frequently asked software testing interview questions that you can expect to be coming your way during a testing interview for the role of a Manual Tester.

In addition to these concept-based questions, there would be a requirement for a (or maybe multiple) coding test(s). 

Top Manual Testing Interview Questions and Answers

So, keep up your programming practice for the manual testing interview questions. If you wish to hone your testing skills further, here are some of the best manual testing interview questions and answers

Question: How would you define Manual Testing?

Answer: Software testing is a validation process that makes sure a system works as per the business requirements. It evaluates and qualifies a system on various aspects such as accuracy, completeness, usability, efficiency, and more.

Question: Explain “use-case testing”?

Answer: "Use case" is used to identify and execute the functional requirement of an application from start to finish, and the technique used to do this is known as "Use Case Testing."

Question: Define Static Testing?

Answer: One of the white box testing techniques, that with the help of a checklist, directs developers to verify their code to find errors in it. Developers can start static testing without finalizing the program or application. Static testing is cost-effective than dynamic testing as it conceals more areas than dynamic testing in a shorter time.

Question: Explain the various types of manual testing?

Answer: In manual testing, the software is tested without any automation tools or scripts. The various types of manual testing are:

  • Smoke Testing: Smoke testing tests for the presence of critical issues in the software and ensures that the software adheres to its primary objectives. It overlooks the minor and cosmetic errors and tests only the core functionality. Example – testing a new feature
  • Cross-Browser Testing: a website may show some effects and displays differently. Thus, it is crucial to test each functionality, especially UI on different browsers to ensure the functionality is working correctly. Example, checking JavaScript functionality on all browsers.
  • Acceptance Testing: Acceptance testing, better known as User Acceptance Testing (UAT), aims to test how much the application can cater to the needs of users. It is done after all the other testing types are already done, and the product is ready to be lived. Generally, it is performed by an actual user or the client. For example, a user can run through the end-to-end process of purchasing a mobile phone without any hassles. 
  • Beta Testing: Beta testing is done during the pilot phase of the project, i.e., a soft launch just before the website is made fully public. It is done to get feedback from real users based on their experience. For example, a service was independently developed but used other systems to perform correctly. This integration can be tested only once the application is put live.
  • Exploratory Testing: you can say that it is like random testing, where a person can test anything they want. They can click on any button, go back and forth on the website pages, and explore the site end to end. Usually, this type of testing is done by designers, product managers, and even developers to identify any critical usability issues: example, the impact of browser back button from a credit card landing page.
  • Negative Testing: through negative testing, testers can identify how the application handles errors and exceptions by purposefully entering wrong inputs—for example, leaving the password field blank while logging into a page.
  • Usability Testing: this is one of the most important testing types because it involves dealing with how a user feels about using your product. It tests whether your website is easy to navigate, whether they can search what they want quickly, they can do their business fast, and so on. It deals with user satisfaction.

Question: What is API testing?

Answer: API testing is the testing of the Application Programming Interface directly as well as during integration testing to ensure the APIs deliver the required functionality, performance, security, and reliability. The tests are written to check if the API gives correct responses to specific requests. API testing involves unit testing, load testing, functional testing, security testing, penetration testing, Web UI testing, etc.

Question: Explain the difference between system testing and integration testing?

Answer: 

System Testing Integration Testing
The whole system is checked as one (end-to-end). The interfaces between different interconnected systems are checked.
It includes both functional and non-functional testing (usability, performance, etc.). It checks only the functionality of the integrated components.
Done after integration testing. Done after the unit testing phase.
Various types are – performance testing, usability testing, functional testing, installation testing, security testing, etc. Some methods or approaches to perform integration testing are top-down, bottom-up, hybrid, and big-bang.
Uses only black-box testing techniques Both white-box and black-box techniques are used 

Question: What is test closure?

Answer: It is a document that details the tests conducted during the entire SDLC, the analysis of the bugs and errors found and corrected, the density of defects, etc. It is a memo that indicates the formal completion of the testing procedure. 

Question: Explain the pesticide paradox? How to overcome it?

Answer: Pesticide paradox is a phenomenon wherein the more you test your software, the more immune it becomes to your tests. Testers should always look for new strategies, approaches, and test cases to overcome this, for different parts of the same applications, so that they can find bugs.

Question: Explain the difference between smoke testing and sanity testing?

Answer: 

Smoke Testing Sanity Testing
Verifies the basic functionalities and check if the build is working fine and has no errors.  Verifies the newly added functionalities or bug fixes are corrected and working fine.
Done on initial builds, i.e., it is the first check performed once a build is done. Done on a stable build after smoke testing is successful.
Performed for every build. Performed on stable builds to check if the old functionality is working after the new changes are done.

Question: How will you determine when to stop testing?

Answer: Well, the most straightforward answer would be that when all the defects are not found in software, we can stop testing. However, it is not possible to have perfect software free of bugs. We can determine the exit criteria for testing based on the deadlines, budget, and the extent of testing performed. Usually, testers can find most of the major and critical bugs during the first and second weeks of testing. After the third and fourth weeks, even minor and cosmetic defects are taken care of, and the application moves into the regression testing phase. Once regression is completed, we can be assured that 99% of test scenarios have been covered, and software is ready to be rolled out.

Question: Explain what configuration management is?

Answer: Configuration management is a set of management practices, interrelated processes, and tools that help manage all the work items and keep them updated and accurate so that they are readily available for all the users involved. It also helps us maintain all the work items in conformation with the requirements of the project and ensures any changes are appropriately documented, evaluated, and implemented after authorization.

Question: Explain the difference between a test driver and a test stub

Answer: Both driver and stub are types of test harness that are used to provide a simulation environment for testing a module (component). They are not a part of the main software and are used only for testing purposes.  

Question: Explain Data flow Testing?

Answer: Data flow testing involves testing various paths in the application workflow to test the sequence of events and the status of variables and data objects at different stages. Through data flow testing, we can identify the variables that are used at every stage of the program’s control flow. This helps us eliminate variables that are declared but never used or vice versa, deallocating variables before using them, or a variable whose value is changed multiple times before being used. 

Question: What is the difference between retesting and regression testing?

Answer: 

Retesting Regression testing
It is done to check if the previously failed test cases have been fixed and are working fine. Regression testing is done to identify new issues that may have occurred because of changes to the application functionality or introducing new functionality.
The primary purpose is to ensure the bugs found in a previous build are fixed in the latest one. The basic purpose is to ensure that the new changes have not affected the existing working functionality.
Retesting affects the application delivery date and is of high priority; it is done before regression testing. Regression testing is done after all the other testing procedures are complete.
Retesting has to be done manually. Test cases can be automated, and scripts can be run to test the same functionality again and again.
Only failed test cases are executed. All the test cases from the start to the end of the application are executed.

Question: Distinguish between Static Testing and Dynamic Testing?

Answer: 

On the Basis Of Static Testing Dynamic Testing
When To Perform Testing was done without executing the program Testing is done by executing the program
What Does it Do This testing does the verification process Dynamic testing does the validation process
What is it About Static testing about preventing defects Dynamic testing is about fixing and finding the defects
Output Of the Testing Static testing gives an assessment of documentation and code Dynamic testing gives bugs in the software system.
What Does it Involve Static testing involves a process and checklist to be followed Dynamic testing involves test cases for execution
When is the Testing Performed w.r.t Compilation This testing can be performed before the compilation Dynamic testing is performed after compilation
What it Covers? Static testing covers the statement and structural coverage testing Dynamic testing covers the executable file of the code
Cost of Finding Defects Cost of finding defects and fixing is less Cost of finding and fixing defects is high
Return on Investment Return on investment is high as this process involved at an early stage Return on investment is low as this process involves after the development phase

Question: State the difference between STLC and SDLC.

Answer: STLC deales with verification and validation of the software while SDLC deals with the development/coding of the software.

Question: What is Test coverage?

Answer: Test coverage is a quality metric that represents the percentage amount of testing completed for a product. It is relevant for both non-functional and functional testing activities. The metric is used to add missing test cases.

Question: Can system testing be done at any stage?

Answer: No, we cannot do system testing at any stage, it must start only if all modules work correctly and are in place, but it should be performed before UAT (user acceptance testing).

Question: What are the different kinds of software testing?

Answer: Manual testers use the following kinds of Software testing:

    1. Unit testing
    2. Integration testing
    3. Regression testing
    4. Shakeout testing
    5. Smoke testing
    6. Functional testing
    7. Performance testing
      1. Load testing
      2. Stress testing
      3. Endurance testing
    8. White-box and Black-box testing
    9. Alpha and Beta testing
    10. System testing

Question: What is agile testing and what is its importance?

Answer: Agile testing evaluates software from the perspective of the customer. Its importance is that it does not require the development team to complete coding for starting QA. Instead, testing and coding go hand in hand. However, it may require continuous customer interaction.

Question: What is to be done when bug turns up during testing?

Answer: We can follow the below steps when there is bug encountered while testing:

  • Run more tests to confirm that there is a clear description of the problem.
  • Ensuring that the same problem doesn’t exist with different inputs by running a few more tests.
  • Once we are certain about the full scope of the bug, we can add details and report it.

Question: What to do when a bug is encountered?

Answer: After finding the bug, the first thing is to lock the bug in the bug report. Then this bug needs to be assigned and communicated to developers who can fix it. After the developer fixes the bug, fixes must be re-tested, and determinations must be made regarding requirements for regression testing to make sure that fixes didn’t create problems elsewhere.

Question: What do you mean by Exploratory Testing?

Answer: Exploratory testing is testing an application without a test plan and test script. In exploring the testing test, explore the application based on the tester's knowledge as the tester does not know the application previously. Tester explores the application like an end-user and tries to use it. While using the application, his main motive is to find the bugs which are in the application.

Question: What is white boxing testing, also mention its types?

Answer: White box testing technique involves the selection of test cases based on an analysis of the internal structure i.e., code coverage, branches coverage, paths coverage, condition coverage, and more, of a system or a component. It is also referred to as Structural testing or Code-Based testing. Different types of white box testing are

  1. Statement Coverage
  2. Decision Coverage

Question: What is verified in white box testing?

Answer: The white box testing following verifies the following:

  1. The security holes in the code
  2. The broken or incomplete paths in the code
  3. The flow of structure as per the document specification
  4. The expected outputs
  5. All conditional loops in the code that checks the complete functionality of the application
  6. The line by line coding and cover testing

Question: Explain black box testing and what are the different black box testing techniques?

Answer: Black box testing is the testing method that involves testing the software without knowing the internal structure of the program or code. This testing is usually checking the functionality of an application.

Black box testing techniques are

  1. Equivalence Partitioning
  2. Boundary value analysis
  3. Cause-effect graphing

Question: What are verification and validation?

Answer: The verification process involves evaluating software in the development phase. It helps the tester to decide whether the product of a given application satisfies the specific requirements.

The validation process involves evaluating software after the development process and to check whether it meets the customer requirements.

Question: Distinguish between System Testing and UAT(User Acceptance Testing)

Answer: UAT: User Acceptance Testing (UAT) is a process of running a product through a series of specific tests, thereby determining whether the product will meet the needs of its users.

System Testing: Also known as end-to-end testing, is finding defects when the system undergoes testing as a whole, In such type of testing, the application suffers from beginning till the end.

Question: Define mutation testing?

Answer: The technique to identify if a set of test cases is useful by intentionally introducing various bugs and retesting with original test cases to determine if the bugs are detected.

Question: Mention the categories of debugging?

Answer: Categories for debugging are:

  1. Brute force debugging
  2. Backtracking
  3. Cause elimination
  4. Program Slicing
  5. Fault tree analysis

Question: What is the testing type and what are the commonly used testing types?

Answer: Testing type is a standard procedure is followed to get an expected test outcome.

Commonly used testing types are:

  • Unit Testing: To test the smallest code of an application.
  • API Testing: Tests the created API for the application.
  • Integration Testing: Combines the individual software modules and tests them.
  • System Testing: Tests the complete system.
  • Install/Uninstall Testing: Testing done from the perspective of client/customer view
  • Agile Testing: Testing through Agile technique

Question: List the key challenges of software testing?

Answer: Some of the challenges of software testing are:

  • Availability of standard documents and resources
  • to understand the application
  • Shortage of skilled testers
  • Understanding the requirements: Testers require excellent understanding and listening capabilities to be able to communicate with the customers about the conditions.
  • The ability to analyze when to stop testing
  • Ability to work under time constraints
  • Ability to make the decisions
  • Using an optimized number of test cases and testing the entire application

Question: What are the functional test cases and non-functional test cases?

Answer: Functional testing defines as testing the ‘functionality’ of a software or an application under review. The software is examined as per client requirements. A document called as s requirement specification or software specification is used as a guide to testing the application.

Question: What is Non-functional testing?

Answer: When an application works as per the user’s expectation, efficiently and smoothly under any condition, then it is a reliable application. It is critical to test these parameters based on the quality; this process is called non-functional testing.

Question: Differentiate between error, bug, and defect

Answer: A slip in coding is an error. A defect is an error spotted by a manual tester. The defect which is admitted by the development team is known as a bug. Functional failure occurs when a built code misses on the requirement.

Question: Differentiate between quality assurance, quality control, and manual testing.

Answer: A systematic and planned way of monitoring the quality of the process, which is followed to produce a quality product, refers to Quality Testing(QA). QA modifies the process tracks the test reports to meet the expectations of the project.

Quality Control (QC) is about the quality of the product. QC suggests improvements apart from finding defects. Hence, QC implements the process set by QA. The testing team is responsible for quality control.

The software testing process ensures that the product which is developed by developers meets the requirements of the user. The testing aims to find bugs and to get them fixed by the development team, thereby maintaining the quality of the product to be delivered to the customer.

Question: What are drivers and stubs in manual testing?

Answer: Drivers and stubs are part of incremental testing. Incremental testing consists of two approaches, namely the bottom-up and top-down approach. Drivers are used in bottom-up testing, and the stub is used for a top-down approach. The stub, which is a dummy code or program is used to test the main module.

Question: What are the difference between test cases, test scenarios, and test script?

Answer:

Test Cases: A document that contains the steps to be executed. A test case document is already planned and contains edge cases.

Test Scenarios: Any functionality that can be tested is a test scenario. It is also called Test Possibility or Test Condition.

Test Script: It is a short coded program used to test part of the functionality of the software system. In short, a written set of steps that should be performed manually.

Question: Explain the Latent defect? How is it different from Masked defect?

Answer: The latent defect also called hidden defect it is an existing defect in the system which might cause failure or malfunction but is not discoverable through general inspection

Masked defect: A defect that exists but has not caused a failure yet as another defect prevents that part of the code from being executed

Question: What is the test deliverable? Explain

Answer: Test deliverables are a set of tools, documents, and components that are maintained and developed in support of test

There are different test deliverables at every phase of the software development lifecycle

  • Before Testing
  • During Testing
  • After the Testing

Question:  What is a test plan and what information it covers?

Answer: A document that describes the approach, scope, resources, and schedule of testing activities is a test plan.

Following details must be covered in the test plan:

  • Test Strategy
  • Test Objective
  • Exit/Suspension Criteria
  • Resource Planning
  • Test Deliverables

Question: Lists the common risks that lead to project failure

Answer: Enlisted are the common risks that lead to project failure:

  • Not having enough human resource
  • Testing Environment may not be set up properly
  • Limited Budget
  • Time Limitations

Question:  What does a test report contain and what are the benefits of a test report?

Answer: A test report consists of the following:

  • Test Objective
  • Project Information
  • Defect
  • Test Summary

Following are the benefits of test reports:

  • Informs current status of quality of product and project
  • Allows customers and stakeholders to take corrective action
  • A final document decides if the product is ready for release

Question: What is the function of “phantom” as a manual testing tool?

Answer: Phantom is a freeware used by windows GUI automation scripting language. It allows the user to take control of functions and windows automatically by simulating any combination of mouse clicks and keystrokes as well as menus, lists, and more.

Question: What is the difference between bug leakage and bug release?

Answer:

Bug leakage: When the bug is discovered by the end-user and is missed by the testing team to detect at the time of testing is the Bug leakage. The defect that exists in the application and not detected by the tester and is eventually found by the user.

Bug release: When a particular version of the software is released with a set of known bug(s) is called bug release. These bugs are of low priority. Bug release is done when a software company can afford the existence of bugs in the released software but not the time/cost for fixing it in that particular version.

Question: What is the difference between performance testing and monkey testing?

Answer: Performance testing checks the scalability, speed, and stability characteristics of the system. Performance is identified with achieving throughput, response time, and resource-utilization levels that meet the performance objectives for a project.

Monkey testing is a technique in software testing that allows the user to test the application and checks its behavior by providing random inputs.

Question: Explain the difference between Test Matrix and Traceability Matrix.

Answer:

Test Matrix: Test matrix captures actual quality, effort, the plan, resources and time required to capture all phases of software testing

Traceability Matrix: Traceability Matrix involves mapping between test cases and customer requirements.

Question: Differentiate the below-mentioned techniques as static or dynamic:

  • Equivalence Partitioning.
  • Use Case Testing.
  • Data Flow Analysis.
  • Exploratory Testing.
  • Decision Testing.
  • Inspections

Answer:

Static

  • Data Flow Analysis.
  • Inspections

Dynamic

  • Equivalence Partitioning.
  • Use Case Testing.
  • Data Flow Analysis.
  • Exploratory Testing.
  • Decision Testing.
  • Inspections

Question: What is positive and negative testing?

Answer: Positive testing is when tester puts in a valid input and expects some action to be completed in accordance with the specification whereas a negative test is when you put in an invalid input and receives errors.

Question: When must testing be stopped?

Answer: Stopping the testing depends on the risks for the system under testing.

There are some criteria based on which you can stop testing.

  1. Deadlines (Testing, Release)
  2. Test budget has been depleted
  3. Bug rate fall below a certain level
  4. Test cases completed with certain percentage passed
  5. Alpha or beta periods for testing ends
  6. Coverage of code, functionality or requirements are met to a specified point

Question: Define equivalence partition testing?

Answer: Dividing of application input test data into each partition from which we derive test cases defined as the equivalence partitioning technique. Using this technique reduces the testing time.

Question: What is decision-table testing and why it is important?

Answer: Testing systems where the specification takes the form of cause-effect combinations or rules, use decision table testing. A decision table lists the input in a column, with the outputs below the input in the same column. The remainder of the table explores combinations of inputs to define the outputs produced.

Reasons, why the decision table is important, are:

  • Decision tables are helpful in test design techniques.
  • It provides a regular way of stating complex business rules which benefit the developers as well as the testers.
  • It assists in the development process with the developer to do a better job. Testing with all combinations might be impractical.
  • It is the most preferred choice for testing and requirements management.
  • It is a structured exercise to prepare requirements when dealing with complex business rules.
  • It is used in complicated model logic.

Question: What was the main objective of the development of the manual testing system?

Answer: Before the software can be actually used it is important that its suitability as per the requirement of the client is evaluated. So in that scenario manual testing interview system came into the picture. Its main aim is to manually conduct test cases without making the usage of any kind of automation tools. It came as a result of the drawback of the automation testing as "complete automation is impossible". So the manual testing system is essential.

Question: What are the merits of Manual testing system over Automation testing?

Answer: There are few distinguishing points which give manual testing a competitive edge over automation testing which are as follows:

  • Economical benefiting: As compared to automation testing system, manual testing is much more cost effective and small scale.
  • Involvement of human element: As in the manual testing system the testing has a human working on it so it makes it more reliable and we get accurate interface feedback.
  • Time saving: It is a time saving process as the entire code needs not to be altered in the situation if minor quick fixes are to be made.
  • Real user experience: With the help of manual testing, the user is able to get exact replica of the real user experience on the on the web and mobile platforms.
  • Good capability: The manual testing system is better than handling complicated use case scenarios.

Question: What are the demerits of manual testing system over Automation testing?

Answer: Although the manual testing system as advantages over automation testing but still there are fields where the manual testing system lacks behind when compared to the automation testing. Some of the demerits of manual testing system are as follows:

  • Increased chances of errors: As the manual testing system is conducted by human being so it is likely that an error can go unnoticed.
  • Expensive in long run: Although for a short period of time manual testing might appear to be cost effective but in the long run it is can make a big cut in the budget of the company.
  • Inability to conduct certain types of testing: It is not possible to conduct the Load testing and Performance testing under the manual testing system.

Question: State the points that can highlight the differences between the automation testing and manual testing?

Answer: There are quite striking difference when the manual and the automation testing system are compared. Some of the major points of difference are as follows:

Manual Testing System

Automation Testing System

Manual testing cannot be conducted without human interference. Automation testing makes usage of various kinds of tools to carry out the test cases.
Manual testing needs skilled labour which needs lots of time as well as high cost. Automation testing doesn’t involve much labour, time and cost.
Different sort of application can be tested manually, certain testing types like ad-hoc and monkey testing are more appropriate for the manual execution. Automated testing is suitable only for stable systems and is generally used for Regression Testing.
Manual testing can be routinely and tedious.
The monotonous part of executing same test cases repetitively is conducted by automation software in Automation Testing.

Question: What can be understood from End To End Testing?

Answer: End TO End testing system is a way of testing an application to ensure whether or not it is acting as expected to be working. It aims at conducting a test at the flow of the application beginning from the start to the endpoint. End To End testing system scrutinizes the complete flow of the system. The End to End testing confirms that the data integrity is maintained in between the different system components and the systems.

Question: What is understood from the Top-Down and Bottom-Up Approach?

Answer: As per Top-Down Approach the testing procedure is conducted from the top to bottom. At the first place, the high-level modules undergo the testing procedure followed by the low-level modules and then at the end the integration of the low-level modules to a high level is done to make sure that the system is working as required.

As per the Bottom-Up Approach the testing procedure is carried out from the bottom to the top. At the first place, the low-level modules undergo the testing procedure which is then followed by the high-level modules and then at the end the integration of the high-level modules to a low level is done to make sure that the system is working as required.

Question: What can be understood from System and Integration Testing?

Answer: The main objective of conducting System testing is to make sure that the system works as per the specified requirements.

Whereas the major objective of the Integration testing is to test the interface in between the two different software units. It is a category of software testing where the individual units are collected together and tested as a whole. The main aim of this level of testing is to find out the faults in the interaction between integrated units.

Question: What is meant by the Big Bang Approach?

Answer: The Big Bang Approach is a method of integration testing strategy which necessitates side by side checking of all the system components. Its main advantage is that the tester can check the work of the entire system and its components.

Question: What is understood by Sanity Checking?

Answer: Sanity Testing is conducted throughout the release phase to determine for the main functionalities of the application without going into many details. It is also known as a subdivision of Regression testing. Sanity checking is carried out at the “release level”. It is a level of Software Testing which is conducted once the software build is received along with minor changes in code or functionality to have a concrete proof that the bugs have been corrected and no further problems come up as a reason of these changes. Its purport is to make be sure that the proposed functionality works roughly as it is required.

Question: What is meant by Alpha, Beta and Gamma Testing?

Answer: Alpha testing is done by the developers who develop the software and testers. Sometimes it can be observed that the alpha testing is conducted by the purchaser or outsourcing team with the existence of developers or testers.

Beta testing is to be conducted by a specified number of ultimate users before delivery. Generally, it is conducted at the place of the end-user.

Gamma testing is performed to check the specified needs when the software is ready to be released. It is usually done at the place of the ultimate user. It is performed at the first hand by omitting all the in-house testing activities.

Summary

You need to be confident while giving the interview.  A simple no is better than giving some random non-answer and adding unnecessary details if you do not know the answer to any question asked. Candidates that are straightforward and honest are preferred over those pretending to be know-it-alls!

Further, don’t disburse your details until you are asked. The interviewer is more interested in knowing you as a technical person. So, all the very best! Do let us know the Manual Testing Interview questions you faced in the interview that are not covered here so that we can add those here for the benefit of the Testing community.

The questions are most frequently asked in manual testing interview. Share with your friends or anyone who is preparing for an interview to be a software tester.

People are also reading:

Simran Kaur Arora

Simran Kaur Arora

Simran works at Hackr as a technical writer. The graduate in MS Computer Science from the well known CS hub, aka Silicon Valley, is also an editor of the website. She enjoys writing about any tech topic, including programming, algorithms, cloud, data science, and AI. Traveling, sketching, and gardening are the hobbies that interest her. View all posts by the Author

Leave a comment

Your email will not be published
Cancel
Software company CTG
Software company CTG

Superb post!!! In this post talking about Top 40 Manual Testing Interview Questions & Answers which is really helpful for all.

itahak
itahak

Ok. I use translate and will be good ok?