测试面试题

请做下自我介绍
复制名字+工作经历+工作项目+负责内容+擅长的领域工具和技术+软技能
例如:
	面试官你好,我叫xxx,毕业后一直在xx公司从事软件测试工作x年。参与过多个项目的测试,包括xx系统、xxx平台、xxx,项目中主要做过功能测试,接口测试、app测试及少量性能测试方面的工作。对于linx、数据库、fiddler、jmeter、adb的应用都比较熟悉。最近一段时间有参与一些自动化的测试,主要是线上主流程的一些接口测试(requests+allure+excel+untest)通过部署jenkins持续集成,也有web自动化,其中主要也是主流程的case交互(python+selenium).等等xxxx
公司的测试工作流程
复制考察是否熟悉测试过程中各个环节。
具备知识:软件生命周期、bug生命周期、测试流程。
大概流程为需求评审会议
--->
测试计划
(测试范围、时间节点、任务分配、测试策略、环境,风险评估)--->
测试用例编写
(测试思维)、内部/项目组评审--->测试执行(开发编译完成,提测):发现bug定位bug,提交并跟踪bug,轮回归测试,测试结束--->整理测试报告-->发布线上,线上问题跟踪。
可依据自己公司做适当调整。
描述最近做的这个项目,其中参与那些工作?
复制例如a项目
从项目立项、需求调研、需求宣讲、需求返讲、用例评审、迭代测试、线上跟进遗留、解决运营反馈、值班等。(以实际为准)
项目迭代次数,迭代周期、迭代内容、设计多少用例和脚本
复制以实际开发为准从初始版本到现在版本。小周期迭代基本俩周一次。迭代内容就是产品宣讲的,用例以个人分配任务为主,脚本以实际运行为主
项目中具体xxx模块是如何测试的?
复制测试用例方法(等价类、边界值、场景、错误推断、)
prd-流程图、思维点、功能业务流程
bug如何定位?如何定位前后端bug?
复制1.基于经验:例如页面排版、布局则明显是前端、对于网络不稳定下导致的js/css未加载完全或请求超时问题,也是前端bug
2.对于数据或逻辑处理上的问题,则可以通过抓包工作fillder\charles\或者开发工具校验出参、入参、及接口文档来判断预期值是否符合设计文档规范
说下测试中印象深刻的bug?以及如何解决的?
复制以实际为主。不一定是最难度的,也可以是最有趣的。
web测试和app测试区别?app测试和小程序测试区别
复制web:b\s架构,通过浏览器访问
 app:cs架构,通过客户端操作
    小程序:主要通过扫二维码、用户分享推荐、搜索小程序等获取。并且不需要下载按照
    app:需要去应用市场下载
        
常用的linux命令
复制cd\pwd\ls\ll\cp\mv\top\cat\mkdir\rf\
数据库增删改查
复制select 字段 from 表名:
 delete from 表名 where 字段=值;
update 表名 set 列名称=新值 where 条件(列名称=值);
insert into 表名 value *(值1,...);
jmeter如何进行接口测试
复制首先我们做接口测试的流程是:根据开发提供的接口文档,编写接口测试用例;然后根据用例使用Jmeter进测试;
Jmeter
做接口测试:添加线程组
--测试计划
--http请求,在http请求中设置好地址、参数,头部信息等;再添加查看结果树,查看响应消息,对比接口测试用例的预期结果一致性;同步检查数据库,确认接口测试是否通过。另外,部分数据会定义为用户变量调用;涉及批量测试,会使用CSV测试元件读取数据进行批量测试;
get和post请求的区别
复制get请求的参数是放在url里面,尔post请求的参数是放在请求体
get请i去可以被浏览器缓存,而post请求时不能呗缓存
get请求参数时放到url里面,而url的长度是受限的,它最大就是2048个字符;而post的长度是没有限制的
同样是因为get请求的参数放在url,所以安全性较差,post请求的参数放在body,安全相对好些。
get请求可以通过浏览器直接访问,支持刷新和后退。post请求呢,是不能呗直接访问的,刷新后台数据需要重新传送
自动化测试的流程是什么
复制common--->Readexcel ; data --->Datas.xlsx; report---->report.html;  test_cse---->suit_case.py,case1.py.

unittest+reqiuests+htmltestrunner+json+excel
web自动化定位元素方式
复制id,name,class name ,tag name link text,xpath,css seleector
个人职业规划
复制测试经验、测试能力、测试广度、深度。丰富自己
软件测试是什么?软件测试的目的与原则
复制定义:
在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程
目的:
测试是程序的执行过程,目的在于发现错误
软件测试为了发现程序中存在的代码或业务逻辑错误
软件测试为了校验产品是否符合用户的需求
软件测试为了提高用户体验
原则:
测试应尽早启动,介入(需求分析阶段),所有的测试都应追溯到用户需求,测试正面软件存在缺陷,不可能执行穷尽测试,完全测试是不可能的,测试需要终止

对错误结果要进行一个确认的过程(测试的详细数据,截图,前置条件等),指定严格的测试计划;妥善保管测试过程中的所有文档,设计测试用例应该考虑到合法的输入和不合法的输入
什么是软件质量
复制软件质量就是”软件与明确的和隐含的定义的需求相一致的程度“。具体的说,软件质量是软件符合明确叙述的功能和性能需求,文档中明确描述的开发标准,以及所有专业开发的软件都应具有隐含特征的程度。影响软件质量的主要的因素,这些因素是从管理角度对软件质量的度量。正确性、健壮性、效率、完整性、可用性、可理解性
可维修性、灵活性、可测试性、可移植性、可再用性、互运行性(产品转移)
目前主要的测试用例设计方法是什么
复制白盒测试:逻辑覆盖、循环覆盖、基本路径覆盖
黑盒测试:边界值分析、等价类划分、错误猜测法、因果图、状态图、随机测试、场景法
简述什么是静态测试、动态测试、黑盒测试、白盒测试、α测试、β测试
复制静态测试:是不运行程序本身而寻找程序代码中可能存在的错误或评估程序代码的过程

动态测试:是实际运行被测程序,输入相应的测试实例。检查运行结果与预期结果的差异,判定执行结果是否符合要求,从而检验程序的正确性、可靠性和有效性、并分析系统运行效率和健壮性等性能

黑盒测试:一般用来确认软件功能的正确性和可操作性,目的是检验软件的各个功能是否能得以实现,把被测试的程序当作一个盒子,不考虑其内部结构,在知道该程序的输入和输出之间的关系或程序功能的晴空下,依靠软件规格说明书来确定测试用例和推断测试结果的正确性


白盒测试:根据软件内部的逻辑结构分析来进行测试是基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量

α测试:是由用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试

β测试:由软件的一个或多个用户在实际使用环境下进行的测试
软件产品质量特性是什么
复制功能性:适应性,准确性、互操作性、依从性、安全性

可靠性:成熟性、容错性、易恢复性

可使用性:易理解性、易学习性、易恢复性

效率:时间特性、资源特性

可维护性:易分享、易变更、稳定性、易测试

可移植性:适应性、易安装、遵循、易替换
软件测试分为几个阶段 各阶段的测试策略和要求
复制测试过程会依次经历单元测试、集成测试、系统测试、验收测试

单元测试:是针对软件设计的最小单位-程序模块甚至代码块进行正确性校验的测试工作

集成测试:将模块按照设置要求组装起来进行测试,主要目的是发现与接口有关的问题。

系统测试:是在集成测试通过后进行的,目的是充分运行系统,验证各子系统是否能够正常工作且按照设计的要求。

验收测试:以需求阶段的<<需求规格说明书>>为验收标准
测试人员在软件开发过程中的任务是什么?
复制尽可能早的找出系统中的bug
避免软件开发过程中缺陷的出现
衡量软件的品质、保证系统的质量
关注用户的需求,并保证系统符合用户需求
总的来说:确保软件的质量
为什么从上家离职
复制还是选择说套话吧)首先感谢上家公司提供的提升自我工作经验的机会,之所
以想离职是因为想积累不一样的经验,更进一步的学习,来提升自己。我觉得贵
公司非常符合自己的要求。
posted @   乐乐乐乐乐乐樂  阅读(14)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
jQuery火箭图标返回顶部代码
点击右上角即可分享
微信分享提示