Manual Testing Interview Questions
Last updated on Nov 13, 2023
Testing is crucial for ensuring the quality of any business products. Even automation testing is a rage; it is not applicable in all the scenarios. No matter how efficient automation testing is applied, it cannot automate everything. Manual Testing plays this crucial role which tests all the possible scenarios for achieving the completeness.
In this article, you can go through the set of Manual Testing interview questions most frequently asked in the interview panel. This will help you crack the interview as the topmost industry experts curate these at HKR trainings.
Let us have a quick review of the Manual Testing interview questions.
Most Frequently Asked Manual Testing Interview Questions and Answers
- How does quality control differ from quality assurance?
- What Is Alpha And Beta Testing?
- Name the type of documents in Software Quality Assurance?
- What is the difference between static testing and dynamic testing?
- What is a test plan and what does it include?
- What Is Test Driver And Test Stub?
- Explain Statement Coverage
- What Is Software Review?
- Explain the benefits of Manual Testing.
- Define Software Testing
- Define what a Testbed is?
- When to start Static Testing?
- What is a cause-effect graph?
- What is a test scenario?
- What is GUI testing?
1. How does quality control differ from quality assurance?
Ans:
Quality Control:
It is a product-oriented approach of running a program to determine the defects and to make sure that the software meets all its requirements put forth by the stakeholders.
Quality Assurance:
It is a process-oriented approach that focuses on the methods, techniques, and its processes are used in creating quality deliverables to check if it is applied correctly.
2. What Is Verification And Validation?
Ans:
Verification:
- It is a static analysis technique.
- Here, the testing is done without executing the code.
- Examples of verification include Reviews, Inspection, and walkthrough.
Validation:
- It is a dynamic analysis technique.
- Here, the testing is done by executing the code.
- Examples of validation include functional and non-functional testing techniques.
Become a Manual Testing Certified professional by learning this HKR Manual Testing Training!
3. What are the different types of manual testing?
Ans: Various types of manual testing include.
- Black Box Testing
- White Box Testing
- Unit Testing
- System Testing
- Integration Testing
- Acceptance Testing
4. What Is Difference Between Retesting And Regression Testing?
Ans: These are possible differences between retesting and regression.
Retesting:
- The retesting is performed for verifying the defect fixes.
- Retesting involves executing the test cases that are in a failed state.
- Retesting will have high priority over regression.
Regression:
- This testing assures that the bug fix doesn’t break other parts of the application.
- The test cases will verify the functionality of some or all modules.
- It ensures the re-execution of passed test cases.
- The regression will not have high priority as compared to retesting but in some cases, both will get executed in parallel.
5. What is the difference between system testing and integration testing?
Ans:
System Testing:
- It tests the software application as a whole to check if the system is compliant with the user requirements.
- It Involves both functional and non-functional testing such as sanity, usability, performance, stress and load.
- System testing is a high-level testing performed after integration testing.
Integration Testing:
- It tests the interface between modules of the software application.
- Only functional testing is performed to check whether the two modules when combined give the right outcome.
- Integration testing is low-level testing which is performed after unit testing.
6. What is a top-down and bottom-up approach in testing?
Ans:
Top-Down: This testing approach follows the process from top to bottom. Here high-level modules are tested first and low-level modules next. Finally, the low-level modules are incorporated into a high-level state to guarantee the framework is working as expected accordingly.
Bottom-Up: This testing approach follows the process from bottom levels or base level to high-up or top levels. The lowest level modules are tested first and high-level state modules next. Finally, the high-level state modules are coordinated to a low level to guarantee the framework is filling in as it has been proposed to.
7. What Is Alpha And Beta Testing?
Ans:
Alpha Testing: It is a type of software testing that is performed to identify bugs before releasing the product to real users or to the public. Alpha Testing is a type of user acceptance testing.
Beta Testing: It is performed by real users of the software application in a real environment. Beta Testing is also a type of user acceptance testing.
8. What is the difference between performance testing and monkey testing?
Ans:
Performance testing:
It checks the scalability, speed, stability characteristics of a system. The performance is identified with achieving response time, throughput, and resource-utilization levels that meet the performance objectives for a project or a product.
Monkey testing:
It is a technique in software testing where the user tests the application by providing random inputs, checking the behaviour of the application or trying to crash the application.
9. What do you understand by the test case?
Ans: Test case is a set of conditions or variables which are set by the tester for determining a system under test would satisfy the requirements and work accurately.
10. Can automation testing replace manual testing?
Ans: No. Automation testing would never become the replacement for manual testing as it cannot automate each and every scenario. Manual testing helps in understanding the entire problem and would explore all the possibilities of tests with more flexibility.
11. What is the difference between Positive and Negative Testing?
Ans:
Positive Testing:
- It determines whether the applications are working as expected. If any error is encountered during this testing then the test fails.
- In this testing, the tester always checks for an only valid set of values.
Negative Testing:
- This testing ensures that your application can gracefully handle invalid input or unexpected user behaviour.
- Testers will apply as much creativity as possible and validate the application against invalid data.
12. How do you define a format of writing a test case?
Ans: The format of the test case is as follows:
- Test case ID,
- Test case description
- Severity
- Priority
- Environment
- Build version
- Steps to execute
- Expected results
- Actual results
13. What is the procedure for manual testing?
Ans: This procedure comprises the following steps.
- Planning and Control.
- Analysis and Design.
- Implementation and execution.
- Evaluating exit criteria and reporting.
- Test Closure activities.
14. Name the type of documents in Software Quality Assurance?
Ans: The types of documents in software quality assurance are.
- User profiles.
- Test Metrics.
- Test log.
- Test summary report.
- Transaction Mix.
- Test incident report.
- Test cases and test plan.
15. What is Bug triage?
Ans: Bug triage is the process.
- To ensure bug report completeness.
- Assign and analyze the bug.
- Adjust bug severity properly.
- Assigning the bug to the proper bug owner.
- Set appropriate bug priority.
16. What is black box testing and what are the various techniques?
Ans:
- It is specification-based testing which analyses the functionality of a software or application without knowing much of its internal structure or design of the item.
- The purpose of this testing is to check the functionality of the system as a whole to make sure that it works correctly and meets user demands.
- Various black-box testing techniques involve the following:
- Equivalence Partitioning
- Boundary Value Analysis
- Decision Table Based Technique
- Cause-effect Graphing
- Use Case Testing
Explore Manual Testing Sample Resumes Download & Edit, Get Noticed by Top Employers !
Manual Testing Training Certification
- Master Your Craft
- Lifetime LMS & Faculty Access
- 24/7 online expert support
- Real-world & Project Based Learning
17. What is the test harness?
Ans:
- It is the process of arrangement which gathers software and test information for testing a program unit by running it under changing conditions like stress, load, data-driven, and monitoring its behaviour and outputs.
- Test Harness contains two main parts:
- A Test Execution Engine.
- Test script repository.
18. What is white box testing, and what are the various techniques?
Ans:
- It is structure-based testing that requires a profound knowledge of the code as it includes testing of some structural part of the application.
- The purpose of this testing is to enhance security, check the flow of inputs or outputs through application and to improve its design and usability.
- Various white-box testing techniques involve the following:
- Statement Coverage.
- Decision Coverage.
- Condition Coverage.
- Multiple Condition Coverage.
19. What are the different levels of manual testing?
Ans: There are four types of manual testing.
- Unit testing: It is the small piece of code referred to as a unit that can be logically isolated in a system. It is mainly focused on the functional correctness of the standalone module.
- Integration Testing: It is a level of software testing where individual units are combined and tested to verify if they are working after integration. The main aim of this testing is to test the interface between the modules.
- System Testing: In this testing, all the components of the software are tested as a whole in order to ensure that the overall product meets the requirements specified. There are dozens of types of system testing, including usability testing, regression testing, and functional testing.
- User Acceptance Testing: It is the final level of testing which determines whether or not the software is ready to be released.
20. What is the difference between static testing and dynamic testing?
Ans:
Static Testing:
- It is a white box testing technique that includes the process of exploring the records for recognizing the imperfections in the very early stages of SDLC.
- It is implemented at the verification stage.
- It is performed before the code deployment.
- The code error detection and execution of the program is not a concern in this type of testing.
Dynamic Testing:
- It includes the process of execution of code and is done at the later stage of the software development lifecycle. It validates and approves the output with the expected results.
- It starts during the validation stage.
- It is performed after the code deployment.
- Execution of code is necessary for dynamic testing.
21. Is it possible to achieve 100% testing coverage? How would you ensure it?
Ans: It is not possible to perform 100% testing on any of the products but you can apply these following steps to make it closer.
- Set a limit on the following factors:
- Percentage of test cases passed.
- The number of bugs found.
- Set a red flag if:
- Test budget is depleted.
- Deadlines are breached.
- Set a green flag if:
- The entire functionality gets covered in test cases.
- All critical and major bugs must have a ‘CLOSED’ status.
22. What are the functional test cases and non-functional test cases?
Ans:
Functional testing:
- It tests the “functionality” of a software or an application. It tests the behaviour of the software under test.
- Depending on the requirement of the client, a document called a software specification or requirement specification is used as a guide for testing an application.
Non-functional testing:
- In software terminology, when an application works as per the user’s expectation, smoothly and efficiently under any condition, then it is stated as a reliable application.
- Depending on quality, it is very critical to test these parameters. This type of testing is called non-functional testing.
23. What are the phases involved in the Software Testing Life Cycle?
Ans:
- Requirement Analysis:
The QA team analyzes the requirement in terms of what they will be testing and will figure out the testable requirements.
- Test Planning:
In this phase, the test strategy is defined. The Objective & the scope of the project or product is determined.
- Test case development:
Here, detailed level test cases are defined and developed. The testing team also prepares the test data for testing.
- Test environment setup:
The environment is a setup of software and hardware for the testing teams to execute test cases.
- Test execution:
It is the process of executing the code and comparing the expected and actual results.
- Test cycle closure:
It involves calling out the testing team member meeting and evaluating cycle completion criteria based on test coverage, quality, cost, time, critical business objectives, and software.
24. How do severity and priority relate to each other?
Ans:
Severity: It represents the gravity or depth of a bug. It describes the application point of view.
Priority: It specifies which bug should get fixed first. It defines the user’s point of view.
25. List the different types of severity.
Ans: The critical conditions of a bug is decided based on the context which identifies the conditions as low, medium or high.
- User interface defects – the severity will be Low.
- Boundary related defects – the severity will be Medium.
- Error handling defects – the severity will be Medium.
- Calculation defects – the severity will be High.
- Misinterpreted data – the severity will be High.
- Hardware failures – the severity will be High.
- Compatibility issues – the severity will be High.
- Control flow defects – the severity will be High.
- Load conditions – the severity will be High.
Get ahead in your career with our manual testing tutorial!
26. What is regression testing? When to apply it?
Ans:
- Testing again on a previously tested program such that it ensures no defects have not been found or uncovered in unchanged areas of the software, as a result of the changes made is called Regression Testing.
- It is tested system-wide. The main purpose is to ensure that a small change in one part of the system does not break existing functionality anywhere else in the system.
- Regression testing is recommended to perform on the occurrence of the following events:
- When new functionalities are added.
- In case of requirement changes.
- When there is a defect fix.
- When there are performance issues.
- In case of environment changes.
- When there is a patch fix.
27. What is test closure?
Ans:
- Test Closure is a document which gives a summary of all the tests conducted during the software development life cycle and also gives a detailed analysis of the bugs removed and errors found.
- This memo contains.
- The aggregate no. of experiments.
- Total no. of experiments executed.
- Total no. of imperfections discovered.
- Adding the total no. of imperfections settled.
- Total no. of bugs which are not settled.
- Total no. of bugs rejected etc.
28. What is a test plan and what does it include?
Ans: A test plan stores all possible testing activities to ensure a quality product. It gathers data from the product description, requirement, and use case documents.
The test plan document includes the following:
- Testing objectives.
- Test scope.
- Testing the frame.
- Environment.
- Reason for testing.
- Criteria for entrance and exit.
- Deliverables.
- Risk factors.
29. What is the difference between smoke testing and sanity testing?
Ans:
Smoke testing:
- Tests are executed on initial builds of a software product.
- It is used in measuring the stability of a newly created build to face off more rigorous testing.
- Smoke testing is a subset of acceptance testing.
- This involves documentation and scripting work.
- It follows the shallow & wide approach to include all the major functionalities without going much deep.
- It is executed by developers or testers.
Sanity testing:
- Tests are done on builds that have passed smoke tests & rounds of regression tests.
- It is used to evaluate the rationality & originality of the functionalities of software builds.
- Sanity testing is a subset of regression testing.
- This doesn’t emphasize any sort of documentation.
- It follows a narrow & deep approach involving detailed testing of functionalities and features.
- It is executed by testers.
30. What Is Baseline Testing?
Ans: Baseline testing is the process of running a set of tests to capture performance information. Baseline testing use the information collected to made the changes in the application to improve performance and capabilities of the application. Baseline compares present performance of application with its own previous performance.
31. What Is Benchmark Testing?
Ans: Benchmarking testing is the process of comparing application performance with respect to industry standard which is given by some other organization. Benchmark informs us where our application stands with respect to others. Benchmark compares our application performance with other company’s application’s performance
32. Explain Branch Coverage and Decision Coverage
Ans:
- Branch Coverage is testing performed in order to ensure that every branch of the software is executed at least. To perform the Branch coverage testing we take the help of the Control Flow Graph.
- Decision coverage testing ensures that every decision taking statement is executed at least once.
- Both decision and branch coverage testing is done to ensure the tester that no branch and decision taking statement, will not lead to failure of the software.
- To Calculate Branch Coverage:
Branch Coverage = Tested Decision Outcomes / Total Decision Outcomes.
33. What Is Mutation Testing & When Can It Be Done?
Ans:
- Mutation testing is a performed to find out the defect in the program. It is performed to find put bugs in specific module or component of the application. Mutation testing is based on two assumptions:
- Competent programmer hypothesis: according this hypothesis we suppose that program write the correct code of the program.
- Coupling effect: according to this effect collection of different set of test data can also find large and complex bugs.
34. Explain Bug Leakage And Bug Release.
Ans:
Bug Leakage: When customer or end user discovered a bug which can be detected by the testing team. Or when a bug is detected which can be detected in pervious build then this is called as Bug Leakage.
Bug release: is when a build is handed to testing team with knowing that defect is present in the release. The priority and severity of bug is low. It is done when customer want the application on the time. Customer can tolerate the bug in the released then the delay in getting the application and the cost involved in removing that bug. These bugs are mentioned in the Release Notes handed to client for the future improvement chances.
35. What Is Test Driver And Test Stub?
Ans:
- The Stub is called from the software component to be tested. It is used in top down approach.
- The driver calls a component to be tested. It is used in bottom up approach.
- Both test stub and test driver are dummy software components.
We need test stub and test driver because of following reason:
- Suppose we want to test the interface between modules A and B and we have developed only module A. So we cannot test module A but if a dummy module is prepare, using that we can test module A.
- Now module B cannot send or receive data from module A directly so, in these cases we have to transfer data from one module to another module by some external features. This external feature used is called Driver.
36. What Is Random Testing?
Ans: When tester performs testing of application by using random input from the input domain of the system, this is Random Testing.
Random testing involve following procedures:
- Selection of input domain.
- Randomly selecting any input from input domain.
- Using these test input testing of application is performed.
- The results are compared to the system specification. The test is a failure if any input leads to incorrect results, otherwise it is a success.
37. What Is Agile Testing?
Ans: Agile Testing means to quickly validation of the client requirements and make the application of good quality user interface. When the build is released to the testing team, testing of the application is started to find the bugs. As a Tester, we need to focus on the customer or end user requirements. We put the efforts to deliver the quality product in spite of short time frame which will further help in reducing the cost of development and test feedbacks will be implemented in the code which will avoid the defects coming from the end user.
38. What Is The Purpose Of Test Strategy?
Ans: We need Test Strategy for the following reasons:
- To have a signed, sealed, and delivered document, where the document contains details about the testing methodology, test plan, and test cases.
- Test strategy document tells us how the software product will be tested.
- Test strategy document helps to review the test plan with the project team members.
- It describes the roles, responsibilities and the resources required for the test and schedule.
- When we create a test strategy document, we have to put into writing any testing issues requiring resolution.
The test strategy is decided first, before lower level decisions are made on the test plan, test design, and other testing issues.
39. Explain Bug Life Cycle.
Ans: The bug is assigned to development project manager who will analyze the bug .He will check whether it is a valid defect. If not valid bug is rejected then status is REJECTED.
- If not, next the defect is checked whether it is in scope. When bug is not part of the current release .Such defects are POSTPONED
- Now, Tester checks whether a similar defect was raised earlier. If yes defect is assigned a status DUPLICATE
- When bug is assigned to developer. During this stage bug is assigned a status IN-PROGRESS
- Once code is fixed. Defect is assigned a status FIXED
- Next the tester will re-test the code. In case the test case passes the defect is CLOSED
- If the test case fails again the bug is RE-OPENED and assigned to the developer. That’s all to Bug Life Cycle.
40. What Is Error Guessing and Error Seeding?
Ans: Error Guessing is a test case design technique where the tester has to guess what faults might occur and to design the tests to represent them.
Error Seeding is the process of adding known faults intentionally in a program for the reason of monitoring the rate of detection & removal and also to estimate the number of faults remaining in the program.
41. Explain Compatibility Testing With An Example.
Ans: Compatibility testing is to evaluate the application compatibility with the computing environment like Operating System, Database, Browser compatibility, backwards compatibility, computing capacity of the Hardware Platform and compatibility of the Peripherals. Example, If Compatibility testing is done on a Game application, before installing a game on a computer, its compatibility is checked with the computer specification that whether it is compatible with the computer having that much of specification or not.
42. Explain Statement Coverage.
Ans:
Statement Coverage is a metric used in White Box Testing. Statement coverage is used to ensure that all the statement in the program code is executed at least once. The advantages of Statement Coverage are:
- Verifies that written code is correct.
- Measures the quality of code written.
- Determine the control flow of the program.
- To Calculate Statement Coverage:
- Statement Coverage = Statements Tested / Total No. of Statements.
43. What Are The Types Of Testing?
Ans: There are two types of testing:
- Static testing: Static testing is a technique used in the earlier phase of the development life cycle. The code error detection and execution of program is not concern in this type of testing. Also known as non-execution technique. The Verification of the product is performed in this testing technique like Code Reviews, Inspections; Walkthroughs are mostly done in this stage of testing.
- Dynamic testing: Dynamic Testing is concern with the execution of the software. This technique is used to test the dynamic behavior of the code. Most of the bugs are identified using this technique. These are the Validation activities. It uses different methodologies to perform testing like Unit Tests, Integration Tests, System Tests and Acceptance Testing, etc.
44. What Should Be Done After A Bug Is Found?
Ans: After finding the bug the first step is bug to be locked in bug report. Then this bug needs to be communicated and assigned to developers that can fix it. After the bug is fixes by the developer, fixes should be re-tested, and determinations made regarding requirements for regression testing to check that fixes didn't create problems elsewhere.
Subscribe to our YouTube channel to get new updates..!
45. What If The Software Is So Buggy It Can't Really Be Tested At All?
Ans: In this situation is for the testers to go through the process of reporting of bugs with the focus being on critical bugs. Since this type of problem can severely affect schedules, and indicates deeper problems in the software development process project managers should be notified, and provided with some documentation.
46. What Are The Types Of Maintenance?
Ans: There are four types of maintenance. They are:
- Corrective Maintenance
- Adaptive Maintenance
- Perfective Maintenance
- Preventive Maintenance
47. What Are The Advantages Of Waterfall Model?
Ans: The advantages of the waterfall model are:
- Simple to implement and required fewer amounts of resources.
- After every phase output is generate.
- Help in methods of analysis, design, coding, testing and maintenance.
- Preferred in projects where quality is more important than schedule and cost.
- Systematic and sequential model.
- Proper documentation of the project.
48. What Is Rapid Application Development Model (rad)?
Ans: The RAD model Rapid Application development (RAD) is incremental software development process models that focus on the development of the project in very short time. It is enhanced version of Waterfall model. It is proposed when requirements and solutions can be made independently system or software components, which is developed by different teams. After these smaller system components are developed, they are integrated to produce the large software system solution.
49. What Are The Advantages Of Black Box Testing?
Ans: The advantages of this type of testing include:
- Developer and tester are independent of each other.
- The tester does not need knowledge of any programming languages.
- The test is done from the point-of-view of the user.
- Test cases can be designed when specifications are complete.
- Testing helps to identify issues related to functional specifications.
50. What Is Software Review?
Ans: A software review can be defined as a filter for the software engineering process. The purpose of any review is to discover errors in the analysis, design, and coding, testing and implementation phases of the software development cycle. The other purpose of a review is to see whether procedures are applied uniformly and in a manageable manner. It is used to check the process followed to develop the software is right.
51. What Is Reverse Engineering?
Ans: By analyzing a final product the process of recreating a design is known as reverse engineering. Reverse engineering is the process followed in order to find difficult, unknown, and hidden information about a software system. It is important when software products lack proper documentation, and are highly unstructured, or their structure has degraded through a series of maintenance efforts. Maintenance activities cannot be performed without a complete understanding of the software system.
52. What Is Data Flow Diagram?
Ans:The Data Flow Diagram gives us information of the flow of data within the application.
- The DFD can be used to analyze the design of the application.
- It is a graphical representation of the structure of the data.
- A developer draws context level DFD first showing interaction between the different components of the application.
- DFD help in developing the software by clarifying the requirements and major functionalities.
- DFDs show the flow of data through a system.
- It is an important modeling tool that allows us to picture a system as a network of functional processes.
53. What Is Exploratory Testing?
Ans: Exploratory testing: means testing an application without a test plan and test script. In exploring testing test explore the application on the basis on his knowledge. The tester has no knowledge about the application previously. He explores the application like an end user and try to use it. While using the application his main motive is to find the bugs which are in the application.
54. Define Software Testing
Ans: It is a process to identify and validate the software that confirms that the system is working as per business needs. The method includes various activities to determine the software's defects for quality check, performance, utility, etc. It is conducted to correct the issues before the product is released to the market. Therefore, software testing is necessary.
55. Explain the benefits of Manual Testing.
Ans: The following are a few benefits of Manual Testing:
- It is a cost-effective way to test software.
- Manual Testing is easy to learn for new testers.
- It is perfect for making minimal changes to the software.
- This Testing is excellent for making changes to UI design dynamically.
- It is highly reliable in Testing.
- Best suitable for short-term project works.
56. What do you mean by Latent Defect in software testing?
Ans: A latent defect is an unidentified/hidden error or a bug within a software or application. The user may not be able to identify such errors. It needs to perform a special operation to find out the same.
57. What is meant by Test Data?
Ans: Test data in software testing is the information or input used to test software. It helps to determine whether the outcome equals the intended result. If the testing data is poorly designed, it may not be easy to test all the test scenarios, hindering the software's quality.
58. When will you decide to stop the testing process?
Ans: A software testing team will decide to stop the testing process when the below objections are completed.:-
- All test cases of the test life cycle are completed after fixing the last bug
- When the deadline comes to an end
- The code coverage ratio reaches the expected level
- The testing budget comes to an end
- The period of Alpha or Beta testing is over
59. What is meant by SDLC?
Ans: SDLC stands for Software Development Life Cycle, which includes the complete software development process. Such as data collection and analysis, coding and Testing, deploying and managing.
60. Define what a Testbed is?
Ans: In manual Testing, a Testbed is a testing environment useful to test an application, including hardware and software, to run the program that needs to be tested. Further, it consists of network setup, hardware and software, AUT, and others as per need.
61. Distinguish between the Bug, Error, and Defect.
Ans: A bug is a defect or fault identified during the software testing process. An error in software testing is a mistake or a misconception made by a software developer while coding. The defect is nothing but a difference between the actual and expected output of the Testing that a developer identifies.
62. What is meant by GUI testing?
Ans: The GUI or Graphical User Interface testing refers to testing the interface between the end-user and the software/application.
63. Define the advantage of designing tests early within the test life cycle.
Ans: The early designing of tests helps to easily prevent defects/errors before they are available in the code.
64. Define Risk-based Testing in Software Testing.
Ans: In Software testing, risk-based Testing is a testing strategy that applies the principles of risk management to the testing process. This type of Testing is based on the detailed risk analysis and prioritizing the risks at different levels. It prioritizes finding the highest risk first and getting it resolved.
65. What do you understand by End-to-End Testing?
Ans: E2E or End-to-end Testing is a testing methodology that covers the application flow across the testing process. It ensures that the apps behave as intended and the data flow is maintained across the processes.
66. Explain the purpose of Documentation in Manual Testing.
Ans: To achieve effective software testing results, the role of documentation becomes critical. It must contain the details like designs, specifications required, examination reports, configuration, test plans, test cases, changes in code, error reports, etc. Testing without proper documentation makes it difficult to view the overall project model. It helps to evaluate the testing effort you may require with the tracking and test coverage needs. Thus, it makes the testing process easier and more systematic and saves the entity time and cost.
67. When to start Static Testing?
Ans: Static Testing is carried out in the software development's early phases to prevent errors. In this Testing, it is easier to locate and resolve the various issues.
68. Define Boundary Value Analysis.
Ans: Boundary value analysis is a testing strategy used to test both partitions' boundary values, i.e., valid and invalid. It is a kind of Black box testing used to locate the issues at the boundaries of the input domain. Moreover, Boundary value analysis and Equivalence partitioning are closely related and used across the testing levels.
69. Define Software Testing
Ans: It is a process to identify and validate the software that confirms that the system is working as per business needs. The method includes various activities to determine the software's defects for quality check, performance, utility, etc. It is conducted to correct the issues before the product is released to the market. Therefore, software testing is necessary.
70. Explain the benefits of Manual Testing.
Ans: The following are a few benefits of Manual Testing:
- It is a cost-effective way to test software.
- Manual Testing is easy to learn for new testers.
- It is perfect for making minimal changes to the software.
- This Testing is excellent for making changes to UI design dynamically.
- It is highly reliable in Testing.
- Best suitable for short-term project works.
71. What do you mean by Latent Defect in software testing?
Ans: A latent defect is an unidentified/hidden error or a bug within a software or application. The user may not be able to identify such errors. It needs to perform a special operation to find out the same.
72. What is meant by Test Data?
Ans: Test data in software testing is the information or input used to test software. It helps to determine whether the outcome equals the intended result. If the testing data is poorly designed, it may not be easy to test all the test scenarios, hindering the software's quality.
73. When will you decide to stop the testing process?
Ans: A software testing team will decide to stop the testing process when the below objections are completed.:-
- All test cases of the test life cycle are completed after fixing the last bug
- When the deadline comes to an end
- The code coverage ratio reaches the expected level
- The testing budget comes to an end
- The period of Alpha or Beta testing is over
74. What is meant by SDLC?
Ans: SDLC stands for Software Development Life Cycle, which includes the complete software development process. Such as data collection and analysis, coding and Testing, deploying and managing.
75. Define what a Testbed is?
Ans: In manual Testing, a Testbed is a testing environment useful to test an application, including hardware and software, to run the program that needs to be tested. Further, it consists of network setup, hardware and software, AUT, and others as per need.
76. Distinguish between the Bug, Error, and Defect.
Ans: A bug is a defect or fault identified during the software testing process. An error in software testing is a mistake or a misconception made by a software developer while coding. The defect is nothing but a difference between the actual and expected output of the Testing that a developer identifies.
77. What is meant by GUI testing?
Ans: The GUI or Graphical User Interface testing refers to testing the interface between the end-user and the software/application.
78. Define the advantage of designing tests early within the test life cycle.
Ans: The early designing of tests helps to easily prevent defects/errors before they are available in the code.
79. Define Risk-based Testing in Software Testing.
Ans: In Software testing, risk-based Testing is a testing strategy that applies the principles of risk management to the testing process. This type of Testing is based on the detailed risk analysis and prioritizing the risks at different levels. It prioritizes finding the highest risk first and getting it resolved.
80. What do you understand by End-to-End Testing?
Ans: E2E or End-to-end Testing is a testing methodology that covers the application flow across the testing process. It ensures that the apps behave as intended and the data flow is maintained across the processes.
81. Explain the purpose of Documentation in Manual Testing.
Ans: To achieve effective software testing results, the role of documentation becomes critical. It must contain the details like designs, specifications required, examination reports, configuration, test plans, test cases, changes in code, error reports, etc. Testing without proper documentation makes it difficult to view the overall project model. It helps to evaluate the testing effort you may require with the tracking and test coverage needs. Thus, it makes the testing process easier and more systematic and saves the entity time and cost.
82. When to start Static Testing?
Ans: Static Testing is carried out in the software development's early phases to prevent errors. In this Testing, it is easier to locate and resolve the various issues.
83. Define Boundary Value Analysis.
Ans: Boundary value analysis is a testing strategy used to test both partitions' boundary values, i.e., valid and invalid. It is a kind of Black box testing used to locate the issues at the boundaries of the input domain. Moreover, Boundary value analysis and Equivalence partitioning are closely related and used across the testing levels.
84. What are the various types of Performance testing?
Ans: Performance testing is a useful method to ascertain the system's performance, speed, and scalability. There are different types of Performance testing-
- Load testing
- Scalability testing
- Spike testing
- Stress testing
- Volume testing
85. Define what a Bug Life Cycle is?
Ans: A bug is a kind of mistake or an error that occurs in the application and stops it from presenting the output required. While testing the application or software, if a bug is found, it goes through an explicit cycle from logging to solving. And it is called the Bug Life Cycle.
86. What information is required when reshaping my career?
Ans:
When reshaping your career, you will be required to provide the following information:
1. Full Name: Please provide your full name as it appears on official documents.
2. Email ID: Please provide a valid email address where we can contact you.
3. Phone Number: Please provide a contact number where we can reach you.
4. Country Code: Please specify the country code for your phone number.
5. Country: Please indicate the country you are currently residing in.
6. Total Work Experience: Please indicate the number of years you have been working in your field.
7. Years of Experience: Please specify the range of years of experience you have, such as student, 0-2 years, 2-5 years, 5-10 years, or 10+ years.
Once you have provided this information, you can apply and start reshaping your career.
87. How many learners love the platform?
Ans: The platform has gained an impressive following of 20,00,000 learners who absolutely love it!
88. What is
Ans: Configuration management refers to a comprehensive set of practices, guidelines, and tools employed by well-functioning organizations to facilitate the smooth operation and successful implementation of tasks. This applies to various aspects of software development and testing as well. Specifically, software configuration management (SCM) encompasses a range of processes, policies, and tools that are utilized to effectively organize, control, coordinate, and track different elements involved in software development. These elements include code, documentation, problem reports, change requests, designs, and tools, as well as compilers and libraries. Ultimately, configuration management aims to ensure that all components of a software project are properly managed and synchronized, enabling seamless collaboration and efficient progress towards desired outcomes.
89. What are the cases when you'll consider to choose automated testing over manual testing?
Ans:
Automated testing can be preferred over manual testing in several specific situations. First, when tests need to be performed periodically, automation can greatly simplify the process by executing the tests automatically at specified intervals. Secondly, in situations where tests involve repetitive steps, automation can save time and effort by automating the execution of these repetitive tasks.
Additionally, automated testing is particularly useful when tests need to run consistently in a standard runtime environment. By eliminating potential variations caused by manual execution, automation ensures more reliable and accurate results.
Furthermore, when time is limited during the testing phase, automation can be advantageous as it allows for faster test execution, reducing the overall testing timeline. This is especially useful when a large amount of code needs to be repeatedly tested.
Lastly, with automated testing, detailed reports can be generated after every test execution. This is valuable for tracking and analyzing the test results, providing insights into the system's functionality and identifying any potential issues.
In summary, the cases where automated testing is preferred over manual testing include periodic test execution, repetitive test steps, the need for a consistent runtime environment, time constraints, a significant amount of code to be tested repeatedly, and the requirement for detailed reports after each execution.
90. What is a cause-effect graph?
Ans:
A cause-effect graph, also called a cause-and-effect diagram or Ishikawa diagram, is a powerful visual tool used for problem-solving and root cause analysis. It was originally designed by Kaoru Ishikawa, a Japanese quality control expert, and is commonly referred to as a "fishbone diagram" due to its resemblance to a fish skeleton.
The purpose of a cause-effect graph is to help identify and comprehend the potential causes that lead to a particular problem or effect. This diagram is especially valuable in understanding the intricate relationships between various factors that contribute to an issue.
The cause-effect graph consists of several crucial components that aid in organizing and analyzing the causes of a problem. Firstly, there is the "effect", which represents the problem or issue that needs to be addressed. The effect is placed at the head of the diagram, depicting the ultimate outcome or consequence of the problem.
Next, we have the "major causes", which are the primary categories or broad factors that could contribute to the problem. These major causes are typically depicted as branches stemming from the main horizontal line, which acts as the "spine" of the fishbone diagram. Each major cause represents a significant area where potential reasons behind the problem can be explored.
Within each major cause branch, various "sub-causes" or specific factors are identified. These sub-causes delve deeper into the major causes and represent more detailed and specific factors that could potentially be contributing to the problem at hand. They are illustrated within the branches of the diagram, further breaking down the major causes into more manageable and understandable components.
By utilizing a cause-effect graph, individuals or teams can visually map out and analyze the potential causes of a problem. This graphical representation enables a comprehensive exploration of the relationships and interactions between different factors, leading to a better understanding of the root causes behind the issue. Ultimately, the cause-effect graph serves as a valuable roadmap for problem-solving and facilitates the implementation of effective solutions.
91. What if an organization is growing so fast that fixed testing processes are impossible? What to do in such situations?
Ans:
When an organization experiences rapid growth, making it challenging to implement fixed testing processes, several strategies can be employed to tackle this situation effectively:
1. Adaptability is key: Embrace the dynamic nature of growth by accepting that fixed testing processes might not be feasible. Instead, focus on establishing flexible and adaptable testing approaches that can accommodate the fast-paced environment.
2. Invest in skilled professionals: Hiring talented individuals who possess strong expertise in testing is crucial. Skilled testers can quickly adapt to changing circumstances, ensuring quality remains a top priority even in a rapidly growing organization.
3. Prioritize quality: Management should prioritize quality issues ruthlessly. By maintaining a laser-like focus on customer satisfaction, the organization can align its testing efforts with the most critical areas that impact end-users. This targeted approach allows for efficient testing despite the fast-paced growth.
4. Foster a quality-driven culture: Develop a clear understanding of what quality means to the end-user throughout the entire organization. By ensuring that all employees comprehend the importance of delivering a high-quality product, everyone becomes responsible for maintaining quality standards, even in the absence of fixed testing processes.
5. Implement continuous monitoring and feedback: Establish mechanisms for continuous monitoring and feedback loops. This involves leveraging user feedback, rigorous monitoring of performance metrics, and regularly collecting data throughout the development cycle. By monitoring and acting on feedback, the organization can proactively identify and address potential quality issues without relying solely on fixed testing processes.
6. Automate testing where possible: Embrace automation to streamline and accelerate the testing process. By automating repetitive and routine tests, the organization can save time and resources, allowing for efficient testing even in fast-growing scenarios.
7. Emphasize collaboration: Encourage collaboration and open communication within the organization. Cross-functional teams can often provide valuable insights and perspectives, leading to improved testing practices even in the absence of fixed processes.
In summary, when faced with rapid growth that makes fixed testing processes impossible, organizations should prioritize adaptability, hire skilled professionals, focus on quality, foster a quality-driven culture, implement continuous monitoring and feedback mechanisms, leverage automation, and encourage collaboration. These strategies can help maintain a high standard of testing even during periods of rapid expansion.
92. What are the Experience-based testing techniques?
Ans:
Experience-based testing techniques are approaches that focus on discovery, investigation, and learning through the expertise and skills of the tester. These techniques involve studying and analyzing the product to develop effective test strategies and test cases. Two commonly used experience-based testing techniques are:
1. Exploratory Testing: This technique relies on the tester's knowledge, intuition, and creativity to design tests on the fly. Testers explore the software application, taking an active role in learning about its features, functionality, and potential risks. By continuously adapting and adjusting their approach based on real-time feedback, exploratory testing allows testers to uncover defects and discover new testing scenarios efficiently.
2. Error Guessing: Error guessing relies on the tester's experience and insight to anticipate and identify potential defects by deliberately guessing where errors might occur. Testers leverage their domain knowledge, previous experience, and understanding of common pitfalls to logically hypothesize and create test cases that target specific error-prone areas. This technique enables testers to proactively seek out vulnerabilities and defects that might otherwise go unnoticed, helping to improve the overall quality of the software.
Through the application of these experience-based testing techniques, testers can effectively identify and address potential issues, ensuring comprehensive test coverage and delivering a high-quality product to end users.
93. What is the term
Ans: When it comes to testing, the term "quality" refers to a software product that is free from significant defects, meets the specified requirements, and is deemed satisfactory by the customer. However, it's important to note that the concept of quality can be subjective and vary depending on who the customer is and their role in the project. For instance, the accounting department may associate quality with financial profitability, while end-users are likely to prioritize a user-friendly experience and software that operates without any bugs. Ultimately, the definition of quality in testing is influenced by the perspectives and expectations of the various stakeholders involved.
94. What is Defect Cascading in Software Testing?
Ans:
Defect Cascading in Software Testing refers to the phenomenon where the existence of an undetected defect in an application triggers the occurrence of other defects. This process usually occurs during the testing phase of software development. If a defect goes unnoticed or is not thoroughly addressed during the initial testing, it can lead to a chain reaction of subsequent defects, thus causing multiple issues to arise in the later stages of development.
One of the challenges with defect cascading is that it makes it difficult to identify the original cause or affected feature. As more defects are triggered and spread throughout the application, it becomes increasingly complex to pinpoint the root cause of the issues. Even if testers attempt to create separate test cases to address this problem, solving it can still be quite challenging and time-consuming.
In summary, Defect Cascading is a situation in software testing where an undetected defect sets off a chain reaction, resulting in multiple defects and making it challenging to identify the original cause or affected feature.
95. What is the pesticide paradox? How to overcome it?
Ans:
The pesticide paradox refers to a phenomenon in software testing where repeating the same test cases over time leads to a decrease in the detection of new bugs. It occurs because developers become accustomed to the specific test cases and become more cautious in those areas where previous defects were found. This narrow focus might lead to oversight in other areas that could still have undiscovered bugs.
To overcome the pesticide paradox, two approaches can be employed:
1. Writing a new set of test cases: By designing a completely new set of test cases that target different parts of the software, testers can uncover bugs that were missed in the previous testing cycles. This method ensures that different aspects of the software are thoroughly examined and minimizes the chances of overlooking potential defects.
2. Adding new test cases to the existing set: Another approach is to create additional test cases that complement the existing ones. By expanding the range of tests, more areas of the software are explored, increasing the likelihood of discovering new defects. This method broadens the focus of the testing process and helps to mitigate the effects of the pesticide paradox.
By employing these methods, the possibility of finding more defects in the areas where the number of defects has dropped can be substantially increased. It ensures a comprehensive evaluation of the software and reduces the risk of complacency that arises from repetitive testing.
96. When should you opt for manual testing over automation testing?
Ans:
When deciding between manual testing and automation testing, it is important to consider several factors. Here are some possible scenarios in which opting for manual testing would be a better choice:
1. Complex or frequently changing requirements: If the requirements of the software are complex or constantly changing, manual testing allows for better adaptability. Manual testers can quickly modify and adjust their test cases to accommodate these changes.
2. Exploratory testing: When it comes to exploratory testing, where the aim is to uncover potential defects and issues through ad-hoc, unscripted testing, manual testing is often the preferred choice. It offers the flexibility and creativity needed to uncover unexpected bugs.
3. User interface (UI) testing: UI testing can be challenging to automate, especially if the application has a dynamic or complex user interface. Manual testers can accurately assess the visual components of the UI, as well as test for usability and user experience.
4. Usability and user experience testing: Manual testing is ideal for evaluating usability and user experience aspects of a software application. Testers can provide subjective feedback and observations that automated tests may not capture adequately.
5. Regression testing on small projects: For small-scale projects with limited time and resources, manual regression testing can be more efficient and cost-effective than investing in automation frameworks.
6. Rapid feedback during development: In the initial stages of development or when new features are being implemented, manual testing allows for faster feedback. Testers can quickly identify issues and communicate them with the development team, enabling swift resolution.
It is important to note that manual testing has certain limitations, such as being time-consuming, prone to human errors, and not suitable for repetitive or large-scale testing efforts. In such cases, automation testing can be a more efficient and reliable approach. Ultimately, the choice between manual and automation testing should be based on the specific requirements, constraints, and objectives of the testing project.
97. When should testing end?
Ans: Determining the proper conclusion of software testing requires achieving specific testing objectives while also meeting the designated quality criteria. Testing should extend until all predefined test cases have been executed, identified defects have been resolved, and the software performs as intended. However, several factors need consideration including time constraints, budget limitations, and the acceptable level of risk. It is important to acknowledge that it is nearly impossible to completely eliminate all defects. Therefore, the decision to terminate testing should be based on an evaluation of whether the benefits obtained from conducting additional tests outweigh the resources expended. Striking a balance between comprehensive testing and timely release is crucial in ensuring that the software remains stable, functional, and aligned with user expectations.
98. What is a test scenario?
Ans: A test scenario in the realm of software testing serves as a comprehensive and detailed description of a specific functionality that needs to be tested. It encompasses a set of conditions, inputs, and expected outcomes which testers should adhere to during the testing process. By mimicking real-world interactions and operations, test scenarios help to expose any defects or shortcomings in the software being tested, ensuring that it aligns with the specified requirements. These test scenarios play a crucial role in the early identification of issues, thereby allowing for timely resolutions prior to the software's release. Ultimately, the utilization of well-defined test scenarios contributes greatly towards the development of a robust and reliable software product.
99. What are the two main categories of software testing?
Ans:
There are two main categories of software testing: manual testing and automation testing.
Manual testing is the traditional approach where testers manually execute test cases without utilizing any test automation tools. This means that the testers physically interact with the software application, conducting various tests to ensure its functionality, usability, and reliability. Manual testing involves step-by-step execution of test cases, and it requires human intuition and observation skills to identify and report any issues or bugs.
On the other hand, automation testing involves the use of tools, scripts, and software to perform test cases through a predefined set of actions. With automation testing, repetitive and time-consuming tests can be easily executed by replacing manual human activity with systems or devices that enhance efficiency. Automation testing saves time and resources, as it allows for the repeatable execution of test cases, thereby increasing the overall effectiveness of the testing process.
Both manual testing and automation testing are essential components of software testing. Manual testing provides real-time feedback and allows for in-depth analysis and exploration of the application, while automation testing saves time and effort by efficiently executing repetitive tests. The choice between manual and automation testing depends on various factors such as project requirements, resources, time constraints, and the complexity of the software being tested.
100. Why is Software Testing Required?
Ans:
Software testing is a crucial process that is necessary to ensure the quality and reliability of a software product. There are several compelling reasons why software testing is required:
1. Identification of defects and errors: Testing helps in identifying any flaws or errors that may have occurred during the development phases. By detecting and rectifying these issues early on, software testers can help in minimizing potential problems that could arise later.
2. Early issue detection and reduced coding cycles: Testing at the initial stages of development allows for the early detection of issues. By identifying problems early, software testing helps in reducing the number of coding cycles, ultimately leading to more efficient and timely software development.
3. Lower maintenance cost: Thorough testing ensures that the software application requires lower maintenance in the long run. By detecting and fixing potential issues, testers contribute to the creation of a more reliable and stable software product, which translates to lower maintenance costs for the organization.
4. Improved customer satisfaction: Testing is essential for ensuring that the customer finds the organization reliable. By thoroughly testing the software application, organizations can provide a high-quality product that meets customer expectations, resulting in increased customer satisfaction and trust.
5. Bug-free software and quality assurance: Testing plays a vital role in ensuring that the software product is free from bugs and errors. By conducting comprehensive tests, software testers can verify whether the product meets the required quality standards. This helps in delivering a product that is of high quality, consistent, and reliable.
6. Prevention of system failures: Software testing ensures that the application does not result in any failures during its usage. By rigorously testing the software's functionalities, compatibility, and performance, testers can identify and rectify any issues that could lead to system failures, ensuring a smooth user experience.
In conclusion, software testing is essential as it helps in identifying and rectifying defects, reduces coding cycles, lowers maintenance costs, improves customer satisfaction, ensures bug-free software, and prevents system failures. By conducting comprehensive testing, organizations can release a reliable and high-quality software product to the market.
101. How can I get personalized resources in my inbox?
Ans: To receive personalized resources in your inbox, you can take advantage of our tailored email service. By subscribing to this service, we will curate and share resources that align with your specific interests, needs, and preferences. Whether it's articles, ebooks, videos, or helpful tools, we ensure that the content you receive is relevant, useful, and customized to your requirements. To get started, simply sign up and provide us with information about your areas of interest, and we will fill your inbox with valuable resources that cater to your specific needs.
102. What is your approach towards a severely buggy program? How would you handle it?
Ans:
How should the individual fixes be rigorously tested through unit testing?
Rigorous unit testing is necessary to ensure the stability and reliability of the program after bug fixes. The individual fixes should be thoroughly tested through unit testing to ensure they do not introduce new problems or regressions. This step helps to validate the effectiveness of the fixes and ensures that the program functions as intended.
How should fixes be developed to address the identified issues?
Fixes should be developed to address the identified issues in a systematic manner. It is important to develop patches or fixes that not only resolve the immediate problems but also consider the potential implications on other parts of the program. This ensures a comprehensive and effective resolution to the bugs.
How should a thorough investigation be conducted to identify the root causes of the bugs?
Conducting a thorough investigation is essential to identify the root causes of bugs. This involves reviewing the code, logs, and system behavior to pinpoint the areas that require correction. By analyzing these factors, testers can gain insights into the underlying issues causing the bugs.
How should bugs be isolated and reproduced in a controlled environment?
Reproducing bugs in a controlled environment is crucial to understanding their triggers and conditions. By isolating the bugs, testers can gather valuable information about the specific circumstances that lead to the issue, making it easier to diagnose the root causes.
How should bugs be categorized and prioritized based on severity and impact?
To categorize and prioritize bugs, it is essential to assess their severity and impact on the program's functionality. Critical bugs affecting core functionalities should be addressed first, while less severe bugs can be handled later in the process.
103. What is GUI testing?
Ans:
What are the benefits of addressing GUI issues early in the development cycle?
Addressing GUI issues early in the development cycle has several benefits. It allows for timely identification and resolution of design and functionality discrepancies, leading to improved usability and user satisfaction. Additionally, early detection and fixing of GUI issues contribute to a higher quality software product by preventing potential user frustrations and negative experiences.
Why is GUI testing important?
GUI testing is crucial as it guarantees a positive user experience and helps identify any discrepancies between the intended design and the actual appearance and behavior of the application. By addressing issues early in the development cycle, GUI testing enhances usability, user satisfaction, and the overall quality of the software product.
What are the specific aspects assessed in GUI testing?
GUI testing assesses various aspects such as layout, font, color schemes, responsiveness, and alignment of graphical elements. These aspects are evaluated to ensure a smooth and intuitive user experience aligned with design specifications.
What are the visual and interactive aspects evaluated in GUI testing?
GUI testing evaluates the visual and interactive aspects of a software application, including user interface elements such as buttons, menus, forms, and windows. The goal is to ensure these elements function correctly and display accurately.
Upcoming Manual Testing Training Certification Online classes
Batch starts on 21st Nov 2024 |
|
||
Batch starts on 25th Nov 2024 |
|
||
Batch starts on 29th Nov 2024 |
|