1
、黑盒测试与白盒测试各有哪些优缺点,应该如何结合才能解决漏洞和冗余问题?
答:
黑盒测试与软件如何实现无关,
测试用例开发可以与实现并行进行?/p>
因此可以压缩总的
项目开发时间,
但测试用例之间可能存在严重的冗余?/p>
还会有未测试的软件漏洞?/p>
白盒测试
局限于已经完成的代码行为当中,
离代码太近?/p>
如果黑盒测试结合白盒测试的覆盖率指标?/p>
行,
冗余和漏洞问题都会被发现并解决?/p>
如果发现同一条程序路径被多个功能性测试用例遍
历,就可以怀疑这种冗余不会发生新的缺陷,如果没有达到一定的
DD
—路径覆盖,则可?/p>
在功能性测试用例中存在漏洞?/p>
2
、简单描述一下软件测试工程师一般会承担的一些具体工作?/p>
答:
?/p>
1
)检视代码、评审开发文档(静态测试方法)
?/p>
2
)进行测试设计、写作测试文档(测试计划、测试方案、测试用例等?/p>
?/p>
3
)执行测试,发现软件缺陷,提交缺陷报告,并确认缺陷最终得到了修正
?/p>
4
)通过测试度量软件的质?/p>
3
、程序员应避免检查自己的程序,为什么?
答:
?/p>
1
?/p>
程序员从来不会承认自己写的程序有错误
?/p>
2
)程序员的测试思路有明显的局限?/p>
?/p>
3
)多数程序员没有经过严格正规的职业训练,常忽视测?/p>
?/p>
4
)程序员无良好的
BUG
跟踪和回归测试的习惯
4
、增量式集成测试的策略分为自顶向下、自底向上和混合式三种,请简述自底向上与自顶
向下集成测试的优缺点?/p>
答:
?/p>
1
)自顶向下增量式测试?/p>
—主要优点在于它可以自然的做到逐步求精,一开始就能让测试者看到系统的框架?/p>
?/p>
主要缺点是需要提供桩模块,并且在输入
/
输出模块接入系统以前,在桩模块中表示
测试数据有一定困难?/p>
?/p>
2
)自底向上增量式测试?/p>
?/p>
优点在于?/p>
由于驱动模块模拟了所有调用参数,
即使数据流并未构成有向的非环状图?/p>
生成测试数据也无困难?/p>
?/p>
主要缺点在于?/p>
直到最后一个模块被加进去之后才能看到整个程?/p>
(系统)
的框架?/p>
5
、如果软件执行了动态测试,静态测试就是毫无意义的,这句话是否正确?为什么?
答:这种说法是不正确的。静态测试和动态测试之间并不存在哪种方式更加有效的问题
.
?/p>
两者的关注点不同,
能够发现问题的程度也不同?/p>
静态测试一般关注的是程序结构?/p>
逻辑?/p>
及代码的风格?/p>
而动态测试更多关注结果与预期的比较?/p>
这二者不能够完全一个替代另外一
个?/p>
针对不同的软件和不同的潜在问?/p>
,
有可能是静态测试容易发?/p>
,
也有可能是动态测试更
加容易发?/p>
.
例如
,
诸如代码结构方面的问?/p>
,
在动态测试中就难以发?/p>
,
而在静态测试中?/p>
一目了?/p>
.