软件测试高频面试题

news2025/2/25 11:02:49

以下是一些软件测试高频面试题:

基础概念类

  • HTTP和HTTPS的区别:HTTPS使用SSL/TLS协议对传输数据加密,HTTP没有加密;HTTPS可确保数据完整性,防止传输中被篡改,HTTP不保证;HTTP默认用80端口,HTTPS默认用443端口;HTTPS加密解密操作使其性能可能略低于HTTP,但差距已很小。

  • TCP和UDP的区别:TCP面向连接,提供可靠服务,有流量、拥塞控制,无重复、丢失、差错,面向字节流,只能点对点,首部20字节,全双工;UDP无连接,尽最大努力交付,无拥塞控制,面向报文,支持一对一、一对多、多对多,首部8字节。

    • 软件测试的目的是什么:主要目的是发现软件中的缺陷和错误,确保软件的质量和可靠性,验证软件是否满足用户需求和业务规则,同时为软件的发布和使用提供质量依据。
  • 黑盒测试和白盒测试的区别:黑盒测试不考虑程序内部结构和逻辑,仅依据需求规格说明书,检查软件功能是否符合要求,关注输入输出;白盒测试则基于程序内部逻辑结构,对代码进行检查和测试,如语句覆盖、分支覆盖等。

测试分析类

  • 开发说不是bug时你怎么处理:首先与开发人员友好沟通,详细了解其认为不是bug的原因,从需求文档、用户场景等角度说明自己认为是bug的依据;若沟通无法达成一致,可邀请产品经理、测试经理等相关人员进行讨论,以需求和业务规则为标准来判定;若仍有争议,可记录下来,向上级汇报,寻求更高层的决策。

  • 如何区分前后端bug:可从现象初步判断,界面显示问题如页面布局错乱、按钮无法点击等可能是前端问题;数据处理、业务逻辑执行错误如数据保存失败、计算结果错误等可能是后端问题。还可通过抓包工具查看请求和响应数据,若请求发送正确但响应错误,可能是后端问题;若请求未正确发送或前端对响应数据处理有误,可能是前端问题。

工具操作类

  • Linux常用命令有哪些:文件操作命令如 ls (列出目录内容)、 cd (切换目录)、 mkdir (创建目录)、 rm (删除文件或目录);文本处理命令如 cat (查看文件内容)、 grep (在文件中搜索指定字符串)、 sed (文本处理和替换);进程管理命令如 ps (查看进程)、 top (实时查看系统进程状态)、 kill (终止进程)。

  • 使用Jmeter进行性能测试的基本步骤:创建测试计划,添加线程组设置并发用户数、循环次数等;添加HTTP请求,设置请求的URL、方法、参数等;添加监听器,如聚合报告、图形结果等,用于查看测试结果;配置完成后,启动测试,查看监听器中的性能指标数据,如响应时间、吞吐量、错误率等。

项目经验类

  • 讲一下你最近做的一个项目:阐述项目的背景、目标和主要功能;说明自己在项目中承担的角色和负责的工作,如测试用例设计、执行、缺陷跟踪等;分享项目中遇到的问题及解决方法,以及项目的成果和自己的收获。

  • 项目迭代情况,交付质量,遇到的问题,以及候选人如何解决这些问题:介绍项目的迭代周期和频率,说明交付的产品是否满足质量要求,有无重大缺陷;举例说明遇到的问题,如测试环境不稳定、需求频繁变更等,阐述采取的解决措施,如与运维人员协作解决环境问题、与产品经理沟通控制需求变更等。

测试用例设计类

  • 如何对一个登录功能设计测试用例:从正常登录、异常登录两方面考虑。正常登录包括输入正确用户名和密码登录;异常登录有用户名或密码为空、用户名不存在、密码错误、输入超长字符等情况。

  • 给一个三角形判断程序设计测试用例:可采用等价类划分和边界值分析。如输入三边为正整数且能构成三角形、不能构成三角形的情况,以及边界值如输入0、负数、非数字字符等。

工具使用类

  • 请简述Jmeter的作用和基本使用步骤:Jmeter用于性能测试等,可模拟大量用户并发访问。基本步骤包括创建测试计划,添加线程组设置并发用户数等,添加HTTP请求设置访问地址和参数,添加监听器查看测试结果。

  • Selenium主要用于什么测试?有哪些常用的定位元素方法:Selenium主要用于Web自动化测试。常用定位元素方法有id、name、class name、tag name、link text、partial link text、xpath、css selector等。

项目经验类

  • 在过往项目中,你遇到过最难发现的缺陷是什么?是如何解决的:可举例如兼容性问题,在特定浏览器和分辨率下页面显示异常。通过逐步排查代码、检查样式表,与开发人员协作,最终找到并解决问题。

接口测试方面

  • 接口测试怎么做,如何分析数据:首先获取接口规范,设计功能用例,验证各种入参和返回值,了解接口实现逻辑以做到逻辑覆盖,还需考虑接口的并发、安全和性能问题,采用工具或自写代码验证,发现问题及时报bug并跟踪。分析数据时主要对比返回数据与接口文档预期是否一致,检查数据的完整性、准确性、合理性等,也可通过抓包工具查看请求和响应数据来分析。

  • 注册账号成功,但登录失败,怎么排查:检查注册用户的数据是否成功传入数据库;调用登录接口,查看返回信息,若有报错根据报错信息分析,如密码错误、账号未激活等;检查登录接口的逻辑和代码,是否存在验证错误;查看数据库中用户表的记录,确认用户信息是否完整、正确;考虑是否存在环境问题或网络问题影响登录。

测试基础方面

  • 敏捷测试流程:敏捷测试是与敏捷开发紧密结合的测试模式。一般在迭代开始前,测试人员与开发等团队成员共同参与需求梳理,明确需求和验收标准;迭代中,测试人员与开发并行工作,进行测试用例设计和执行,包括单元测试、集成测试等,及时反馈和跟踪缺陷;迭代结束时,进行测试总结和回顾,对测试过程和产品质量进行评估,为下一次迭代提供改进建议。

  • APP测试和web测试有什么区别:从环境上,APP测试需考虑不同操作系统、机型等,web测试主要考虑浏览器和操作系统兼容性。从功能上,APP有更多与手机硬件交互的测试点,如摄像头、GPS等,web测试侧重页面展示和交互。性能方面,APP对电量、流量、安装卸载时间等有要求,web测试更关注响应时间、吞吐量等。

数据库方面

  • 把字段基金代码的长度扩长为8位:在MySQL中可以使用 ALTER TABLE 语句,如 ALTER TABLE 表名 MODIFY COLUMN 基金代码 VARCHAR(8);

  • 统计同一销售商和网点代码下持有的总份额:假设表名为 fund_table ,字段为 seller_id (销售商ID)、 branch_code (网点代码)、 share_amount (份额),可以使用 SELECT seller_id, branch_code, SUM(share_amount) AS total_share FROM fund_table GROUP BY seller_id, branch_code;

性能测试方面

  • LoadRunner分哪三部分:用户动作设计、场景设计、测试数据分析。

  • LoadRunner进行测试的流程:首先进行测试规划,明确测试目标和场景;然后创建虚拟用户脚本,模拟用户操作;接着创建运行场景,设置并发用户数、执行时间等参数;再运行测试脚本,监控场景执行情况;最后分析测试结果,查看响应时间、吞吐量、资源利用率等指标,评估系统性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2304849.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何查看图片的原始格式

问题描述:请求接口的时候,图片base64接口报错,使用图片url请求正常 排查发现是图片格式的问题: 扩展名可能被篡改:如果文件损坏或扩展名被手动修改,实际格式可能与显示的不同,需用专业工具验证…

赛前启航 | 三场重磅直播集结,予力微软 AI 开发者挑战赛!

随着微软 AI 开发者挑战赛的火热进行,赛前指导直播已成为众多参赛者获取技术干货、灵感碰撞和实战技巧的绝佳平台。继前两期的精彩呈现,第三、四、五期直播即将接连登场,为开发者们带来更加深入的 AI 技术剖析和项目实战指引。无论你是想进一…

VMware安装Centos 9虚拟机+设置共享文件夹+远程登录

一、安装背景 工作需要安装一台CentOS-Stream-9的机器环境,所以一开始的安装准备工作有: vmware版本:VMware Workstation 16 镜像版本:CentOS-Stream-9-latest-x86_64-dvd1.iso (kernel-5.14.0) …

【HarmonyOS Next】地图使用详解(一)

背景 这系列文章主要讲解鸿蒙地图的使用,当前可以免费使用,并提供了丰富的SDK给开发者去自定义控件开发。目前可以实现个性化显示地图、位置搜索和路径规划等功能,轻松完成地图构建工作。需要注意的是,现在测试只能使用实体手机去…

顶刊配图复现:Origin+DeepSeek完美协同

学习目标: (1)软件掌握熟练安装并配置Origin,掌握基础操作与核心功能。学会利用Origin进行多类型图表绘制及美化。掌握DeepSeek的数据清洗、统计分析与可视化方法。(2)设计能力理解顶刊图表的设计原则&…

Scratch032(百发百中)

提示:知识回顾 1、排列克隆体的方法 2、复习“发送广播并等待”积木 3、“获取第几个字符”积木的使用 4、使用角色显示得分 前言 提示:中国射箭拥有悠久的历史,是最早进入教育体系的运动项目之一,君子六艺中“礼,乐,射,御,书,数”的射 ,就是指的射箭。这节课我带你…

Minio分布式多节点多驱动器集群部署

Minio分布式多节点多驱动器集群部署 Minio分布式多节点多驱动器集群部署节点规划先决条件开放防火墙端口设置主机名更新域名映射文件时间同步存储要求内存要求 增加虚拟机磁盘(所有机器都要执行)部署分布式 MinIO测试上传与预览测试高可用MinIO 配置限制模拟单节点磁盘故障模拟…

【信号量】

信号量 目录操作系统信号信号的默认处理动作示例解释信号的捕获与处理使用 signal 函数使用 sigaction 函数 信号的阻塞 信号的生命周期1. 信号产生2. 信号在进程中注册3. 信号在进程中注销4. 信号处理main 7 signal命令含义使用场景手册页包含的关键信息1. 信号概述2. 信号列表…

一篇文章学懂Vuex

一、基于VueCli自定义创建项目 233 344 二、Vuex 初始准备 建项目的时候把vuex勾选上就不用再yarn add vuex3了 store/index.js // 这里面存放的就是vuex相关的核心代码 import Vuex from vuex import Vue from vue// 插件安装 Vue.use(Vuex)// 创建仓库(空仓库…

DeepSeek 助力 Vue 开发:打造丝滑的二维码生成(QR Code)

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…

图像处理篇---图像处理中常见参数

文章目录 前言一、分贝(dB)的原理1.公式 二、峰值信噪比(PSNR, Peak Signal-to-Noise Ratio)1.用途2.公式3.示例 三、信噪比(SNR, Signal-to-Noise Ratio)1.用途2.公式3.示例 四、动态范围(Dyna…

【Java】—— 二叉树

一、树型结构 树形结构是一种重要的数据结构,它类似于现实生活中的树的结构,由结点和边构成。树形结构具有以下特点: 树形结构是一种层次化的结构,由根结点、内部结点和叶子结点组成。根结点是树的顶部结点,没有父结点…

机场导航系统有哪些功能?精准定位与高效路径规划技术深度剖析

本文专为关注机场服务优化、乘客体验提升的IT技术员及航空业同仁而写。将深入探讨机场室内导航系统的核心功能,旨在解决乘客在机场内部定位、路径规划、服务寻找等方面的痛点。如需获取机场导航系统解决方案可前往文章最下方获取,如有项目合作及技术交流…

医疗AI领域中GPU集群训练的关键技术与实践经验探究(上)

医疗AI领域中GPU集群训练的关键技术与实践经验探究(上) 一、引言 1.1 研究背景与意义 在科技飞速发展的当下,医疗 AI 作为人工智能技术与医疗领域深度融合的产物,正引领着医疗行业的深刻变革。近年来,医疗 AI 在疾病诊断、药物研发、健康管理等诸多方面取得了显著进展,…

STM32-智能小车项目

项目框图 ST-link接线 实物图: 正面: 反面: 相关内容 使用L9110S电机模块 电机驱动模块L9110S详解 | 良许嵌入式 一、让小车动起来 新建文件夹智能小车项目 在里面复制19-串口打印功能 重命名为01-让小车动起来 新建文件夹motor&…

星环科技推出DeepSeek全场景解决方案:即开即用、企业级部署、端侧智能三位一体

星环科技(688031.SH)正式发布DeepSeek全场景解决方案,全面覆盖个人用户、企业客户及行业场景需求,为用户提供从个人到企业、从云端到本地的全方位AI应用支持,为不同需求的用户提供了灵活、高效且安全的AI解决方案。 省…

《全星质量管理 QMS 软件系统》:赋能企业高效质量管理

《全星质量管理 QMS 软件系统》:赋能企业高效质量管理 在当今竞争激烈的商业环境中,《全星质量管理 QMS 软件系统》脱颖而出,展现出了显著且无可比拟的应用优势。 首先,《全星质量管理 QMS 软件系统》犹如一张严密的质量管控大网…

【多模态处理篇三】【DeepSeek语音合成:TTS音色克隆技术揭秘】

最近帮某明星工作室做AI语音助手时遇到魔幻需求——要求用5秒的咳嗽声克隆出完整音色!传统TTS系统直接翻车,生成的语音像得了重感冒的电音怪物。直到祭出DeepSeek的TTS音色克隆黑科技,才让AI语音从"机器朗读"进化到"声临其境"。今天我们就来扒开这个声音…

C++Qt学习笔记——实现一个串口通信界面

CQt学习笔记——实现一个串口通信界面 一.界面二、项目结构三、头文件1. 文件头部2. 类定义3. 构造函数和析构函数4. 成员函数5. 成员变量 四、代码解析ReceiveAeraInit 函数解析SerialHelper 构造函数解析1. 为什么有两个 SerialHelper?2. 为什么用 :: 和 :&#x…