file-type

2019软件测试面试深度解析

DOC文件

下载需积分: 50 | 67KB | 更新于2024-07-17 | 196 浏览量 | 30 下载量 举报 4 收藏
download 立即下载
"2019年最新软件测试面试题,包括测试基础知识,涉及测试定义、目的、种类,特别是黑盒测试的等价类划分方法。" 软件测试工程师的面试通常涵盖一系列关键概念,旨在评估候选人的专业技能和对软件测试的理解。下面详细解释这些知识点: 1. **测试的定义**: 软件测试是软件工程的一个核心环节,它在软件发布前对产品进行全面检查,旨在找出并修复潜在错误,确保软件符合预期的功能性和非功能性需求。测试不仅是寻找错误的过程,更是确保软件满足用户需求和质量标准的关键步骤。 2. **测试的目的**: 主要目的是确保软件能够满足用户需求,提供高质量、高性能的产品。软件测试通过检查功能和非功能特性来确保这一点,是实现软件开发目标的重要保障。 3. **测试的种类**: - **黑盒测试**: 黑盒测试关注的是软件的功能行为,而不考虑其内部结构。它基于功能需求,通过输入和输出的对应关系来设计测试用例。常见的黑盒测试技术包括等价类划分、边界值分析、决策表测试等。 - **等价类划分**: 这是一种黑盒测试策略,用于减少测试用例的数量。等价类分为合理等价类(预期输入)和不合理等价类(非预期输入)。例如,如果输入条件是数值范围,可以划分合理等价类(在范围内)、下边界等价类(低于最小值)和上边界等价类(超过最大值)。每类至少需要一个测试用例来代表,确保所有可能的输入情况都得到测试。 4. **等价类划分的具体步骤**: - **划分等价类**:根据输入条件的定义,识别合理和不合理的输入范围或值,然后进一步细化等价类,以覆盖所有可能的情况。 - **确定测试用例**:为每个等价类创建一个或多个测试用例,确保尽可能全面地覆盖所有等价类。测试用例的设计应确保每次测试都能有效地验证软件功能。 软件测试工程师在面试时,需要对这些基本概念有深入理解,并能结合实际案例来展示自己的测试策略和问题解决能力。掌握这些知识不仅可以帮助通过面试,也能在实际工作中有效提升软件质量。

相关推荐

filetype
1、什么是软件测试?2’ 2、软件测试与软件质量保证的区别。10’ 3、报告软件缺陷时,测试人员要对软件缺陷分类,以简明扼要的方式指出其影响,以及修改的优先次序。请描述如何划分缺陷与错误严重性和优先级别?10’ 4、BUG信息应该包含那些内容。5’ 5、测试用例说明应该包含哪些内容?测试用例计划包含哪些目标?10’ 6、WEB应用软件测试必须进行哪些类型测试,请列出每种类型的测试要点。15’ 7、网络应用测试的主要内容是什么?10’ 8、用户文档测试应该注意哪些要点?10’ 9、在DBMS中,视图的作用是什么? 写出建立视图的命令格式(如建立信息系学生的视图)10’ 10、请列举您认为身为测试人员应具备的能力和技术。8’ 参考答案 1、什么是软件测试?2’ 【要点】 在规定条件下对程序进行操作,以发现错误,对软件质量进行评估,包括对软件形成过程的文档、数据以及程序进行测试。 【详解】 软件测试就是在软件投入运行前对软件需求分析、软件设计规格说明书和软件编码进行查错(包括代码执行活动与人工活动)。也可以说,软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部构造而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误,这是在软件投入前,对软件需求分析、软件设计规格说明书和软件编码的最终复审,是软件质量保障的关键步骤。 1、 软件测试与软件质量保证的区别。10’ 【要点】 软件测试只是质量保证工作中的一个环节,软件质量保证与软件测试是软件质量工程的两个不同层面的工作; 质量保证:通过预防、检查与改进来保证软件质量,采用全面质量管理和过程改进的原理来开展质量保证工作,主要关注软件质量的检查与测试,主要着眼于软件开发活动的过程、步骤和产物。 软件测试:通过执行软件来,对过程中的产物(开发文档和程序)进行走查,发现问题,报告质量 【详解】 软件测试和软件质量保证是软件质量工程中的两个不同层面的工作。软件测试只是软件质量保证工作中的一个重要环节。 质量保证(QA)的工作是通过预防、检查与改进来保证软件的质量。QA采用的方法重要是按“全面质量管理”和“过程改进”的原来开展质量保证工作。虽然在软件质量保证的活动中也有一些测试活动,但它所以关注的是软件质量的检查和测量。它的主要工作是对软件生命周期的管理,以及检验软件是否满足规定的质量和用户的需求,因此重要是着眼于软件开发活动中的过程,步骤和产物,而不是软件进行剖析,找出问题或者评估。 软件测试虽然与开发过程紧密相关,但它所关心的不是过程的活动,而是对过程的产物,以及开发出的软件进行剖析。测试人员要对过程的产物(开发文档和源代码)进行走读,运行软件。以找到问题和报告质量。测试人员必须假设软件存在潜在的问题,测试中所做的操作就是为了找出更多的问题,而不是为了验证(事实上也不可能)软件的正确性。所以软件测试虽然对提高软件的质量起着关键的作用,但它只是软件质量保证的一个重要环节。 3、请描述如何划分缺陷与错误严重性和优先级别?10’ 给软件缺陷与错误划分严重性和优先级的通用原则: (1) 表示软件缺陷所造成饿危害和恶劣程度。 (2) 优先级表示修复缺陷的重要程度和次序。 严重性: (1)、严重:系统崩溃、数据丢失、数据毁坏 (2)、较严重:操作性错误、结果错误、遗漏功能