|Analyse the following highly simplified procedure:
Ask: “What type of ticket do you require, single or return?”
IF the customer wants ‘return’
Ask: “What rate, Standard or Cheap-day?”
IF the customer replies ‘Cheap-day’
Say: “That will be £11:20”
Say: “That will be £19:50”
Say: “That will be £9:75”
Now decide the minimum number of tests that are needed to ensure that all
the questions have been asked, all combinations have occurred and all
replies given. 3 4 5 6.
Which of the following statements is NOT correct? A minimal test set that achieves 100% LCSAJ coverage will also achieve 100% branch coverage. A minimal test set that achieves 100% path coverage will also achieve 100% statement coverage. A minimal test set that achieves 100% path coverage will generally detect more faults than one that achieves 100% statement coverage. A minimal test set that achieves 100% statement coverage will generally detect more faults than one that achieves 100% branch coverage.
Which of the following is NOT a white box technique? Statement testing Path testing Data flow testing State transition testing.
An important benefit of code inspections is that they: enable the code to be tested before the execution environment is ready. can be performed by the person who wrote the code. can be performed by inexperienced staff. are cheap to perform.
Given the following code, which statement is true about the minimum number of test cases required for full statement and branch coverage?
IF p+q > 100 THEN
IF p > 50 THEN
Print "p Large"
ENDIF 1 test for statement coverage, 3 for branch coverage 1 test for statement coverage, 2 for branch coverage 1 test for statement coverage, 1 for branch coverage 2 tests for statement coverage, 2 for branch coverage.
Consider the following statements:
i. 100% statement coverage guarantees 100% branch coverage.
ii. 100% branch coverage guarantees 100% statement coverage.
iii. 100% branch coverage guarantees 100% decision coverage.
iv. 100% decision coverage guarantees 100% branch coverage.
v. 100% statement coverage guarantees 100% decision coverage. ii is True; i, iii, iv & v are False i & v are True; ii, iii & iv are False ii & iii are True; i, iv & v are False ii, iii & iv are True; i & v are False.
What can static analysis NOT find? the use of a variable before it has been defined unreachable (“dead”) code memory leaks array bound violations.
Which of the following techniques is NOT a black box technique? state transition testing LCSAJ syntax testing boundary value analysis.
If the pseudocode below were a programming language ,how many tests are required to achieve 100% statement coverage?
1. If x=3 then
3. If y=2 then
8. Display_messageZ; 1 2 3 4.
Incorrect form of Logic coverage is: Statement Coverage Pole Coverage Condition Coverage Path Coverage.
Which of the following tools would you use to detect a memory leak? Static analysis Coverage analysis Dynamic analysis Memory analysis.
Which of the following is the odd one out? White Box Glass Box Structural Functional.
Given the Following program
IF X < Y
THEN Statement 1;
ELSE IF Y >= Z
THEN Statement 2;
McCabe’s Cyclomatic Complexity is : 2 3 4 5.
How many test cases are necessary to cover all the possible sequences of statements (paths) for the following program fragment? Assume that the two conditions are independent of each other : -
if (Condition 1)
then statement 1
else statement 2
if (Condition 2)
then statement 3
………… 2 3 4 Not achievable.
The Cyclomatic Complexity, V(G) is given by which formula V(G) = e - n + 2 V(G) = e - 2n + P V(G) = e - 2n None of the above.
Code Coverage is used as a measure of what? Defects Trends analysis Test Effectiveness Time Spent Testing.
Statement Coverage will not check for the following: Missing Statements Unused Branches Dead Code Unused Statement.
In data flow testing, objective is to find All dc-paths that are not du-paths V All du-paths All du-paths that are not dc-paths All dc-paths.
Unreachable code would best be found using: code reviews code inspections a coverage tool a test management tool a static analysis tool.
The cost of fixing a fault: Is not important Increases as we move the product towards live use Decreases as we move the product towards live use Is more expensive if found in requirements than functional design Can never be determined.
Consider the following statements about early test design:
i. early test design can prevent fault multiplication
ii. faults found during early test design are more expensive to fix
iii. early test design can find faults
iv. early test design can cause changes to the requirements
v. early test design takes more effort i, iii & iv are true. Ii & v are false iii is true, I, ii, iv & v are false iii & iv are true. i, ii & v are false i, iii, iv & v are true, ii us false i & iii are true, ii, iv & v are false.
One Key reason why developers have difficulty testing their own work is : Lack of technical documentation Lack of test tools on the market for developers Lack of training Lack of Objectivity.
We split testing into distinct stages primarily because: Each test stage has a different purpose. It is easier to manage testing in stages. We can run different tests in different environments. The more stages we have, the better the testing.
Which one of the following are non-functional testing methods? System testing Usability testing Performance testing Both b & c.