Interview questions on software testing
1. What is PDCA cycle and where testing fits in? Software testing is an important part of the software development process. In normal software development, there are four important steps, in short, the PDCA (Plan, Do, Check, Act) cycle. Plan: Define the goal and the plan for achieving that goal. Do/Execute: Depending on the plan strategy decided during the plan stage we do execution accordingly in this phase. Check: Check/Test to ensure that we are moving according to plan and we are getting the desired results. Act: During the check cycle, if any issues are there, then we take appropriate action accordingly and revise our plan. Developers and other stakeholders of the project do the "planning and building," while testers do the check part of the cycle. Therefore, software testing is done in check part of the PDCA cycle. 2. What is usability testing? Usability testing is a testing methodology where the end customer is asked to use the software to see if the product is easy to use, to see the customer's perception and the amount of time taken to use the software for a task. The best way to finalize the customer point of view for usability is by using prototype software during the initial stages. This way we can confirm that we are not missing anything from the user point of view. 3. Which is the best testing model? In real projects, tailored models are proven to be the best, because they share features from The Waterfall, Iterative, Evolutionary models, etc. and can fit into real life time projects. Tailored models are most productive and beneficial for many organizations. If it's a pure testing project, then the V model is the best. 4. What is the difference between a defect and a failure? When a defect reaches the end customer it is called a failure and if the defect is detected internally and resolved it's called a defect. 5. Should testing be done only after the build and execution phases are complete? In traditional testing methodology testing is always done after the build and execution phases. Fixing a defect in maintenance is ten times costlier than fixing it during execution. So the earlier we catch a defect the more cost effective it is. In the requirement phase we can verify if the requirements are met according to the customer needs. During design we can check whether the design documents cover all the requirements. In this stage we can also generate rough functional data. We can also review the design document from the architecture and the correctness perspectives. In the build and execution phase we can execute unit test cases and generate structural and functional data. And finally comes the testing phase, done in the traditional way i.e. run the system test cases and see if the system works according to the requirements. During installation we need to see if the hardware system is compatible with the software. Finally, during the maintenance phase when any fixes are made we can retest the fixes and follow the regression testing. Therefore, testing should occur in conjunction with each phase of the software development. 6. Will there be more defects in the design phase or in the coding phase? The design phase is more error prone than the execution phase. One of the most frequent defects which occur during design is that the product does not cover the complete requirements of the customer. Since the design phase drives the execution phase it is the most critical phase to test. The testing of the design phase can be done by reviews and inspections. On average, 60% of defects occur during design and 40% during the execution phase.
Written for
- Institution
- Software Testing
- Course
- Software Testing
Document information
- Uploaded on
- December 3, 2023
- Number of pages
- 11
- Written in
- 2023/2024
- Type
- Exam (elaborations)
- Contains
- Questions & answers
Subjects
-
1what is pdca cycle and where testing fits in