Database Reference
In-Depth Information
Table 2: Test cases and the statement test trace
Test Cases Statement Trace
Pay_Check
Stolen_Check
Update_Balance
T1
1, 2, 8
1, 2, 5
T2
1, 3, 7, 8
1, 3, 4, 5
1, 2
T3
1, 3, 4, 5, 8
1, 3, 4, 5
T4
1, 3, 4, 5, 6, 8
1, 3, 4, 5
1, 2
T5
1, 2, 5
T6
1, 2
T7
1, 3, 4, 5
T8
1, 2
Figure 6 summarizes the dependency relations existing between the various components.
Next, we demonstrate how the Component Firewall algorithm works by proposing a set of
changes to the system. In Table 2 we defi ne part of the testing scenarios and test cases that
have been used during the testing of the modules in this example.
Case 1
Change the defi nition of trigger Update_Balance . Instead of “after insert”, change it
to “after delete”. As a result of this modifi cation, component Pay_Check is not any more
Pay_Check
dependent on component Update_Balance . Consequently, all the test cases passing through
it are included in the retest list in addition to the test cases passing through component Up-
date_Balance . Thus, the retest list will consist of test cases T1, T2, T3, T4, T6, and T8.
Case 2
Add a not-null constraint to value_date column in table TRANSACTIONS. This column
is not listed within the insert list of the insert statement in module Pay_Check . However,
in our impact analysis we include this column as an implicit usage since it is set to null. By
adding not-null constraint to this column, the insert statement is using implicitly a modifi ed
component. Therefore, component Pay_Check will be affected because it is dependent on
Pay_Check
a modifi ed component. Consequently, all test cases passing through it are included in the
retest list. These are test cases T1, T2, T3, and T4.
Case 3
Statement 2 in function Stolen_Check is to be modifi ed. The statement, return(true),
Stolen_Check
becomes return(false). Therefore, component Stolen_Check is affected and component
Stolen_Check
Pay_Check that is dependent on it is marked as affected, and consequently all test cases
Pay_Check
passing through these affected components are included in the retest list. These are test cases
T1, T2, T3, T4, T5, and T7.
Search WWH ::




Custom Search