Ques.76. What is the difference between regression and retesting?
Ans. Regression testing involves testing the application to verify that a new code change doesn’t affect the other parts of the application. Whereas, in retesting, we verify if the fixed issue is resolved or not.
Ques.77. What is the difference between black-box and white-box testing?
Ans. Black-box testing is a type of testing in which the internal architecture of the code is not required for testing. It is usually applicable for system and acceptance testing.
Whereas white-box testing requires internal design and implementation knowledge of the application being tested. It is usually applicable for Unit and Integration testing.
Ques.78. What is the difference between smoke and sanity testing?
Ans. The difference between smoke and sanity testing is-
- Smoke testing is a type of testing in which all major functionalities of the application are tested before carrying out exhaustive testing. Whereas, sanity testing is subset of regression testing which is carried out when there is some minor fix in the application in a new build.
- In smoke testing, shallow-wide testing is carried out while in Sanity, narrow-deep testing (for a particular functionality) is done.
- The smoke tests are usually documented or are automated. Whereas, the sanity tests are generally not documented or unscripted.
Ques.79. What is code coverage?
Ans. Code coverage is the measure of the amount of code covered by the test scripts. It gives the idea of the part of the application covered by the test suite.
Ques.80. What is cyclomatic complexity?
Ans. Cyclomatic complexity is the measure of the number of independent paths in an application or program. This metric provides an indication of the amount of effort required to test complete functionality. It can be defined by the expression –
L – N + 2P, where:
L is the number of edges in the graph
N is the number of node
P is the number of disconnected parts
Ques.81. What is dynamic testing?
Ans. Testing performed by executing or running the application under test either manually or using automation.
Ques.82. What is an exit criteria?
Ans. An exit criteria is a formal set of conditions that specify the agreed-upon features or state of the application in order to mark the completion of the process or product.
Ques.83. What is requirement traceability matrix(RTM)?
Ans. In software testing, a traceability matrix is a table that relates the high-level requirements with either detailed requirements, test plans or test cases. RTM helps in ensuring 100% test coverage.
Ques.84. What is pilot testing?
Ans. Pilot testing is testing carried out as a trial by a limited number of users to evaluate the system and provide their feedback before the complete deployment is carried out.
Ques.85. What is backend testing?
Ans. Backend testing is a type of testing that involves testing the backend of the system which comprises of testing the databases and the APIs in the application.
Ques.86. What are some advantages of automation testing?
Ans. Some advantages of automation testing are-
- Test execution using automation is fast and saves considerable amount of time.
- Carefully written test scripts remove the chance of human error during testing.
- Tests execution can be scheduled for nightly run using CI tools like Jenkins which can also be configured to provide daily test results to relevant stakeholders.
- Automation testing is very less resource-intensive. Once the tests are automated, test execution requires almost no time of QAs. Saving Qa bandwidth for other exploratory tasks.
Ques.87. What are some disadvantages of automation testing?
Ans. Some advantages of automation testing are-
- It requires skilled automation testing experts to write test scripts.
- Additional effort to write scripts is required upfront.
- Automation scripts are limited to verification of the tests that are coded. These tests may miss some error that is very glaring and easily identifiable to human(manual QA).
- Even with some minor change in the application, script update and maintenance is required.
Ques.88. What is mutation testing?
Ans. Mutation testing is a type of white box testing in which the source code of the application is mutated to cause some defects in its working. After that, the test scripts are executed to check for their correctness by verifying the failures caused the mutant code.
Ques.89. Write test cases for Pen.
Ans. Test cases of Pen
Ques.90. Write test cases for ATM Machine.
Ans. Test cases of ATM Machine
Ques.91. Write test cases for Login.
Ans. Test cases of Login Page
Ques.92. Write test cases for Lift.
Ans. Test cases of Lift
Ques.93. Write test cases for an ecommerce application.
Ans. Test cases of e-commerce application
For other test scenarios check our Test Scenarios Examples section.
Ques.94. What should be the psychology testing?
The two main stakeholders in the software development life cycle – Testers and Developers have different mindsets while approaching an application. Testers tend to have a more stringent approach to examining the software. Most of the time they are looking to “break the application”. Whereas, developers have the mindset to “make the application work”.
ISTQB has defined certain psychological factors that influence the success of testing-
- Independence – Testers should enjoy a certain degree of independence while testing the application rather than following a straight path. This can be achieved by different approaches like off-shoring the QA process, getting test strategies and other test plans by someone not following any sort of bias.
- Testing is often looked upon as destructive activity as it aims at finding flaws in the system. But QA personnel should present testing as a required and integral part, presenting it as constructive activity in the overall software development life cycle by mitigating the risks at early stages.
- More often than not, tester and developers are at the opposite end of the spectrum. Testers need to have good interpersonal skills to communicate their findings without indulging in any sort of tussle with the developers.
- All the communication and discussions should be focused on facts and figures(risk analysis, priority setting, etc). Emphasizing that the collaborative work of developers and testers will lead to better software.
- Empathy is one characteristic that definitely helps in testing. Testers empathizing with developers and other project stakeholders will lead to better relations between the two. Also, empathizing with end-users will lead to software with better usability of the product.
- Reference- ISTQB Foundation Level Syllabus – The Certified Tester Foundation Level in Software Testing
Ques.95. What is the difference between testing and debugging?
Ans. Testing is primarily performed by the testing team in order to find the defects in the system. Whereas, debugging is an activity performed by the development team. In debugging the cause of the defect is located and fixed. Thus removing the defect and preventing any future occurrence of the defect as well.
Another difference between the two is – testing can be done without any internal knowledge of software architecture. Whereas debugging requires knowledge of software architecture and coding.
Ques.96. Explain the Agile methodology?
Ans. The agile methodology of software development is based on an iterative and incremental approach. In this model, the application is broken down into smaller build on which different cross-functional teamwork together providing rapid delivery along with adapting to changing needs at the same time.
Ques.97. What is scrum?
Ans. A scrum is a process for implementing Agile methodology. In scrum, time is divided into sprints and on completion of sprints, a deliverable is shipped.
Ques.98. What are the different roles in scrum?
Ans. The different roles in scrum are –
- Product Owner – The product owner owns the whole development of the product, assigns tasks to the team and acts as an interface between the scrum team(development team) and the stakeholders.
- Scrum Master – The scrum master monitors that scrum rules get followed in the team and conducts scrum meetings.
- Scrum Team – A scrum team participate in the scrum meetings and perform the tasks assigned.
Ques.99. What is a scrum meeting?
Ans. A scrum meeting is a daily meeting in the scrum process. This meeting is conducted by scrum master and update of the previous day’s work along with the next day’s task and context is defined in this meeting.
Ques.100. Explain TDD (Test Driven Development).
Ans. Test-Driven Development is a software development methodology in which the development of the software is driven by test cases created for the functionality to be implemented. In TDD, first, the test cases are created and then code to pass the tests is written. Later the code is refactored as per the standards.
A test plan is a formal document describing the scope of testing, the approach to be used, resources required and time estimate of carrying out the testing process. It is derived from the requirement documents(Software Requirement Specifications).
A test case is used to test the conformance of an application with its requirement specifications. It is a set of conditions with pre-requisites, input values and expected results in a documented form.
Defect density is the measure of the density of the defects in the system. It can be calculated by dividing the number of defects identified by the total number of lines of code(or methods or classes) in the application or program.
A defect priority is the urgency of fixing the defect. Normally the defect priority is set on a scale of P0 to P3 with P0 defect having the most urgency to fix.
Defect severity is the severity of the defect impacting the functionality. Based on the organization, we can have different levels of defect severity ranging from minor to critical or show stopper.