软件测试笔试题

1.try..catch,catch捕获到异常,如果没有抛出异常语句(throw),不影响后续程序。

2.测试用例是测试程序正确性与否的关键。一个覆盖完全的测试用例可以测试出程序是否正确运行,是否有bug等等,是最重要的。

3.因为缺陷放大理论,在单元测试阶段发现的bug会在系统测试阶段被放大,放大倍数完全符合80/20理论

4.软件生命周期

又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。 生命周期的每一个周期都有确定的任务,并产生一定规格的文档(资料),提交给下一个周期作为继续工作的依据。按照软件的生命周期,软件的开发不再只单单强调“编码”,而是概括了软件开发的全过程。软件工程要求每一周期工作的开始只能必须是建立在前一个周期结果“正确”前提上的延续;因此,每一周期都是按“活动 ── 结果 ── 审核 ── 再活动 ── 直至结果正确”循环往复进展的。

编码和单元测试阶段是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。

5.测试用例要满足如下条件:1.所有条件可能至少执行一次取值;2.所有判断的可能结果至少执行一次。

6.比较判断与控制流常常紧密相关,测试时注意下列错误:

1. 不同数据类型的对象之间进行比较;

2. 错误地使用逻辑运算符或优先级;

3. 因计算机表示的局限性,期望理论上相等而实际上不相等的两个量相等;

4. 比较运算或变量出错;

5. 循环终止条件或不可能出现;

6. 迭代发散时不能退出;

7. 错误地修改了循环变量。

7.软件验收测试包括 正式验收测试, alpha测试, beta测试。

软件验收测试分为三类:正式验收测试;非正式验收测试其中包括α测试(由用户、测试人员、开发人员共同参与的内部测试。)和β测试(内测后的公测,即完全交给最终用户测试。)

8.白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、 逻辑覆盖法、基本路径测试法、 域测试 、符号测试、 路径覆盖和程序变异。

白盒测试法的覆盖标准有 逻辑覆盖 、循环覆盖和基本路径测试。

9.V模型:需求分析-验收测试,概要设计-系统测试,详细设计-集成测试,编码-单元测试

10.模块内部测试是单元测试,模块之间是集成测试

11.测试用例编写的依据:软件的需求文档,开发的设计文档

12.ctrl+c是强制中断程序的执行。

13.第一层:A 第二层:B,C,D第三层:E,,F,根据先深度后广度:ABECDF

14.系统测试包括:功能、性能、可靠性、安全性测试

15.自底向上测试是从“原子”模块(即软件结构最低层的模块)开始组装测试,因测试到较高层模块时,所需的下层模块功能均已具备,所以不再需要桩模块。

自底向上集成方法不用桩模块,测试用例的设计亦相对简单,但缺点是程序最后一个模块加入时才具有整体形象,需要开发驱动模块。

16.自底向上测试是从“原子”模块(即软件结构最低层的模块)开始组装测试,因测试到较高层模块时,所需的下层模块功能均已具备,所以不再需要桩模块。

自底向上集成方法不用桩模块,测试用例的设计亦相对简单,但缺点是程序最后一个模块加入时才具有整体形象,需要开发驱动模块。

17.无效等价类是指对于软件规格说明而言,是没有意义的、不合理的输入数据集合。

18.工件是加工过程中的生产对象。项目立项前,测试人员是不需要提供任何工件的。

19.系统集成测试主要包括以下过程:1. 构建的确认过程。 2. 补丁的确认过程。 3. 系统集成测试测试组提交过程。 4. 测试用例设计过程。 5. 测试代码编写过程。 6. Bug的报告过程。 7. 每周/每两周的构建过程。 8. 点对点的测试过程。 9. 组内培训过程。

20.界面元素测试包括:窗口测试、菜单测试、图标测试、文字测试、鼠标测试

21.而Beta测试看成是对一个晚期的、更加稳定的软件版本所进行的验收测试。

beta测试是指在一个或多个用户的场所进行的测试

Beta测试由软件的最终用户们在一个或多个客户场所进行。与Alpha测试 不同,开发者通常不在Beta测试的现场,因Beta测试是软件在开发者不能控制的环境中的“真实”应用。用户Beta测试过程 中遇到的一切问题(真实在或想像的),并且定期把这些问题报告给开发者。接收到在Beta测试期间报告的问题之后,开发者对软件产品进行必要的修改,并准备向全体客户发布最终的软件产品。

22.LoadRunner,是一种预测系统行为和性能的负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题, 可适用于各种体系架构的自动负载测试,能预测系统行为并评估系统性能。

其测试组件有

1.VuGen Load Generator(虚拟用户生成器)用于捕获最终用户业务流程和创建自动性能测试脚本 (也称为虚拟用户脚本)。

2.Controller (控制器)用于组织、驱动、管理和监控负载测试。

3.Analysis (分析器)有助于您查看、分析和比较性能结果。

23.桩模块(Stub)是指模拟被测试的模块所调用的模块,而不是软件产品的组成的部分。在自顶向下的集成过程中尤其有效。

24.自顶向下测试:是从程序的初始模块开始测试。

(1)该方***在早期发现顶层的错误。

(2)早期的程序框架可以进行演示

(3)需要开发桩模块辅助测试。有些甚至需要多个桩模块辅助,加大了桩模块本来的错误影响。

(4)测试完一个上层模块后,挑选哪个模块作为下一个测试模块,以及测试的顺序没有唯一的界定标准。

优点:较早地验证了主要控制和判断点;按深度优先可以首先实现和验证一个完整的软件功能;功能较早证实,带来信心;只需一个驱动,减少驱动器开发的费用;支持故障隔离。

缺点:柱的开发量大;底层验证被推迟;底层组件测试不充分。

25.软件调试技术:

试探法(强行排错法),

回溯法:人工沿着程序的控制流程往跟踪代码,直到找出错误根源为止

对分查找法:缩小错误的范围,

归纳演绎

原因排除法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

巳时桥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值