版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2025软件测试工程师笔试试题及答案1.单项选择题(每题1分,共20分)1.1在等价类划分法中,若输入条件为“1≤x≤100”,则无效等价类应划分为A.x<1B.x>100C.x<1或x>100D.x=0且x=101答案:C1.2下列关于边界值分析的说法正确的是A.只需测试有效边界B.需测试有效边界及两侧各一个无效值C.只需测试无效边界D.只需测试中间值答案:B1.3判定覆盖(DC)与条件覆盖(CC)的关系是A.DC一定强于CCB.CC一定强于DCC.二者无必然强弱D.二者等价答案:C1.4在状态转换测试中,以下哪项不是必需元素A.起始状态B.触发事件C.守卫条件D.性能指标答案:D1.5以下哪项最符合“测试尽早介入”原则A.需求评审时提出可测试性意见B.编码完成后开始写用例C.系统上线前进行静态扫描D.用户验收阶段补充单元测试答案:A1.6使用正交数组设计测试用例时,首要输入是A.缺陷密度B.因素与水平表C.代码行数D.路径图答案:B1.7在ISTQB术语中,“错误”指A.人为产生的缺陷B.程序运行时失效C.导致软件不符合需求的根本原因D.测试人员观察到的异常答案:A1.8以下哪项属于静态测试技术A.语句覆盖B.走查C.压力测试D.回归测试答案:B1.9某模块圈复杂度为8,则最少需要多少条测试路径即可实现路径覆盖A.6B.7C.8D.9答案:C1.10关于Mock与Stub的区别,正确的是A.Mock可验证交互行为,Stub仅提供返回值B.Stub可验证交互行为,Mock仅提供返回值C.二者无区别D.二者均属于集成测试工具答案:A1.11在持续集成流水线中,测试阶段“Test”通常位于A.编译之后、打包之前B.打包之后、部署之前C.部署之后、回滚之前D.回滚之后答案:B1.12以下哪项最能降低自动化测试脚本维护成本A.使用硬编码坐标B.基于UI元素ID编写断言C.录制回放为主D.页面对象模式答案:D1.13某接口返回HTTP409,最可能含义是A.未授权B.冲突C.重定向D.服务器内部错误答案:B1.14在性能测试中,TPS指A.每秒并发用户数B.每秒事务数C.平均响应时间D.吞吐量字节数答案:B1.15关于缺陷生命周期,以下顺序正确的是A.新建→打开→修复→关闭→重新打开B.新建→修复→打开→关闭C.新建→打开→关闭→修复D.打开→新建→修复→关闭答案:A1.16以下哪项不是安全测试的子领域A.认证B.授权C.可用性D.机密性答案:C1.17在Appium框架中,用于查找元素的默认协议是A.JSONWPB.W3CWebDriverC.SOAPD.gRPC答案:B1.18白盒测试的覆盖率指标中,最弱的是A.语句覆盖B.判定覆盖C.条件覆盖D.路径覆盖答案:A1.19以下哪项最能体现“测试的可重复性”A.使用随机数种子固定的数据生成器B.手工exploratorytestingC.依赖当前系统时间D.依赖外部第三方真实支付答案:A1.20在敏捷项目中,用户故事验收标准通常由谁确认A.仅开发人员B.仅测试人员C.产品负责人与团队共同D.运维人员答案:C2.多项选择题(每题2分,共20分,多选少选均不得分)2.1以下属于黑盒测试设计技术的是A.决策表B.状态转换C.语句覆盖D.因果图答案:ABD2.2以下哪些指标可直接用于评估测试完整性A.需求覆盖率B.代码覆盖率C.缺陷移除效率D.测试用例执行率答案:ABD2.3关于JUnit5注解,正确的有A.@BeforeEach在每个测试方法前执行B.@AfterAll必须声明为staticC.@ParameterizedTest需搭配源注解D.@Disabled可作用于类级别答案:ABCD2.4以下哪些属于常见的SQL注入防范措施A.预编译语句B.最小权限原则C.前端JS过滤即可D.存储过程封装答案:ABD2.5在移动端专项测试中,需要关注A.电量消耗B.流量消耗C.GPU渲染帧率D.弱网模拟答案:ABCD2.6以下哪些做法有助于提升自动化测试稳定性A.显式等待替代固定sleepB.用图像识别定位元素C.数据隔离与回滚D.在脚本中硬编码测试数据答案:AC2.7以下哪些属于典型的性能瓶颈征兆A.CPU利用率持续>90%B.磁盘队列长度>2C.内存泄漏导致Old区占用上升D.日志级别设为DEBUG答案:ABC2.8关于契约测试,正确的有A.消费者驱动B.可替代端到端集成测试C.需定义请求与响应格式D.可用于微服务场景答案:ACD2.9以下哪些活动属于测试计划内容A.风险分析B.资源估算C.测试范围定义D.缺陷根因分析答案:ABC2.10以下哪些属于静态代码分析可检测的缺陷A.空指针解引用B.数组越界C.资源未关闭D.并发竞态条件答案:AC3.填空题(每空1分,共20分)3.1若某系统需求规定“用户名长度为6~18个字符”,采用边界值分析应至少测试________个边界值。答案:43.2在ISTQB基础测试过程模型中,测试过程分为测试计划与监控、________、测试实现与执行、评估出口准则与报告、测试结束活动。答案:测试分析与设计3.3使用因果图法时,需首先列出所有________与结果,再绘制因果图。答案:原因3.4某接口采用JWT令牌,令牌有效期为15分钟,刷新令牌有效期为7天,则测试需重点关注________场景。答案:令牌过期与刷新3.5在Linux中,查看当前系统平均负载可使用命令________。答案:uptime或top或w3.6若某段代码的McCabe圈复杂度为V(G)=12,则实现路径覆盖最多需要________条用例。答案:123.7在Postman中,使用________脚本可在请求发送前动态修改请求参数。答案:Prerequest3.8在GitFlow模型中,用于修复生产环境紧急缺陷的分支通常称为________分支。答案:hotfix3.9在SeleniumWebDriver中,等待页面元素可见的显式等待类是________。答案:WebDriverWait3.10若某系统7×24小时运行,可用性要求达到99.99%,则全年累计停机时间不得超过________分钟。答案:52.56(四舍五入到小数点后两位)3.11在MySQL中,查看慢查询日志是否开启的命令为showvariableslike'________';答案:slow_query_log3.12在性能测试中,90%响应时间指将所有响应时间从小到大排序后取第________分位值。答案:903.13在敏捷迭代评审会上,团队演示完成的功能并收集反馈,该会议通常称为________。答案:SprintReview3.14使用SonarQube扫描代码时,衡量代码重复度的指标是________。答案:DuplicatedLinesDensity3.15在Python单元测试中,使用________装饰器可将方法标记为跳过并给出原因。答案:@unittest.skip(reason)3.16在风险识别中,发生概率高且影响大的风险应位于风险矩阵的________象限。答案:右上3.17在JMeter中,用于从服务器响应提取后续请求所需参数的后置处理器是________。答案:正则表达式提取器或JSON提取器3.18若某测试环境数据库需每日凌晨2点自动还原基准数据,Linux系统可配置________任务实现。答案:cron3.19在OWASPTop102021中,排名首位的安全风险类别是________。答案:访问控制失效(BrokenAccessControl)3.20在测试用例模板中,前置条件、输入数据、执行步骤、预期结果与________为常见字段。答案:后置条件或实际结果4.判断题(每题1分,共10分,正确打“√”,错误打“×”)4.1回归测试只能在系统测试阶段执行。答案:×4.2探索式测试完全不需要测试文档。答案:×4.3在Linux系统中,命令echo$?可返回上一条命令的退出码。答案:√4.4使用Fiddler可拦截并修改HTTPS流量,前提是系统信任其根证书。答案:√4.5性能测试通过即代表系统上线后不会出现性能问题。答案:×4.6在Git中,执行gitresethardHEAD^会丢弃最近一次提交的所有更改。答案:√4.7测试用例通过率100%意味着软件无缺陷。答案:×4.8在Postman中,环境变量作用域大于全局变量。答案:×4.9静态测试只能发现语法错误,无法发现逻辑缺陷。答案:×4.10采用蓝绿部署策略可缩短发布停机时间。答案:√5.简答题(封闭型,每题5分,共20分)5.1简述判定覆盖与条件覆盖的区别,并给出示例。答案:判定覆盖要求每个判定的所有可能结果至少出现一次;条件覆盖要求每个条件的所有可能取值至少出现一次。示例:if(A||B){…},判定覆盖需使(A||B)为真、为假各一次;条件覆盖需使A=真、A=假、B=真、B=假均出现,无需覆盖判定结果。5.2说明性能测试中“ThinkTime”的作用及设置原则。答案:ThinkTime模拟用户操作间隔,避免虚拟用户并发度过高导致压力失真;设置原则应参考真实用户行为日志,常规取值2~5秒,特殊场景可调整,需与吞吐量指标平衡。5.3列举移动App冷启动与热启动的区别,并指出测试关注点。答案:冷启动指进程未在内存,需创建Application、加载资源,启动时间长;热启动指进程仍在后台,只需恢复Activity,时间短。测试关注:冷启动时间、首帧绘制、CPU峰值、内存波动、网络请求并发;热启动关注恢复速度、状态一致性、内存泄漏。5.4说明在持续集成流水线中引入“质量门”的目的及常用指标。答案:质量门用于在流水线关键节点阻止不达标制品进入下游,降低修复成本;常用指标:单元测试通过率、代码覆盖率、静态代码严重缺陷数、安全漏洞等级、性能基线阈值。6.简答题(开放型,每题10分,共20分)6.1某电商平台大促期间频繁出现“库存超卖”问题,请从测试角度提出系统性预防方案,涵盖测试策略、工具选型、数据构造、监控告警。答案:1)测试策略:引入并发库存扣减场景,覆盖秒杀、限时购、跨店优惠;采用悲观锁、乐观锁、分布式锁三种实现对比测试;性能压测与功能一致性双重验证。2)工具选型:JMeter+gRPC插件模拟高并发;Redis+Lua脚本构造原子扣减;使用混沌工程工具ChaosBlade注入网络延迟、Redis节点宕机。3)数据构造:基于生产脱敏数据生成100万SKU,10万并发用户,利用消息队列异步恢复库存;使用DockerCompose一键搭建可重复环境。4)监控告警:Prometheus采集库存剩余量、扣减QPS、异常订单数;配置Grafana看板,阈值:剩余库存<0即告警;接入飞书机器人,5分钟内推送。5)流程改进:需求阶段增加可测试性评审,要求提供库存一致性文档;在CI流水线设置“库存一致性”质量门,失败即阻断发布;上线后灰度放量10%,对比账务系统对账。6.2某金融核心系统采用微服务架构,服务数超200个,版本迭代周期两周。请设计一套自动化测试体系,说明分层策略、用例管理、环境治理、数据隔离、结果反馈机制。答案:1)分层策略:单元测试由开发在提交前本地执行;组件测试使用SpringBootTest+Testcontainers,覆盖本服务数据库及外部服务Mock;契约测试采用Pact,消费者驱动,流水线门禁;端到端仅覆盖黄金流程,用Cucumber+Selenium,降低维护成本。2)用例管理:使用TestRail与GitLabIssue双向关联,需求→用例→缺陷闭环;用例分级:P0发布阻塞、P1高优先级、P2一般;标签化:冒烟、回归、安全、性能。3)环境治理:K8s命名空间隔离,每个MergeRequest自动创建Review环境;使用ArgoCD同步版本,环境超时24h自动回收;基准数据采用KubernetesJob每日初始化。4)数据隔离:每个测试用例前缀使用UUID,流水结束后清理;对账类测试使用影子表,避免污染生产镜像;对消息队列采用单独的testtopic,消费组带随机后缀。5)结果反馈:测试报告推送至Slack频道,含通过率、覆盖率、性能对比折线;失败用例自动附加日志、截图、线程栈;每周生成质量雷达图,展示各服务健康度,作为技术债评估输入。7.应用题(综合类,30分)7.背景:某在线视频平台提供会员购卡功能,需求如下:1)仅支持支付宝、微信两种支付方式;2)会员卡面额:30天、90天、365天,售价分别为25元、68元、198元;3)支付成功后立即到账,会员到期自动停止;4)同一用户最多同时拥有一张有效会员,续费后有效期顺延;5)系统需支持并发购卡,库存无限;6)接口响应时间<500ms,99%请求成功。请完成:①使用边界值+等价类设计支付接口测试用例,需给出用例表格(用例编号、用例标题、前置条件、输入数据、执行步骤、预期结果)不少于12条。(10分)②使用JMeter设计并发测试方案,说明线程组参数、断言、监控指标。(5分)③若上线后出现“支付成功但会员未到账”缺陷,请给出定位步骤与日志采集清单。(5分)④基于上述缺陷,补充一条自动化回归用例(伪代码或Python代码),并说明断言要点。(5分)⑤从安全角度列举支付接口需额外覆盖的测试点,不少于5项。(5分)答案:①用例表格(节选12条)|编号|用例标题|前置条件|输入数据|执行步骤|预期结果||TC01|等价类有效30天购卡|用户未开通会员|userId=1001,days=30,payType=ALIPAY,amount=25|调用购卡接口|返回0,会员有效期=当前+30天||TC02|等价类有效90天购卡|同上|days=90,amount=68|同上|返回0,有效期+90天||TC03|等价类有效365天购卡|同上|days=365,amount=198|同上|返回0,有效期+365天||TC04|边界值最小天数29|同上|days=29|同上|返回错误码1001,提示无效天数||TC05|边界值最大天数366|同上|days=366|同上|返回错误码1001||TC06|边界值金额少0.01|同上|days=30,amount=24.99|同上|返回错误码1002,金额不匹配||TC07|边界值金额多0.01|同上|days=30,amount=25.01|同上|返回错误码1002||TC08|无效支付类型|同上|payType=UNIONPAY|同上|返回错误码1003||TC09|用户已存在会员续费|用户当前会员剩余10天|days=30,amount=25|同上|返回0,有效期=原到期日+30天||TC10|并发重复提交|同上|同一userId,10线程并发|多线程调用|仅1次成功,其余返回错误码2001||TC11|空userId|同上|userId=null|同上|返回错误码3001,参数非法||TC12|网络超时重试|支付宝侧mock超时1次|userId=1002,days=30|调用并触发重试|第2次成功,会员到账,无重复扣款|②JMeter并发方案线程组:VirtualUsers=500,Rampup=30s,Duration=300s,Scheduler循环次数永久;HTTP请求:POST/api/member/buy,JSON体带userId、days、amount、payType;参数化:使用CSVConfig,userId从1到5000不重复;断言:响应码=200、jsonCode=0、响应时间<500ms;监控:BackendListener推送InfluxDB,Grafana看板实时显示TPS、99%RT、错误率、支付宝Mock服务CPU。③缺陷定位步骤1)复现:使用TC12日志中userId=1002,订单号T20251122001,在测试环境重放;2)采集:网关access.log、应用server.log、支付宝notify日志、会员库binlog、消息队列消费日志;3)追踪:按订单号链路ID(TraceId=abc123)在ELK查询,确认支付回调返回success,但会员服务未收到消息;4)验证:检查MQtopic=member_pay主题,发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 超市陈列运营管理制度
- 化妆品公司运营制度
- 投资运营中心管理制度
- 网点运营主管责任制度
- 企业电商数据运营制度
- 开烧烤店运营管理制度
- 运营周复盘总结制度
- 农贸市场运营保障制度
- 运营车辆动态管理制度
- 展馆运营管理制度
- 研学旅行概论课程培训课件
- 专业律师服务合同书样本
- 反诈宣传讲座课件
- GB/T 6003.2-2024试验筛技术要求和检验第2部分:金属穿孔板试验筛
- DB32T 4398-2022《建筑物掏土纠偏技术标准》
- (精确版)消防工程施工进度表
- 保险公司资产负债表、利润表、现金流量表和所有者权益变动表格式
- 电磁流量说明书
- XX少儿棋院加盟协议
- 五年级数学应用题专题训练50题
- 2021年四川省资阳市中考数学试卷
评论
0/150
提交评论