软件测试面试题库及参考答案(4)

1.概念

  等价分配:软件有无限的测试案例,我们要想办法把软件的相似输入、输出、操作分成

  一组,来使无限的测试案例减小到同样有效的小范围,这个过程称为等价分配。

  边界条件:软件计划的操作界限所在的边缘条件,即如果超出这个边界条件,就可能会

  引出错误。

  2 原因

  输入量太大

  输出结果太多

  软件实现途径太多

  软件说明书没有客观标准。从不同的角度看,软件缺陷的标准不同。

  3 方法

  (1)数据测试:

  1) 确定输入的边界条件,对边界线上的及边界线两边的数据进行测试;

  2) 边界线可能是2 的乘方,默认值、空白值、零值等;每一个软件测试问题各不相同,

  可能包含格式各样边界的不同数据。

  (2)状态测试(软件的状态是指软件当前所处的情况或者模式)

  1) 每种状态至少访问一次;

  2) 测试看起来最常见最普遍的状态转换;

  3) 测试状态之间最不常用的分支;

  4) 测试所有错误状态及其返回值;

  5) 测试随机状态转换。

  21. 应该考虑进行如何测试的测试方法

  黑盒测试(Black box testing) ── 不考虑内部设计和代码,根据需求和功能进行测

  试。

  白盒测试(White box testing) ── 根据应用软件的代码的内部逻辑,按照代码的语

  句、分支、路径和条件进行测试。

  功能测试(functional testing)——对一个应用软件的功能模块进行黑盒测试。这种

  测试应当由测试人员进行。但这并不意味着程序员在推出软件之前不进行代码检查。(这一

  原则适用于所有的测试阶段。)

  系统测试── 针对全部需求说明进行黑盒测试,包括系统中所有的部件。

  回归测试(regression testing) ── 每当软件经过了整理、修改、或者其环境发生变

  化,都重复进行测试。很难说需要进行多少次回归测试,特别是是到了开发周期的最后阶段。

  进行此种测试,特别适于使用自动测试工具。

  负荷试验(load testing) ── 在大负荷条件下对应用软件进行测试。例如测试一个网

  站在不同负荷情况下的状况,以确定在什么情况下系统响应速度下降或是出现故障。

  压力测试(stress testing) ── 经常可以与"负荷测试"或"性能测试"相互代替。

  这种测试是用来检查系统在下列条件下的情况:在非正常的巨大负荷下、某些动作和输入大

  量重复、输入大数、对数据库进行非常复杂的查询,等等。

  性能测试(performance testing) ── 经常可以与"压力测试"或"负荷测试"相互

  代替。理想的"性能测试"(也包括其他任何类型的测试) 都应在质量保障和测试计划的文

  档终予以规定。

  可用性测试(usability testing) ── 是专为"对用户友好"的特性进行测试。这是

  一种主观的感觉,取决于最终用户或顾客。可以进行用户会见、检查、对用户会议录像、或

  者使用其他技术。程序员和测试人员通常不参加可用性测试。

  安装/卸载测试(install/uninstall testing) ── 对安装/卸载进行测试(包括全部、

  部分、升级操作)。

  安全测试(security testing) ── 测试系统在应付非授权的内部/外部访问、故意的损

  坏时的防护情况。这需要精密复杂的测试技术。

  兼容性测试(compatability testing) ── 测试在特殊的硬件/软件/操作系统/网络环

  境下的软件表现。

  α 测试(alpha testing) ── 在开发一个应用软件即将完成时所进行的测试。此时还

  允许有较小的设计修改。通常由最终用户或其他人进行这种测试,而不是由程序员和测试人

  员来进行。

  β 测试(beta testing) ── 当开发和测试已基本完成,需要在正式发行之前最后寻找

  毛病而进行的测试。通常由最终用户或其他人进行这种测试,而不是由程序员和测试人员来

  进行。

  22. 怎样估计测试工作量?

  效率假设:即测试队伍的工作效率。对于功能测试,这主要依赖于应用的复杂度,

  窗口的个数,每个窗口中的动作数目。对容量测试,主要依赖于建立测试所需数据

  的工作量大小。

  

本文已影响6827
上一篇:JAVA常见面试题库及解答 下一篇:php 经典面试题及答案

相关文章推荐

|||||