测试理论面试题 1.软件测试是什么软件测试就是验证软件是否满足用户的需求2.软件测试开发工程师和测试工程师的区别相同点都统称为测试人员对产品质量负责保障产品的质量不同点测试开发比测试多“开发”二字而这个开发并不是指业务开发因为业务开发是开发人员的主要职责这里的开发指的是需要开发测试效率工具通过效率工具来提升测试效率和测试质量比如自动化、性能测试等就属于效率工具3.走测试岗位为什么要学习开发知识1测试人员也需要编写代码如自动化测试、性能测试、开发测试效率工具。测试人员需要能够看懂代码、了解开发框架2学好开发知识能提高软件测试质量通过查看代码中的数据走向能够更好的从代码层面去发现问题也能更好的找到问题和开发人员沟通4.优秀的软件测试人员需要具备的素质1沟通能力需要和开发人员沟通2快速学习能力技术迭代快需要不断学习3文字能力需要编写测试计划测试用例测试报告等4测试用例的设计能力无论对于什么类型的测试都能够设计出高效发现缺陷保证产品质量的优秀测试用例5.为什么不走开发走测试现在的公司越来越重视软件的质量测试的前景很不错还有我个人兴趣的原因6.软件的生命周期7.常见开发模型1瀑布模型瀑布模型是其他所有模型的基础有一个重大的缺陷就是产品运行在很后面的阶段如果在需求分析阶段就出现重大缺陷那找到问题时可能难以修复导致项目失败2螺旋模型螺旋模型就是将瀑布模型不断循环通过做出原型先提交给测试人员进行测试然后再提出新的需求继续循环。需求的人员、资金、成本上升可能导致项目的成本太大3增量迭代模型也是瀑布模型的循环版相当于做一点发布一点需要开发人员和测试人员的紧密合作4敏捷模型在敏捷模型中需求被分解成许多可以增量开发的小部分。采用迭代开发每个增量部分都是在迭代中开发的。每次迭代都旨在小而易于管理并且只在几周完成。每次为客户计划、开发和部署的一个迭代。没有指定长期计划。敏捷模型有四个特点轻文档轻流程重目标重产出。scrum 模型是比较流行的一种。又称为迭代式增量软件开发模型。在这个模型中主要有三个角色和五个重要会议。三个角色由产品经理、项目经理、研发团队组成。产品经理负责整理用户故事定义其商业价值 对其进行排序制定发布计划对产品负责。项目经理负责召开各种会议协调项目为研发团队服务。研发团队由不同技能的成员组成通过紧密协同完成每一次迭代的目标交付产品。五个会议8.常见测试模型1V 模型2W 模型解决了 V 模型没有把测试前置的问题测试人员每一个环节都参与验证与确认可今早发现问题所在。9. bug 是什么当且仅当规格说明存在且正确时程序与规格说明之间不匹配就是 bug 当遇到规格说明之外的需求时程序不能实现用户预期的需求时就是 bug。10.描述 bug 的要素问题出现的版本问题出现的环境问题出现的步骤预期结果实际结果11. bug 的级别崩溃、严重、一般、次要12. bug 的生命周期12.与开发人员发生争执怎么办先检查自身bug 描述是否不清晰bug 定级要有理有据。站在用户的角度抛出问题让开发人员能了解到 bug 可能对用户产生的问题。提出问题时也可以给出解决问题的建议。13.设计测试用例的公式功能测试是一个试图发现程序和外部规格说明之间存在不一致的过程。外部规格说明是一份从最终用户的角度对程序行为的精确描述。功能测试通常是一项黑盒测试。在进行功能测试时需要对规格说明进行分析以提炼测试用例。界面测试是对软件界面上所有的内容进行测试要求界面测试界面的实现与设计图要求一致还要进行界面元素的测试。性能测试和功能测试的区别是功能测试检查软件是否做了而性能测试测试软件做的好不好兼容性测试软件是否能够在不同的环境下正确运行易用性测试的标准是检查产品是否具备简单易上手的属性14.自我介绍面试官您好我来自广东工业大学就读于日语专业。高中是理科出身因调剂到了日语专业之后通过网络上的资源自学计算机相关的知识一开始学习的是Java开发相关的知识后在学习过程中对测试产生了兴趣开始学习测试的知识因此决定面试这个实习岗位。15.设计测试用例的方法1.基于需求设计测试用例明确需求中的功能点结合万能公式来设计2.等价类法确认有效等价类和无效等价类编写测试用例设计具体测试数据注意等价类法只考虑输入域的3.边界值法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值法是对等价类法的补充。4.正交法一般设计测试测试用例是根据可选选项进行排列组合而正交法的目的就是为了减少 用例的数量用尽量少的用例覆盖输入的两两组合。因比较复杂详细的单独去搜5.判定表法6.场景法以逛街买衣服举例子7.错误猜测法