Final Examination - SENG 438 W24 -
Software Testing, Reliability and Quality
Date/Time: March 6, 2024, 6:00 PM – 7:00 PM
Instructions:
1. This examination is closed-book and closed-noted.
2. Write your name and ID n
...
Final Examination - SENG 438 W24 -
Software Testing, Reliability and Quality
Date/Time: March 6, 2024, 6:00 PM – 7:00 PM
Instructions:
1. This examination is closed-book and closed-noted.
2. Write your name and ID number on all pages of this booklet. Pages with no name or ID number will not be
marked. Write your lecture session (L1: Dr. Behrouz Far, L2/L3: Dr. Kangsoo Kim)
3. There are 6 questions in this booklet. There is no selective question. You must answer all questions.
4. Write your answers on the same page below each question. You may use both the front and back sides of the
pages. If you need extra pages, please ask the supervisor for help.
5. The maximum mark in this exam is 60.
6. Absence or failure to hand in this booklet will be treated as a zero mark.
DO NOT TURN OVER UNTIL TOLD TO BEGIN
Full Name
UCID
Lecture SessionTotal: …………………… /100
Question Max points Your points
1 10
2 10
3 10
4 10
5 10
6 101
1. [10 marks total — 1 for each] Evaluate the following sentences by selecting “True” or “False”.
a) In white-box testing, 80% decision coverage also guarantees 80% statement coverage.
□ True □ False
b) Parametrized test is not supported in JUnit.
□ True □ False
c) In a control flow graph (CFG), the predicate nodes represent a single-entry single-exit statement.
□ True □ False
d) A test stub is required in the following case: Even if we have DB calls that just retrieves the data, it is
advised to create a stub because of the risk of DB availability.
□ True □ False
e) Mocking is not required in the following case: When the module under test has dependencies that
are not fully implemented.
□ True □ False
f) Mocking is required in the following case: Whenever the module under test updates the system states.
For example, whenever the module involves database calls that creates or updates or delete data from
the system.
□ True □ False
g) The MC/DC needs a much larger number of test cases compared to condition and decision coverage
tests.
□ True □ False
h) A test oracle indicates what has caused a test case to fail.
□ True □ False
i) Verification and validation of correct behavior of a software system are both achieved by unit testing.
□ True □ False
j) Data Flow Graph (DFG) is modified version of the Control Flow Graph (CFG) augmented by definitions
and uses of certain variables defined in the program.
□ True □ False2
2. [10 marks total — 1 for each] Select the correct answer:
a. What are disadvantages of manual testing?
1. The testing is very time efficient.
2. The testing cannot be repeated and programmed.
3. The testing demands testers with high programming skills.
4. The manual testing is very reliable.
b. What are the features of JUnit?
1. Annotation support for test cases
2. A platform for running test cases automatically and checking their results and giving feedback.
3. Test runner support to execute the test case
4. All of the above
c. What is the Unit Test Case?
1. A Unit Test Case is the combination of input data and expected output result.
2. A Unit Test Case is defined to test the functional dependency of a unit.
3. A Unit Test Case is a running instance of the SUT.
4. A Unit Test Case is a method that mimics behavior of the SUT
[Show More]