|
Errata |
Foundations
of Software Testing |
Reward
for reporting an error: US$2/first report. Minimum amount given $US5. Reward
given twice an year: Jan 1 and July 1. |
|
Aditya P. Mathur |
Errata |
|
|
|
||
|
|
||
|
|
||
Sincere thanks to Professors Praveen Ranjan Srivastava,
BITS, Pilani, India , Vahid Garousi, University of Calgary, Canada, Trupti
Gandhi, Patni Computers, Eric Wong, UT Dallas, and Wang Feng for a careful
reading of the book and reporting the errors.
Latest
update: November 3, 2008.
Total
errors reported: 74. Vahid Garousi: 34.
Wang Feng: 20. Praveen Srivastava:. 11. Author: 7. Eric Wong: 3. Trupti
Gandhi: 1.
|
Location (-x
points
to a line from the bottom of the page) |
Replace (or edit) this |
by this |
First reported by |
|
Page ix, right column, entry for chapter 5 |
Minimizations |
Minimization |
Author. 5/9/08 |
|
Page xvii, |
Table 4 |
Table is badly formatted. See the corrected table following this errata. |
Vahid Garousi. 7/17/08 |
|
Page 53, Program P1.3 |
, power |
Nothing (this variable is useless) |
Praveen Ranjan Srivastava. 2/20/08 |
|
Page 139, second para, line 4 |
effects E1 through E4 |
effects Ef1 through Ef4 |
Author. 5/9/08 |
|
Page 144, second para, line 2 |
first and fourth combinations |
second and fourth combinations |
Praveen Ranjan Srivastava. 2/20/08 |
|
Page 144, table below the second para, second row |
1 0 1 0 |
1 0 0 1 |
Trupti Gandhi. 9/17/08 |
|
Page 162, para 3 |
SN1 on the left side of each of the three equations |
SN4 |
Praveen Ranjan Srivastava. 2/25/08 |
|
Page 164, first equation for SN4 |
^ |
"onto" operator |
Praveen Ranjan Srivastava. 2/25/08 |
|
Page 164, second equation for SN4 |
< |
"set union" operator |
Praveen Ranjan Srivastava. 2/25/08 |
|
Page 165, Table 2.8 header |
BOR-constraints for predicate p2 derived in Example 2.28 |
BRO-constrains for predicate pr derived in Example 2.29 |
Eric Wong. 9/15/08 |
|
Page 165, Table 2.8 , label of column 3 from the left |
p |
pr |
Eric
Wong. 9/15/08 |
|
Page 190, Exercise 2.31, fist line |
p: |
pr: |
Eric Wong. 9/15/08 |
|
Page 202, line -11 |
……if O1(qi, r)=O2(qj, r) for any set V. |
……if O1(qi, s)=O2(qj, s) for any set V. |
Wang Feng. 10/23/08 |
|
Page 202, line -6 |
……, such that σ and a'are equivalent and …… |
……, such that σ and σ' are equivalent and …… |
Wang Feng. 10/23/08 |
|
Page 210, line -10 |
In figure 3.9, machine M4 has q1 missing when compared with machine M4. |
In figure 3.9, machine M4 has q1 missing when compared with machine M. |
Wang Feng. 10/23/08 |
|
Page 211, line -5 |
We caution the reader in that the technique …… |
We caution the reader that the technique …… |
Wang Feng. 10/23/08 |
|
Page 219, line -4 |
zb=b |
z=zb |
Wang Feng. 10/23/08 |
|
Page 219, line -2 |
Step 2(b)(ii) |
Step 2(b)(iii) |
Wang Feng. 10/23/08 |
|
Page 220, line -17 |
2(b)(ii) |
2(b)(ii) and (iii) |
Wang Feng. 10/23/08 |
|
Page 220, line -16 |
We now have p1=q1 and p2=q5. |
We now have p1=q5 and p2=q1. |
Wang Feng. 10/23/08 |
|
Page 220, line -5 |
As O(q3, a)=O(q4, a), |
As O(q3, a)≠O(q4, a), |
Wang Feng. 10/23/08 |
|
Page 221, line 19 |
for some j, |
for any j, |
Wang Feng. 10/23/08 |
|
Page 225, line -6 |
ba, baa, baaa, bbaaa, bba, |
ba, baa, baaa, bbaaa, |
Wang Feng. 10/23/08 |
|
Page 228, line -15 |
M(t)=M1(t) |
M(t)≠M1(t) |
Wang Feng. 10/23/08 |
|
Page 229, line -13 |
Thus, instead of moving to state qk’, where qk’=δ(qi, a), the IUT moves to state qk, where qk=δ(qi, a). |
Thus, instead of moving to state qk, where qk=δ(qi, a), the IUT moves to state qk’, where qk’=δ(qi, a). |
Wang Feng. 10/23/08 |
|
Page 232, line -6 |
δ(q1, bab) = q5 |
δ(q1, bab) = q1 |
Wang Feng. 10/23/08 |
|
Page 233, line 5 |
T2=R⊗ω=({a}‧W1)∪({bb}‧W4)∪({bab}‧W5)∪({baab}‧W5)∪({baaab}‧W5)∪({baaaa}‧W1) ={abaaa, aaa, aa}∪{bba,
bbaaa}∪{baba,
babaaa}∪ ={baaba, baabaaa}∪{baaaba, baaabaaa}∪{baaaabaaa, baaaaaa, baaaaa} |
T2=R⊗ω=({a}‧W1)∪({bb}‧W4)∪({bab}‧W1)∪({baab}‧W5)∪({baaab}‧W5)∪({baaaa}‧W1) ={abaaa, aaa, aa}∪{bba,
bbaaa}∪{babbaaa,
babaa, baba}∪ {baaba, baabaaa}∪{baaaba,
baaabaaa}∪ {baaaabaaa, baaaaaa, baaaaa} |
Wang Feng. 10/23/08 |
|
Page 236, line 8 |
baaaba, baaabaa, baaabaaa, baaabaaa |
baaaba, baaabaa, baaabaaa, baaabbaaa |
Wang Feng. 10/23/08 |
|
Page 236, line 13 |
=(R⊗ω)∪R‧X⊗ω) |
=(R⊗ω)∪((R‧X)⊗ ω) |
Wang Feng. 10/23/08 |
|
Page 236, line 14 |
R⊗ω=({a}‧W1)∪({bb}‧W4)∪({baab}‧W5)∪{bab}‧W1∪{baaab}‧W1∪{baaaa}‧W5 ={abaaa, aaa, aa, bba, bbaaa, baaaba, baaabaaa} |
R⊗ω=({a}‧W1)∪({bb}‧W4)∪({bab}‧W1)∪({baab}‧W5)∪({baaab}‧W5)∪({baaaa}‧W1) ={abaaa, aaa, aa, bba, bbaaa, babbaaa, babaa, baba, baaba, baabaaa, baaaba, baaabaaa, baaaabaaa, baaaaaa, baaaaa} |
Wang Feng. 10/23/08 |
|
Page 236, line 17 |
R‧Xω=(aa‧W1)∪(ab‧W4)∪ (bba‧W3(∪(bbb‧W4)∪ (baaba‧W2) ∪(baabb‧W5)
∪ (baba‧W1) ∪(babb‧W4)
∪ (baaaba‧W2) ∪(baaabb‧W5)
∪ (baaaaa‧W1) ∪(baaaab‧W5) ={aabaaa, aaaa, aaa, aba, abaaa, bbaa, bbaaa, bbba, bbbaaa, baababaaa, baabaaa, baabaa, baabba, baabbaaa} |
(R‧X) ⊗ω={aa, ab, bba, bbb, baba, babb, baaba, baabb, baaaba,baaabb, baaaaa, baaaab}⊗W =(aa‧W1)∪(ab‧W4)∪ (bba‧W3)∪(bbb‧W4)∪ (baaba‧W2) ∪(baabb‧W5)
∪ (baba‧W1) ∪(babb‧W4)
∪ (baaaba‧W2) ∪(baaabb‧W5)
∪ (baaaaa‧W1) ∪(baaaab‧W5) ={aabaaa, aaaa, aaa, aba, abaaa, bbaa, bbaaa, bbba, bbbaaa, bababaaa, babaaa, babaa, babba, babbaaa, baababaaa, baabaaa, baabaa, baabba, baabbaaa, baaababaaa, baaabaaa, baaabaa, baaabba,baaabbaaa, baaaaabaaa, baaaaaaa, baaaaaa, baaaaba, baaaabaaa} |
Wang Feng. 10/23/08 |
|
Page 237, line -1 |
δ(s, in(UIO(s))=out(UIO(s)). |
δ(s, in(UIO(s))) = t and O(s, in(UIO(s))) = out(UIO(s)). |
Wang Feng. 10/23/08 |
|
Page 299, end of line 1 in Step 1 in the algorithm |
2k-i |
2k-1 |
Praveen Ranjan Srivastava.
4/21/08 |
|
Page 350, table at the top, row corresponding to test t3 |
main.2, g1.start, g1.1, g1.2, g1.End, main.2 |
main3, g2.start, g2.1, g2.3, g2.End, main.3 |
Praveen Ranjan Srivastava. 5/14/08 |
|
Page 381, line just above Program P7.4 |
containerprogram |
container program |
Praveen Ranjan Srivastava. 3/26/08 |
|
Page 418, Program P6.6, line 2 |
// An nfinite loop |
// An infinite loop |
Vahid Garousi. 7/17/08 |
|
Page 421, Program P6.7, line 7 |
Indentation of comment |
Correct the indentation of that part of the comment which overflows to the following line. |
Vahid Garousi. 7/17/08 |
|
Page 421, equation just above the last para |
T'' |
T' |
Vahid Garousi. 7/17/08 |
|
Page 421, line 1 of last para |
all tests in T |
all test in T' |
Vahid Garousi. 7/17/08 |
|
Page 424, Table 6.1, entry in ast row and last column |
foo1(x, y) |
foo2(x, y) |
Praveen Ranjan Srivastava. 2/20/08 |
|
Page 425, Program P6.9, line 5 |
foo-1 |
foo1 |
Vahid Garousi. 7/17/08 |
|
Page 425, Program P6.9, line 7 |
foo-2 |
foo2 |
Vahid Garousi. 7/17/08 |
|
Page 427, line 1 |
1 and 3 |
1 and 4 |
Vahid Garousi. 7/17/08 |
|
Page 427, line 2 |
2 and 4 |
2 and 3 |
Vahid Garousi. 7/17/08 |
|
Page 427, test set T' |
t4: <A=2, B=1, C=5> |
t4: <A=2, B=1, C=1> |
Vahid Garousi. 7/17/08 |
|
Page 430, Example 6.10, line 2 |
font of g |
Change the font of g |
Vahid Garousi. 7/17/08 |
|
Page 450, second table, row labeled t3, rightmost column |
No |
Yes |
Vahid Garousi. 7/17/08 |
|
Page 470, third line from the bottom |
the second occurrence of 6-2 |
6-3 |
Praveen Ranjan Srivastava. 5/14/08 |
|
Page 470, Example 6.37, second para, line 1 |
labeled y>0 is |
labeled y>= 0 is |
Vahid Garousi. 7/17/08 |
|
Page 471, para 3, line 1 |
the second occurrence of 6-2 |
6-3 |
Author. 5/14/08 |
|
Page 475, Section 6.4.7, line 3 |
OEDC(K) |
OEDC(k) |
Vahid Garousi. 7/17/08 |
|
Page 475, section 6.4.7, second item in the enumerated list |
arrives at n along |
arrives at k along |
Vahid Garousi. 7/17/08 |
|
Page 494, Table 6.12, rightmost column |
f3(x,y,z) |
f2(x,y,z) |
Vahid Garousi. 7/17/08 |
|
Page 494, Table 6.12, rightmost column |
f4(x,y,z) |
f2(x,y,z) |
Vahid Garousi. 7/17/08 |
|
Page 494, Table 6.12, rightmost column |
f3(x,y,z) |
1, 2, 3, and 4 should be subscripts for f1, f2, f3, and f4 |
Vahid Garousi. 7/17/08 |
|
Page 497, Exercise 6.23, line 6 |
C=C1 or C2 or .... |
C=C1 or C2 or ... [1 becomes subscript in C1.] |
Vahid Garousi. 7/17/08 |
|
Page 497, Exercise 6.23, line 7 |
i1 |
i-1 |
Vahid Garousi. 7/17/08 |
|
Page 497, 6.24, statement labeled 14 |
(x<y or |
(x<y) or |
Vahid Garousi. 7/17/08 |
|
Page 497, 6.26, line 3 |
LCSAJ(MC/DC) |
MC/DC(LCSAJ) |
Vahid Garousi. 7/17/08 |
|
Page 498, 6.29, line 1 |
Is test case t in |
Is the test set T containing t only est case tp in |
Vahid Garousi. 7/17/08 |
|
Page 498, 6.29, line 3 |
if t is inadequate |
of T is inadequate |
Vahid Garousi. 7/17/08 |
|
Page 500, 6.37, line 1 |
Example 6.35 lists |
Example 6.34 lists |
Vahid Garousi. 7/17/08 |
|
Page 534, line 3 from the top |
L=link[L]; |
Should be indented to left align with statement 9. |
Vahid Garousi. 7/17/08 |
|
Page 534, line 3 from the top |
sum+data |
sum+data[L] |
Vahid Garousi. 7/17/08 |
|
Page 534, line 7 from the bottom |
sum+data |
sum+data[L] |
Vahid Garousi. 7/17/08 |
|
Page 534, line 2 from the bottom |
midCond |
Change font to match previous occurrencves |
Vahid Garousi. 7/17/08 |
|
Page 535, lines 1 and 2 |
sum |
SUM |
Vahid Garousi. 7/17/08 |
|
Page 535, line below equation (7.3) |
However, condition (7.1) will not |
However, condition (7.2) will not |
Vahid Garousi. 7/17/08 |
|
Page 608, 7.13, (a) line 4 |
obtained my mutating |
obtained by mutating |
Vahid Garousi. 7/17/08 |
|
Page 610, 7.20, item labeled 4 |
A |
^ |
Author. 6/6/08 |
|
Page 610, 7.20, line 5 |
y=x+1 |
Indent this line to align with line 4 |
Vahid Garousi. 7/17/08 |
|
Page 610, 7.20, lines 3 and 5 above the last para of this exercise |
|
Indent these lines to align with those above |
Vahid Garousi. 7/17/08 |
|
Page 612, 7.26, item 4 before item 6 |
4. It is applicable |
5. It is applicable |
Author. 6/6/08 |
|
Page 612, 7.27, line 2 |
MIller |
Miller |
Author. 6/6/08 |
|
Page 613, Step 3.3 |
{t1, t2} |
{t1, t2, t4} |
Praveen Ranjan Srivastava. 3/26/08 |
|
Page 615, reference item 8, line 2 |
AMC press |
ACM Press |
Author. 6/6/08 |
Corrected version of the Table on
page xvii:
|
Purpose |
Tool |
Source |
|
Combinatorial Designs |
AETG |
Telcordia Technologies |
|
Code Coverage Measurement |
Test manager (TM) |
IBM Rational (TM) |
|
|
JUnit |
Freeware |
|
|
CodeTest |
Freescale Semiconductor |
|
|
xSuds |
Telcordia Technologies |
|
Defect Tracking |
Bugzilla |
Freeware |
|
|
FogBugz |
Fog Creek Software |
|
GUI Testing |
WebCorder |
Cromson Solutions |
|
|
jfcUnit |
Freeware |
|
Mutation Testing |
muJava |
Professor Jeff Offutt (offutt@ise.gmu.edu) |
|
|
Proteum |
Profesor Jose Maldonado (jcmaldon@icmc.usp.br) |
|
Performance Testing |
Performance Tester |
IBM rational (TM) |
|
|
JMeter |
Apache for Java |
|
Regression Testing |
Eggplant |
Redstone Software |
|
|
xSuds |
Telcordia Technologhies |
|
Test Management |
ClearQuest (TM) |
IBM Rational (TM) |
|
|
TestManager |
IBM Rational (TM) |
Latest
update: June 6, 2008