- Statement/Block Coverage: Measures how many statements in the source code have been successfully executed and tested.
- Decision/Branch Coverage: This metric measures how many decision control structures were successfully executed and tested.
- Path Coverage: This ensures that the tests are conducted on every possible route through a section of the code.
- Function coverage: It measures how many functions in the source code have been executed and tested at least once.
Question-11. Can you describe the different types of test coverage techniques?
Question-12. Explain black-box testing, white-box testing, and grey-box testing.
- Black-box testing in software testing: In black-box testing, the system is tested only in terms of its external behaviour; it does not consider how the software functions on the inside. This is the only limitation of the black-box test. It is used in Acceptance Testing and System Testing.
- White-box testing in software testing: A white-box test is a method of testing a program that takes into account its internal workings as part of its review. It is used in integration testing and unit testing.
- Grey-box testing in software testing: A Gray Box Testing technique can be characterized as a combination of a black box as well as a white box testing technique used in the software testing process. Using this technique, you can test a software product or application with a partial understanding of its internal structure.
Question-13. Is Automation testing in agile methodology useful?
Question-14. Explain test scenarios, test scripts, and test cases in software testing.
- Test Case: Test Cases are a series of actions executed during software development to verify a particular feature or function. A test case consists of test steps, test data, preconditions, and postconditions designed to verify a specific requirement.
- Test Scenario: Usually, a test scenario consists of a set of test cases covering the end-to-end functionality of a software application. A test scenario provides a high-level overview of what needs to be tested.
- Test Scripts: When it comes to software testing, a test script refers to the set of instructions that will be followed in order to verify that the system under test performs as expected. The document outlines each step to be taken and the expected results.
Question-15. What is a bug in software testing?
There are many causes for the bugs—for example, poor design, sloppy programming, lack of version control, or miscommunication. Throughout development, developers introduce hundreds or thousands of bugs in the system. The goal of the tester is to uncover those bugs.
You can find a bug in many different ways, regardless of your role. When building the software, the software developer might notice the bug in another module, written by another developer or by themselves. The tester actively tries to find the bugs as part of a routine testing process. Finally, the users could see the bugs when the software is in production.
All bugs, no matter how they are found, are recorded into a bug-tracking system. A triage team triages the bugs and assigns a priority to the bug, and assigns the bug to a software developer to fix it. Once the developer resolves the problem, they check in the code and mark that bug as ready for testing. Once a bug is ready for testing, it goes to the tester, who tests the software to verify if it’s indeed fixed. If it is, then it’s closed. If not, they assign it to the same developer with a description of the exact steps to reproduce the bug. Some examples of popular bug-tracking systems include BugZilla, FogBugz, etc.
Question-16. State the difference between bugs and errors
Bugs | Errors |
---|---|
Software bugs are defects, which occur when the software or an application does not work as intended. A bug occurs when there is a coding error, which causes the program to malfunction. | Errors in code are caused by problems with the code, which means that the developer could have misunderstood the requirement or the requirement was not defined correctly, leading to a mistake. |
The bug is submitted by the testers. | Errors are raised by test engineers and developers. |
Logic bugs, resource bugs, and algorithmic bugs are types of bugs. | Syntactic error, error handling error, error handling error, user interface error, flow control error, calculation error, and testing error are types of errors. |
The software is detected before it is deployed in production. | The error occurs when the code is unable to be compiled. |
Question-17. What is a Test Plan? What does it include?
A test plan must include the following details:
- Test Strategy
- Test Objective
- Test Scope
- Reason for Testing
- Exit/Suspension Criteria
- Resource Planning
- Test Deliverables.
Question-18. What is a Test Report? What does it include?
- Test Objective
- Project Information
- Defect
- Test Summary
Question-19. What do you mean by Test Deliverables?
Before Testing Phase
- Test plans document.
- Test cases documents
- Test Design specifications.
During Testing Phase
- Test Scripts
- Simulators.
- Test Data
- Test Traceability Matrix
- Error logs and execution logs
After testing Phase
- Test Results/reports
- Defect Report
- Installation/ Test procedures guidelines
- Release notes
Question-20. What are different categories of debugging?
- Brute force debugging
- Backtracking
- Cause elimination
- Program slicing
- Fault tree analysis