软件测试工程师面试基础题

上传人:206****923 文档编号:91112700 上传时间:2019-06-22 格式:DOC 页数:15 大小:405.61KB
返回 下载 相关 举报
软件测试工程师面试基础题_第1页
第1页 / 共15页
软件测试工程师面试基础题_第2页
第2页 / 共15页
软件测试工程师面试基础题_第3页
第3页 / 共15页
软件测试工程师面试基础题_第4页
第4页 / 共15页
软件测试工程师面试基础题_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《软件测试工程师面试基础题》由会员分享,可在线阅读,更多相关《软件测试工程师面试基础题(15页珍藏版)》请在金锄头文库上搜索。

1、软 件 测 试 复 习 内 容以下列举出来的问题大部分是要掌握的,可参考思维导图来看。1. 什么是测试?答:(美国电器和电子工程师协会)IEEE提出的软件工程标准术语,使用人工和自动手段来运行或测试某个系统的过程,目的在于检验它是否满足规定的需求或是弄清预期结果与实 际结果之间的差别。简单定义:找出软件中的BUG2. 为什么要测试?答:在软件开发过程中容易出现缺乏有效沟通,软件复杂,编程错误,需求不断变更,时间的压力,缺乏文档的代码,软件开发工具和人员的自大等原因引发的错误,通过测试能够找出其中的错误,解决错误,从而提高软件的质量3. 软件的生命周期分为哪几个阶段?具体的内容是什么?答:计划工

2、作内容1. 确定软件开发总目标;2. 给出软件的功能、性能、可靠性以及接口等方面的设想;3. 研究完成该项目的可行性,探讨问题解决方案;4. 对可供开发使用的资源、成本、可取得的效益和开发进度作出估计;5. 制定完成开发任务的实施计划。需求分析工作内容 对开发的软件进行详细的定义,由需求分析人员和用户共同讨论决定,哪些需求是可以满足的,并且给予确切的描述,写出软件需求说明书SRS (Software Requirement Specification)。设计工作内容设计是软件工程的技术核心,这个阶段需要完成设计说明书1. 概要设计(HLD),在设计阶段把各项需求转换成相应的体系结构,每一部分是

3、功能明确的模块;2. 详细设计(LLD),对每个模块要完成的工作进行具体的描述。编码工作内容把软件设计转换成计算机可以接受的程序,即写成以某个程序设计语言表示的源程序清单,建立数据库。测试工作内容测试是检验软件是否符合客户需求,达到质量要求,一般由独立的小组执行,测试工作分为:单元测试;集成测试;系统测试运行和维护工作内容这个阶段将软件交付用户投入正式使用,以后便进入维护阶段,可能有多种原因需要对它进行修改,如软件错误、系统软件升级、增强软件功能、提高性能等。4. 研发团队的组织构架与流程是什么?答:组织架构 软件开发组 开发经理 分析人员 设计人员 开发人员 软件测试组 测试经理 测试人员

4、配置管理组 配置经理 CMO(配置管理员)研发流程 瀑布模型 应用的最为广泛的一种模型,也是最容易理解和掌握的模型,然而它的缺陷也是显而易见的。 螺旋模型 综合了基本的瀑布式模型和演化/渐增原型方法。 RUP流程 所有工作流在各个阶段都有体现。 IPD流程 从整个产品角度出发,不仅仅针对研发。5. 测试阶段怎么划分?答:1. 测试计划阶段2. 测试设计阶段3. 测试实施阶段4. 测试执行阶段6. 什么是UT,IT,ST?它们有什么区别?答:UT:单元测试 IT:集成测试 ST:系统测试区别:测试方法考察范围评估标准单元测试控制流测法数据流测法排错测法分域测法单元内部的数据结构、逻辑控制、异常处

5、理等逻辑覆盖率集成测试自顶向下增至测试方法自底向上增至测试方法混合增至测试方法接口与接口数据传递关系,模块组合后的整体功能接口覆盖率系统测试恢复测试方法安全测试方法强度测试方法性能测试方法容量测试方法正确性测试方法可靠性测试方法兼容性测试方法这个系统对需求的符合度测试用例对需求规格的覆盖率7. 什么是回归测试?为什么要回归测试?回归测试的流程是什么?回归测试的测试策略有哪些?答:回归测试是指软件系统被修改或扩充(如系统功能增强或升级)后重新进行的测试,是为了保证对软件所做的修改没有引入新的错误而重新进行的测试。回归测试目的是验证缺陷得到了正确的修复,同时对系统的变更没有影响以前的功能。流程:1

6、. 在测试策略制定阶段,制定回归测试策略2. 确定需要回归测试的版本3. 测试版本发布后,按照回归测试策略来执行回归测试4. 回归测试通过,关闭缺陷跟踪单5. 回归测试不通过,缺陷跟踪单返回给开发人员,开发人员重新修改BUG.再次提交给测试人员回归测试测试策略:1. 完全重复测试:重新执行前期设计的用例,来确认问题修改的真确性和修改的扩散局部影响性2. 选择性重复测试:1) 覆盖修改法:针对被修改的部分,选取或重新构造测试用例验证没有错误再次发生的选择方法2) 周边影响法:该方法包括覆盖修改法,还要分析修改后对扩散的影响3) 指标达成法:先确定一个达成的指标,基于这种要求选择一个最小的测试用例

7、集合8. 画V&V模型?答:9. 软件质量的定义是什么?影响软件质量的因素是哪些?ISO 2000的八大原则是什么?答:定义:一个实体的所有特性,基于这些特性可以满足明显的或隐含的需求。而质量就是实体基于这些特性满足需求的程度因素:流程、技术、组织。流程:一组活动(活动是否都是必须的;活动角色之间的关系)过程:一组将输入转化为输出的相关联或相互作用的活动。原则;1. 以顾客为中心:组织依存于其顾客,因此,组织应理解顾客当前的和未来的需求,满足顾客要求并争取赶超顾客期望。2. 领导作用:领导者将本组织的宗旨.方向和内部环境编统一起来,并创造使员工能够充参与实现组织目标的环境。3. 全员参与:各级

8、人员是组织之本,只有他们的充分参与,才能使他们的才干为组织带来最大的收益。4. 过程方法: 将相关的资源和活动作为过程进行管理,可以更高效地得到期望的结果。 5. 管理系统方法:针对设定的目标,识别.理解并管理一个由相互关联的过程的过程所组成的体系,有助于提高组织的有效性和效率。6. 持续改进:持续改进是组织的一个永恒的目标。7. 基于事实的决策方法:对数据和信息的逻辑分析或直觉判断是有效决策的基础。8. 互利的供方关系:通过互利的关系,增强组织及其供方创造价值的能力。其中与软件产品产品优其相关有:(一.三.六.七项) 10. CMM/CMMI是什么?它的等级怎么划分?有什么目的?有什么作用?

9、答:(1)能力成熟度模型;一种比较流行的软件质量管理体系 (2)划分:初始级;可重复级;已定义级;已管理级;优化级;(3)目的:评估软件承包商能力协助软件组织改进过程,提高过程能力(4)作用:业界的实施标准 业界的一种交流语言 是中国企业获取国际订单的门槛 是向下采购的保障 是降低软件声场风险的有力手段11. 描述软件质量模型中的内容?答:功能性:当软件在指定的条件下使用时,软件产品提供满足明确和隐含需求的功能的能力1. 适合性 Suitability-软件产品为指定的任务和用户目标提供一组合适的功能的能力。2. 准确性 Accuracy-软件产品提供具有所需精确度的正确或相符的结果或效果的能

10、力。 3. 互操作性 interoperability-软件产品与一个或更多的规定系统进行交互的能力。 4. 保密安全性 security-软件产品保护信息和数据的能力,以使未授权的人员或系统不能阅读或修改这些信息和数据,而不拒绝授权人员或系统对它们的访问。 5. 功能性的依从性 functionality compliance-软件产品遵循与功能相关的标准、约定或法规以及类似规定的能力。这些标准要考虑国际标准、国家标准、行业标准、企业内部规范等。可靠性:在指定条件下使用时,软件产品维持规定的性能级别的能力1. 成熟性 maturity-软件产品为避免由软件中错误而导致失效的能力。2. 容错性

11、 fault tolerance-在软件出现故障或者违反指定接口的情况下,软件产品维持规定的性能级别的能力。 3. 易恢复性 recoverability-在失效发生的情况下,软件产品重建规定的性能级别并恢复受直接影响的数据的能力 4. 可靠性的依从性 reliability compliance-软件产品遵循与可靠性相关的标准、约定或法规的能力。易用性:在指定条件下使用时,软件产品被理解、学习、使用和吸引用户的能力 1. 易理解性 understandability-软件产品使用户能理解软件是否合适以及如何能将软件用于特定的任务和使用环境的能力。2. 易学性 learnability-软件产

12、品使用户能学习其应用的能力。 3. 易操作性 operability-软件产品使用户能操作和控制它的能力。 4. 吸引性 attractiveness-软件产品吸引用户的能力 5. 易用性的依从性 usability compliance-软件产品遵循与易用性相关的标准、约定、风格指南或法规的能力。这些标准要考虑国际标准、国家标准、行业标准、企业内部规范等,例如企业内部的界面规范。 效率:在规定条件下,相对于所用资源的数量,软件产品可提供适当性能的能力1. 时间特性:time behavior-在规定条件下,软件产品执行其功能时,提供适当的响应和处理时间以及吞吐率的能力。即完成用户的某个功能需

13、要的响应时间。2. 资源利用性:resource utilization-在规定条件下,软件产品执行其功能时,使用合适的资源数量和类别的能力。 3. 效率依从性:efficiency compliance-软件产品遵循与效率相关的标准或约定的能力。维护性:软件产品可被修改的能力。修改可能包括修正、改进软件对环境、需求、和功能规格说明变化的适应1. 易分析性analyzability- 诊断软件产品中缺陷或失效原因的能力。2. 易改变性 changeability-软件产品使指定的修改可以被实现的能力。 3. 稳定性 stability-软件产品避免由于软件修改而造成意外结果的能力。 4. 易测

14、试性 testability-软件产品使已修改软件能被确认的能力。 5. 维护性的依从性 maintainability compliance-软件产品遵循与维护性相关的标准或约定的能力。可移植性:软件产品从一种环境迁移到另一种环境可正常使用或满足用户需求的能力1. 适应性adaptability-软件产品无需采用有别于为考虑该软件的目的而准备的活动和手段就可以适应不同的环境的能力。2. 易安装性 installability-软件产品在指定环境中 被安装的能力。 3. 共存性 co-existence-软件产品在公共环境中同与其分享公共资源的其它独立软件共存的能力。 4. 易替换性 replaceability-软件产品在同样的环境下,替代另一个相同用途的指定软件产品的能力。 5. 可移植性的依从性 portabili

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号