2025年软件测试工程师笔试题库(带答案)_第1页
2025年软件测试工程师笔试题库(带答案)_第2页
2025年软件测试工程师笔试题库(带答案)_第3页
2025年软件测试工程师笔试题库(带答案)_第4页
2025年软件测试工程师笔试题库(带答案)_第5页
已阅读5页,还剩23页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2025年软件测试工程师笔试题库(带答案)一、单项选择题(每题1分,共30分。每题只有一个正确答案,请将正确选项字母填入括号内)1.在V模型中,与“系统测试”相对应的开发阶段是()A.需求分析B.概要设计C.详细设计D.编码实现答案:A2.下列关于等价类划分法的描述,错误的是()A.有效等价类与无效等价类必须同时覆盖B.一个等价类内的任一数据可代表整个类C.等价类划分可完全替代边界值分析D.等价类划分可用于输入域与输出域答案:C3.某模块的圈复杂度为12,则该模块至少需要设计()条测试用例才能覆盖所有独立路径。A.6B.10C.12D.24答案:C4.在缺陷生命周期中,状态“Deferred”表示()A.缺陷已修复并验证通过B.缺陷暂不修复,后续版本处理C.缺陷重复提交D.缺陷信息不完整答案:B5.以下哪项不是非功能性测试?()A.压力测试B.容量测试C.易用性测试D.语句覆盖测试答案:D6.某系统连续运行168小时,累计失效3次,平均修复时间2小时,则该系统可用性为()A.97.62%B.98.21%C.99.41%D.99.82%答案:A解析:可用性=(168−3×2)/168≈0.97627.关于决策表测试,下列说法正确的是()A.适用于所有输入间无逻辑关系的场景B.条件桩与动作桩的顺序不影响测试效果C.规则数一定等于2的“条件数”次方D.可合并无关条件项以精简用例答案:D8.在敏捷测试中,“验收测试”通常由谁主导?()A.开发人员B.测试人员C.产品负责人D.ScrumMaster答案:C9.下列哪项最能体现测试用例的“可重复性”特征?()A.用例标题简洁B.步骤描述无二义性C.预期结果可判定D.用例可追溯到需求答案:B10.某API接口返回JSON中包含字段“price”:5.0,该缺陷最可能归于()A.功能逻辑错误B.接口性能问题C.安全漏洞D.兼容性缺陷答案:A11.在SeleniumWebDriver中,用于显式等待的类是()A.WebDriverWaitB.ImplicitWaitC.FluentWaitD.Thread.sleep答案:A12.以下哪项不是白盒测试的覆盖准则?()A.语句覆盖B.判定覆盖C.条件覆盖D.边界值覆盖答案:D13.某APP在Android12上出现闪退,在Android11正常,该缺陷优先级应设为()A.P0B.P1C.P2D.P3答案:B解析:影响特定系统版本,用户群体较大,属高优先级。14.在LoadRunner中,用于模拟多用户并发最核心的组件是()A.VuGenB.ControllerC.AnalysisD.LoadGenerator答案:B15.关于“测试金字塔”,下列说法错误的是()A.底层单元测试数量最多B.顶层UI测试运行速度最快C.中间层服务测试数量适中D.金字塔强调尽早测试答案:B16.某段代码包含一个if(a&&b||c)的条件,采用“条件覆盖”需要设计()组测试数据。A.2B.3C.4D.8答案:C17.在持续集成流水线中,单元测试失败应触发()A.邮件通知测试经理B.自动回滚代码C.构建标记为不稳定并阻断后续阶段D.忽略并继续打包答案:C18.以下哪项属于静态测试技术?()A.代码走查B.集成测试C.系统测试D.回归测试答案:A19.某Web系统采用JWT令牌,测试发现令牌未设置过期时间,该缺陷属于()A.性能缺陷B.安全缺陷C.兼容性缺陷D.易用性缺陷答案:B20.在ISTQB术语中,“错误”是指()A.人为引入的缺陷B.程序运行后的失效C.程序源代码的bugD.需求文档的歧义答案:A21.关于“测试ORACLE”,下列说法正确的是()A.只能由自动化脚本充当B.必须来源于需求文档C.是判断测试是否通过的准则D.与测试环境无关答案:C22.某系统要求并发用户5000,TPS≥800,响应时间≤2s,该场景属于()A.负载测试B.压力测试C.容量测试D.稳定性测试答案:A23.在APP测试中,使用adb命令查看实时日志的指令为()A.adblogcatB.adbshelldumpsysC.adbinstallD.adbpush答案:A24.以下哪项最能降低自动化测试脚本维护成本?()A.增加断言数量B.使用页面对象模式C.提高并发线程数D.使用绝对路径定位元素答案:B25.某微服务接口采用契约测试,消费者契约文件通常保存于()A.消费者代码库B.提供者代码库C.独立Git仓库D.以上均可答案:D26.在风险评估中,发生概率为“高”、影响程度为“中”的风险,其风险级别应为()A.低B.中C.高D.极高答案:C27.关于“探索式测试”,下列说法错误的是()A.强调同时设计与执行B.完全不使用任何文档C.依赖测试人员经验D.可使用会话单管理答案:B28.某系统数据库采用读写分离,测试发现写入数据后立刻读取出现旧数据,该现象称为()A.脏读B.幻读C.不可重复读D.复制延迟答案:D29.在Postman中,使用环境变量保存动态token的语法为()A.{{token}}B.${token}C.tokenD.%token%答案:A30.以下哪项不属于测试报告必须包含的内容?()A.测试范围B.测试结论C.开发人员绩效D.缺陷统计答案:C二、多项选择题(每题2分,共20分。每题有两个或以上正确答案,多选、少选、错选均不得分)31.下列属于黑盒测试设计技术的有()A.状态转换测试B.语句覆盖C.因果图法D.边界值分析E.判定覆盖答案:A、C、D32.以下哪些指标可用于评估测试完整性?()A.需求覆盖率B.代码覆盖率C.缺陷密度D.测试用例执行率E.平均修复时间答案:A、B、D33.关于Docker在测试中的应用,正确的有()A.可快速搭建一致性测试环境B.可横向扩展性能测试节点C.可完全替代单元测试D.支持版本化环境配置E.可隔离不同测试数据答案:A、B、D、E34.以下哪些情况适合引入自动化测试?()A.需求频繁变更B.回归测试频率高C.项目周期短且预算低D.关键路径冒烟测试E.需要模拟大量并发答案:B、D、E35.关于“测试左移”,正确的有()A.测试尽早介入需求评审B.开发前完成所有测试用例C.静态代码检查在编码前进行D.单元测试由测试人员编写E.持续反馈降低修复成本答案:A、E36.以下哪些属于常见的HTTP状态码错误类?()A.200B.302C.400D.401E.503答案:C、D、E37.以下哪些工具可用于接口自动化测试?()A.RESTAssuredB.JMeterC.AppiumD.Pytest+RequestsE.SoapUI答案:A、B、D、E38.以下哪些做法有助于提升缺陷复现率?()A.记录精确操作步骤B.保存现场日志与截图C.提供可重复数据D.使用模糊描述增加通用性E.标注环境版本信息答案:A、B、C、E39.关于“测试右移”,正确的有()A.生产环境监控真实用户行为B.通过灰度发布降低风险C.完全替代预发布测试D.收集线上缺陷反馈E.使用A/B测试验证新功能答案:A、B、D、E40.以下哪些属于移动专项测试?()A.弱网测试B.电量消耗测试C.GPU渲染测试D.安装包体积测试E.横竖屏切换测试答案:A、B、C、D、E三、填空题(每空2分,共20分)41.某系统7×24小时运行,全年计划停机维护10小时,则其理论可用性为________%。答案:99.89解析:(8760−10)/8760≈0.998942.采用判定覆盖时,对于if(x>0&&y<10)语句,至少需要________组测试数据。答案:243.在MySQL中,查看当前事务隔离级别的命令是________。答案:select@@transaction_isolation;44.使用JMeter进行参数化时,常用的CSV元件名称是________。答案:CSVDataSetConfig45.在Linux中,查看进程占用端口号的命令是________。答案:netstattunlp或sstunlp46.某接口分页参数为page=3&size=20,则返回的第一条记录在全表中的行号为________。答案:41解析:(3−1)×20+1=4147.在Python单元测试中,使用________库可进行Mock操作。答案:unittest.mock48.根据ISO25010标准,软件质量模型将特性分为________大特性。答案:849.在Git中,回退上一次提交的命令为gitreset________HEAD~1。答案:hard50.某APP启动时间超过3s,根据Google官方建议,属于________启动。答案:慢四、简答题(共30分)51.(封闭型,6分)简述“测试用例”与“测试场景”的区别,并给出各自包含的核心要素。答案:测试用例是最小执行单位,包含:用例编号、前置条件、输入数据、执行步骤、预期结果、优先级。测试场景是业务角度的高层次描述,包含:场景名称、业务上下文、用户目标、关键路径、覆盖的用例集合。区别:用例聚焦“如何测”,场景聚焦“测什么业务”;粒度不同;场景可拆解为多个用例。52.(开放型,8分)某电商大促期间,订单服务高峰期出现“超卖”现象。请从测试角度提出至少5条可落地的预防或发现措施。答案:1.在性能测试脚本中增加库存并发扣减场景,模拟秒杀。2.采用悲观锁/分布式锁测试,验证锁超时与重试机制。3.引入混沌工程,随机注入数据库延迟,观察事务回滚。4.对库存扣减接口做契约测试,确保返回剩余库存准确。5.灰度发布前,在影子表执行生产流量回放,比对库存流水。6.监控报警:库存为负即触发P0告警并自动熔断下单接口。53.(封闭型,6分)列出判定覆盖与条件覆盖的定义,并给出一段代码示例说明二者差异。答案:判定覆盖:每个判定的“真”“假”至少出现一次。条件覆盖:每个条件的“真”“假”至少出现一次。示例:if(A&&B){…}判定覆盖用例:①A=T,B=T②A=F,B=F即可。条件覆盖用例:需A=T,B=F以及A=F,B=T,确保A、B各自取真取假,但判定结果可能只覆盖真或假一次。差异:条件覆盖更细,可能需更多用例;判定覆盖不保证所有条件取值。54.(开放型,10分)结合你所在项目,描述一次“测试驱动开发”(TDD)落地实践,包括角色分工、节奏控制、遇到的最大阻力及量化收益。答案:项目:金融风控微服务。角色:开发5人、测试2人、产品1人。节奏:需求澄清后,测试与产品共同写出“验收标准”Gherkin文件;开发先写单元测试,红线失败,再写业务代码,绿线通过;重构阶段由测试评审代码覆盖率。阻力:初期开发认为耗时,平均故事点从8升至11;通过引入MockServer缩短外部依赖,2个迭代后故事点回落至9。量化收益:单元测试覆盖率由62%提至91%;回归缺陷数由每迭代18个降至4个;持续集成构建失败率由15%降至3%;故事交付周期缩短20%。五、应用题(共50分)55.(分析类,10分)某社交APP新增“语音房”功能,需求如下:1.房主可设置房间最大人数≤8;2.成员举手后,房主同意即可上麦;3.最多3人同时上麦;4.上麦成员可主动下麦;5.房主可强制任意成员下麦。请画出该功能的状态转换图,并给出最少测试用例数,要求覆盖所有状态与有效转换。答案:状态:空闲、举手、上麦、下麦。转换:空闲→举手、举手→上麦、上麦→下麦、空闲→上麦(房主邀请)、上麦→空闲(强制下麦)。最少用例:5条,覆盖4个状态+8条有效转换。56.(计算类,12分)某接口在1小时内接收请求360000次,其中成功请求340000次,响应时间分布:0–200ms:170000次200–500ms:120000次500–1000ms:40000次>1000ms:10000次失败请求均返回5xx,平均响应时间800ms。计算:1.吞吐量TPS;2.平均响应时间;3.99th百分位响应时间;4.错误率。答案:1.TPS=360000/3600=1002.平均响应时间=(170000×100+120000×350+40000×750+10000×1250)/340000≈257ms3.99th:排序后第336600位落在500–1000ms区间,线性插值得约650ms4.错误率=20000/360000≈5.56%57.(综合类,14分)给定一段Python代码:```pythondefcalc_bonus(sales,level):ifsales<0:raiseValueErroriflevel==1:returnsales0.1eliflevel==2:returnsales0.15eliflevel==3:ifsales>10000:returnsales0.2+500else:returnsales0.2else:return0```要求:1.画出程序流程图;2.采用“条件组合覆盖”设计测试用例,并给出输入、预期输出、覆盖的组合编号;3.计算该函数的圈复杂度。答案:1.图略(文字描述):开始→sales<0?→Y抛异常;N→level==1?→Y返回0.1;N→level==2?→Y返回0.15;N→level==3?→Y→sales>10000?→Y返回0.2+500;N返回0.2;N返回0。2.用例:①sales=1,level=1→抛异常,覆盖sales<0T②sales=100,level=1→10,覆盖sales<0F,level==1T③sales=100,level=2→15,覆盖level==2T④sales=5000,level=3→1000,覆盖level==3T,sales>10000F⑤sales=20000,level=3→4500,覆盖level==3T,sales>10000T⑥sales=100,level=4→0,覆盖level==3F3.圈复杂度:判定节点数5+1=658.(综合类,14分)某微服务架构下单系统包含:网关、订单服务、库存服务、支付服务。采用契约测试保障兼容性。1.请给出消费者驱动的契约测试流程图;2.列出契约文件应包含的最少字段;3.说明如何在CI流水线中校验契约,并给出伪代码;4.若提供者修改字段类型,导致契约验证失败,但业务兼容,请给出两种解决策略。答案:1.流程:消费者写契约→上传契约仓库→提供者拉取契约→提供者启动stub→运行提供者测试→生成验证结果→上报契约仓库→失败阻断流水线。2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论