Analyze the black-box testing methodology for a date-handling class as described in Module 09 of the course handouts. Specifically, explain how you would design test cases for a DaysInMonth(month, Year) method. Explain the rationale for testing leap years (every 4th year), century boundaries (even 100s, such as 1900 vs 2000), standard months, February, and invalid values. Finally, write a Python class 'DateTestingSandbox' that implements the DaysInMonth logic with robust exception handling and executes a checklist of test cases that checks century exceptions, leap years, standard months, and invalid inputs, logging failures and outputs.
Ch 09: Testing Basics and Techniques
In-depth study of dynamic software testing, equivalence partitioning, boundary value analysis, cyclomatic complexity calculations, code inspections, walkthroughs, and peer review methodologies.
106 Questions106 MCQs0 Short Questions0 Long Questions
SEMESTER PASS
CS611 - Software Quality Engineering Examination Practice
Timed practice exam simulation for CS611 - Software Quality Engineering.
Showing 71 โ 80 of 106 Questions
Page 8 of 11
Rigorously analyze the role of Code Inspections and Test Checklists as described in Sections 09.16 and 09.17 of the course handouts. Explain the checklist questions asked during code inspections concerning redundancy, external libraries, execution time, code style, and symbolic constants. Differentiate these inspection items from a 'Test Checklist'. Finally, write a Python class 'CodeInspectionAutomator' that takes a source code string and programmatically checks for hardcoded magic numbers, uncalled procedures, and inconsistent formatting/style, generating a detailed SQA compliance report.
Discuss the process of 'Inspection' as a formal static testing methodology based on Module 09 of the course handouts. Detail the role of the trained facilitator, the objective of evaluating compliance with standards, and the importance of documenting findings. Finally, write a Python class 'SQAFormalInspectionEngine' that models this formal static testing. The class should allow setting up rules (checklists), registering a code file, assigning a non-author moderator, executing an inspection walkthrough that matches the code against the checklists, generating well-documented compliance report data, and logging all violations in a structured defect sheet.
Rigorously analyze Example 1 and Example 2 of White Box Testing as described in Module 09 of the course handouts. Discuss how Statement Coverage, Branch Coverage, and Path Coverage differ in their ability to detect subtle logic errors (such as the division-by-zero bug shown in calculate()). Then, write a Python class 'WhiteBoxCalculatorAnalyzer' that simulates the calculate(a, b, c) function. The simulator must trace the executed statements, track variable state modifications, calculate statement and branch coverage percentages, programmatically detect when a division-by-zero risk occurs, log a defect, and output a complete testing report.
What is the primary objective of software testing as defined in Software Quality Engineering?
Which QA activity is classified as the most formal type of static testing (review), typically led by a trained facilitator or moderator, with the primary purpose of evaluating compliance and directly identifying injected defects?
At the artifact level, what is considered the primary software artifact that must be tested during SQA activities?
Discuss the rationale for software testing in Software Quality Assurance. Detail why testing is considered a critical activity, what objective outcomes it provides to stakeholders, and explain how test cases are typically derived and verified at the artifact level.
At the artifact level, why is the software program or source code considered the primary target for software testing activities, as outlined in the course handouts?
What is the primary definition of software testing in Software Quality Engineering, representing the core mechanism of product verification?