1. How is overloading different from overriding in object-oriented programming?
a. Overloading occurs between two methods in the same class and overriding occurs between methods in a class and one of its descendants.
-Answer given by 20BCS7024
2. Which of the following represents use of super () keyword?
a. Sub-classes can explicitly use their parents’ variables and methods using the keyword super ()
-Answer given by Sarah
3. While applying the mutation operator that deletes a method call, how is the value to be returned by the deleted method passed back to the caller method?
d. The value returned by the deleted method is replaced with a fixed, constant value
4. When mutation testing is applied as a black box testing technique to mutate the inputs, which of the following statements hold true?
b. Only the inputs are mutated, the program which is accepting the inputs remains the same.
5. When we change a method call is-divisible(a,b) to is-divisible(b,a) is an example of which of the mutation operators listed below?
b. Integration parameter variable exchange
6. State yes or no: The programming language Java does not support multiple class inheritance and hence each class only has a single parent
-Answer given by Shorya
7. Which of the following integration mutation operator represents changing the order of arguments in method invocations to be the same as that of another overloading method, if one exists?
c. Argument order change
8. State true or false: While testing inputs using mutation testing, the inputs always have to adhere to their underlying syntax.
9. Towards ensuring that mutation testing subsumes edge coverage, which of the following mutation operators are used?
a. Relational operator replacement.
10. Which of the statements below are true with reference to mutation testing subsuming all-defs coverage?
a. We need to consider strong mutation to be applied to the statements that contain variable definitions.