黑盒测试方法主要有等价类划分、边值分析、因—果图、错误推测等。
,Z~i{@2i1E0等价类划分实例:如登陆界面测试,可以划分为无效等价类和有效等价类。无效等价类中每个类别都应有测试用例,如:用户名或密码为空;特殊字符一个测试用例;超长字符一个测试用例等。
/AZ|k(OLw _|4t0划分等价类的方法:下面给出六条确定等价类的原则:
3?%r5rQ B)iyx*ed0 ①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。51Testing软件测试网RV4JYF+Q$I%Y7\F
②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。
U+R1cj#B3`J0 ③在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类.51Testing软件测试网!C]s\.c'Lh
n
④在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类.。
9pQ:ou
QM%@2R[0 ⑤在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。51Testing软件测试网9m!@*BD*SFF.YO
⑥在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。
dM0lt Z%C@A6c0 51Testing软件测试网;X@
oG%| dYV
边界值分析实例:如a>0,可以采用测试临近边界的有效数据,测试一个有效的数据,测试刚超过边界的无效数据。51Testing软件测试网Or1qa9e,w {
第一个减1/最后一个加1;开始减1/完成加1;空了再减/满了再加;慢上加慢/快上加快;最少值减1/最大值加1;刚好超过/刚好在内;短了再短/长了再长;早了更早/晚了更晚;最高加1/最低减1。51Testing软件测试网"m Mf8DL~6R
长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误。
y'm$RJ Q*sW(fv
Lp4yP0使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。
Zq1H!yuYc I3hg
d0 51Testing软件测试网+A;m$@4T-\
k
因果图实例:51Testing软件测试网K%{M8p#UhIq
因果图产生的背景:等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考 虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到,但多个输入条件组合起来可能出错的情况却被忽视了。
/l-q!@
RA~8r;m^0 因果图介绍:51Testing软件测试网R/`)c1R;sA{S
1)《1》四种因果关系:
@4x
b] Eo4]'lvgDi0 恒等:若i是1,则f也是1;否则f为0。
Q@ f7C:ii0 非:若i是1,则f是0;否则f为1。
*C)j$|/D*wn0 或:若i1或i2或i3是1,则f也是1;否则f为0。“或”可有任意输入。
(|V
Nj d*q-V9e0 与:若i1和i2是1,则f也是1;否则f为0。“与”也可有任意个输入。51Testing软件测试网1amh0k f5[S*v\
《2》因果图分别为:(图1)51Testing软件测试网b#N)nq#z0~
?/M,?&u/[5LuV0 2)《1》输入条件约束:输入状态相互之间还可能存在某些依赖关系。51Testing软件测试网X&|+c.^&lA{ Q7}
异:a和b中至多一个可能为1,即a和b不能同时为1。
CBn7IhSkr0 或:a、b和c中至少有一个必须是为1,即a、b和c不能同时为0。
9oET"@t,T\0 唯一:a和b必须有一个,且仅有1个为1。
f@#j&C3^0 要求:a是1时,b必须是1,即不可能a是1时b是0。
w)c1KR0@ T+d0 《2》输出条件约束:51Testing软件测试网z-F'z_a1P/w
强制:若结果是a是1,则结果b强制为0。51Testing软件测试网!W`#\,b ^/Ln1\
《3》图例:51Testing软件测试网{;lsr^
H9M"s`7Q]duk.e0错误推测实例:基于经验和直觉推测程序中所有可能存在的错误,从而有针对性地设计测试方法。如输入数据或输出数据为0的情况;输入表格为空或输入表格只有一行,等等。51Testing软件测试网SH.Gb$F
q7D
8~p$yo
b)l#pZZ0