1. How does quality control differ from quality assurance?
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.
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?
- It is a static analysis technique.
- Here, the testing is done without executing the code.
- Examples of verification include Reviews, Inspection, and walkthrough.
- 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.
Subscribe to our youtube channel to get new updates..!
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
Manual Testing Training Certification
Weekday / Weekend Batches
4. What Is Difference Between Retesting And Regression Testing?
Ans: These are possible differences between retesting and regression.
- 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.
- 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?
- 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.
- 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?
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?
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?
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.
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?
- 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.
- 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
- 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?
- 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
17. What is the test harness?
- 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?
- 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?
- 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.
- 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?
- 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.
- 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?
The QA team analyzes the requirement in terms of what they will be testing and will figure out the testable requirements.
In this phase, the test strategy is defined. The Objective & the scope of the project or product is determined.
Here, detailed level test cases are defined and developed. The testing team also prepares the test data for testing.
The environment is a setup of software and hardware for the testing teams to execute test cases.
It is the process of executing the code and comparing the expected and actual results.
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?
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.
26. What is regression testing? When to apply it?
- 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?
- 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.
- Reason for testing.
- Criteria for entrance and exit.
- Risk factors.
29. What is the difference between smoke testing and sanity 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.
- 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.
Manual Testing Training Certification
- Master Your Craft
- Lifetime LMS & Faculty Access
- 24/7 online expert support
- Real-world & Project Based Learning
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
- 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?
- 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.
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?
- 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.
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.
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.
Submit an interview question