软件测试面试200问(附100W字文档)

🍅 视频学习:文末有免费的配套视频可观看

🍅 关注公众号【互联网杂货铺】,回复 1 ,免费获取软件测试全套资料,资料在手,涨薪更快

软件测试面试题:项目

1、简单介绍下最近做过的项目

根据自己的项目整理完成,要点:

1)项目背景、业务、需求、核心业务的流程

2)项目架构,B/S 还是 C/5,数据库用的什么? 中间件用的什么?后台什么语言开发的?是否有做 App 端,是否有 H5 是否开发小程序等等。

3)项目前端有哪些功能模块,后台有哪些功能模块?

2、拿一个你所负责的模块,讲下具体怎么测的?

根据自己的项目整理完成,核心要点:

1)拿一个你负责过的模块,核心业务模块讲解

2)业务流程是怎样的,需求怎么样,有什么规则没,规则简单介绍

3)你是如何分析的,讲明分析思路,测试点,主要怎么考虑测试的,主要核心测试重点在哪里,

用了什么测试方法等等。15

3、你在这个项目里面主要做了些什么工作?

1)在这个项目中,主要是以功能测试跟后台接口测试为主,主要参加了需求评审会议,用例的编写,参与用例的评审,执行测试。

2)协助开发定位问题解决发现的 bug,编写测试报告,协助上线。

3)另外就是做了 APP 的一些相关项测试,像兼容性测试、稳定性测试、安装卸载版本覆盖测试和 app 性能都是有做过的,例外后期有做过接口自动化等。主要就是做了这些工作。

[这个具体根据你自己的简历上写的来说]

4、你们项目组有多少人、开发多少个、测试多少个?

[公司具体人数,可以不太清楚,项目组多少一定清楚]

[这个一定要根据自己的简历项目大小来说,不能乱说]

产品 1、项目 1 个、架构师 1 个、前端 3 个、后端 5 个、ios1 个、Android 1 个、测试 3 个(测试主管,核心测试人员)、运维 1 个、UI 一个

5、测试人员怎么分工的?

1)我们测试组 3 人,1 个测试组长,2 个测试,一般都是根据需求的复杂程度大小来,尽量是自己熟悉哪个版块的就继续做那个版块。

2)比如:我这边主要是负责前端大部分的功能模块,还有接口测试跟 ui 自动化测试,另一个同事主要是功能测试这边,组长这边也负责一些功能测试,包括一些性能跟安全测试。

3)其实测试工作也划分的没有那么细,后期我们也会做交叉测试,相互测试功能,性能跟安全测试我也会参与一下。

6、项目的送代周期? 多久一选代? 一个版本你们发现多少 bug

[切记工具自己所选择的项目来回答]

我们公司是这样的,迭代还是蛮快的,一般是两个星期一个迭代,迭代测试两轮。Bug 的话不一定哦,关键还得看开发,哈哈,开发的版本质量好的话,BUG 就会少些,整个版本比较好的情况下大概也就 二十来个 BUG,当然如果遇到开发是个新手,那么找到 60-70 个也是很常见的,比如之前的那个金融 项目,足足发现了 72 个 BUG,这样的情况下追踪 BUG 的工作量都比较的大,如果是版本选代的话,那么基本就不会出现多少 BUG 了。

参考答案 2

因为我们项目的用户活动和三方合作平台比较多,一般半个月或者 1 个月肯定会有一个迭代版本, 假如用户或者合作方突然有很紧急的需求,那一般老大他们会向上发邮件和 OA 呈批给(产品经理,项目经理),如果通过了就会马上加急处理这个需求,测试完成直接上线。现在都是维护为主,但新需求也不断有,一般一个版本上百个 bug 是有的。

7、你们整个项目写了多少用例,你负责的模块大概写了多少用例?

[切记己根据自己的项目及负责的模块来]

答:这个得根据项目的复杂程度,我们最近做的这个也还好,整个项目写了大概 2千3 百多条(有

点多了),我负责的模块就写了一千多条(你要思考,你负责了哪些模块,大概评估下,不要乱喊)。

总结注意点:没有标准答案,先说你的前置条件,再说数据,只要你前置条件和数据匹配即可。

8、最近的版本写了多少用例?

(总结注意点:没有标准答案,先说你的前置条件,再说数据,只要你前置条件和数据匹配即可

特别注意:你如果是半个月的版本,一般给你两天写用例,你自己评估下写多少。

半个月的版本:1-2 天需求分析,1-2 天写用例,1 天评审用例,其余的时间就是执行回归 bug,

编写测试报告)

最近的版本因为没有特别的用户活动,产品那边也没有给特别大的改动需求,我负责的有 5 个模块

吧,大概有 180 多条用例。

软件测试面试题:数据库

1、你们数据库怎么用

[原来我们数据库用的比较多的,就是数据结果检查,测试一些数据准备,性能测试造大量数据。]

[测试执行到的结果,我们需要通过 sql 语句 select 来查找数据库对应的表,看看数据库信息跟我

们执行的结果是否一致,比如:生成申请借款后,我们会去数据库里面去检查下,数据库中数据是

否跟申请订单数据一致。]

[我们在测试执行时需要做一些测试数据准备,我们就用 insert into 输入数据或(者 update set 修改

数据),我们需要到数据库查看有没有相关记录保存,保存的数据跟我们输入或者修改的记录是否

一致;比如:原来我们一个初审功能里面有个分页功能,测试分页功能,需要 100 条数据,我们就

通过数据库操作添加 100,可以用 insert into。也可以用脚本实现,或者存储过程]

[还有在做性能测试时,模拟用户场景时需要用到大量的数据,这时就需要我们到数据库中制造大

量的数据出来。比如说,测试充值,需要大量用户数据,充值表中大量数据,比如 10W 条数据,

我们就用存储过程去造。]

2、存储过程是怎么编写的

delimiter∥

create procedure 存储过程名(n int)

BEGIN

declare i int default 0;

while i <= n do

Insert into 表名 values(值 1,值 2...)

set i=i+1;

end while;

end∥

delimiter;

cal 存储过程名(数据量(n));

3、常见的关系型数据库有哪些

mysql、SQL Server、Oracle、Sybase、DB2 等

MySQL 是开源免费的;

SQL Server 是由微软公司开发的关系型数据库管理系统,一般用于 Web 上存储数据;

Oracle 数据的大量性数据的保存的持久性;

4、你们用的什么数据库连接工具

Navicat,数据库版本 mysql 5.7,端口默认是 3306

5、左连接与右连接有什么区别

左连接:以左边的表(employ)为主,显示左边表列的全部数据,如果右边表没有对应的数据,则为 NULL

右连接:以右边的表(student)为主,显示右边表列的全部数据,如果左边表没有对应的数据,则为 NULL

软件测试面试题:测试思维

1、打电话功能怎么去测?

我们会从几个方面去测试:界面、功能、兼容性、易用性、安全、性能、异常。

1)界面我们会测试下是否跟界面原型图一致,考虑浏览器不同显示比例,屏幕分辨率。

2)功能:给不同人员打电话,不同号码打电话,不同运营商,测试每个按钮是否正常使用,拨打号码,是输入还是,复制过程,还是其他地方跳转过来,多次拨打电话,双卡选择不同电话卡。

3)兼容性:不同手机型号,厂商,不同系统版本,屏幕大小,分辨率,内存大小

4)易用性:操作是否说的越多越好

2、给你一个杯子怎么测?

功能测试:

主要关注水杯基本功能

1、水杯是否可以正常装水

2、水杯是否可以正常喝水

3、水杯是否有盖子,盖子是否可以正常盖住

4、水杯是否有保温功能,保温功能是否正常保温

5、水杯是否会漏水,盖住盖子拧紧后是否会漏水

界面测试:

主要关注水杯外观、颜色、设计等方面

1、外观是否完整

2、外观是否舒适

3、颜色搭配及使用是否让人感到舒适

4、杯子外观大小是否适中

5、杯子是否有图案,图案是否易磨损

易用性测试:

主要关注水杯使用是否方便

1、水杯喝水时否方便

2、水杯拿起放下是否方便,这里会行注到水杯形状的测试

3、水杯装水是否方便

4、水杯携带是否方方便

5、水杯是否有防清功能

6、水杯装有低温或者高温水时,是否会让手感到不适

性能测试:

1、水杯装满水时,是否会露出来

2、水杯最大使用次数

3、水杯的保温性是否达到要求

4、水杯的耐寒性是否达到要求

5、水杯的耐热性是否达到要求

6、水杯掉落时时,是否可以正常使用

7、水杯长时间放置时,是否会发生泄露

兼容性测试:

主要关注水杯是否可以装其他液体,如果汁、汽油、酒精等可移植性测试:

主要关注水杯放置环境等

1、将水杯放在常温环境中,使用是否正常

2、将水杯放在零下的环境中,使用是否正常

3、将水杯放在高于正常温度的环境中,使用是否正常

安全性测试:

主要关注水杯外观和各种异常条件下是否释放有毒物质等

1、当水杯装满热水时,水杯是否会烫手

2、当水杯装上水后,是否会产生有毒物质

3、把水杯放在零下环境时,是否会产生有毒物质

4、把水杯放在高温环境时,是否会产生有毒物质

软件测试面试题:接口测试与接口自动化测试

1、两个接口有关联, jmeter 具体怎么做

另外两种问法:上个接口的返回值是下个接口的请求参数,这种如何处理?动态关联有没有了解过?

这个涉及到动态关联,首先要搞清楚后一个接口需要用到上一个接口的什么数据,例外要看数据是

在哪里取的,是在 head 还是在 body 里,然后如果要取的数据是 json 格式我会在发请求用 json提

取器 去取这个数据,如果是其他格式的就用边界提取器或正则表达式去取数据

就拿我当时做的那个下单接口来说吧,因为下单接口需要先登录,需要用到登录接口的cookies 来

做鉴权,首先就是把登录接口调试通过,然后在登录接口的 http 请求中添加一个边界值提取器或

者也可以用正则表示式提取器去提取登录接口的响应头中的 cookies 值

然后在下单接口中需要添加一个 http cookies 管理器,在 http cookies 管理器中引用登录 接口提取

出来的 cookies,这样就可以了

如果是不同的线程组的话,那在登录接口中还得添加一个 Beanshell 取样器,在Beanshell 取样器

中,利用函数助手中的 SetProperty()函数把提取出来的 cookies 设置为全局变量,然后在下单接

口的 http cookies 管理器中利用函数助手中的 Property()函数引用登录接口中设置的全局变量,这

样就可以了。

2、接口测试主要目的是什么?

例外两种问法:接口测试的价值,意义?为什么要做接口测试?

主要就是验证后台服务端的业务逻有没有问题,提高测试的效率

①越底层发现 bug,它的修复成本是越低的

②前端页面修改频繁情况下,接口测试不受页面元素改变而影响

③检查系统的安全性,前端传参不可信,比如京东购物,前端价格不可能传入-1 元,但是通过接

口可以传入-1 元

④如今的系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降,接口自动化测

试可以提高测试效率

⑤接口测试相对容易实现自动化持续集成,且相对 U 自动化也比较稳定,可以减少人工,回归测

试人力成本与时间,缩短测试周期

3、 接口测试的流程

1,首先分析开发给到的接口文档

2,接口文档分析完成,编写测试用例

3,然后借助接口测试工具去测试执行测试用例

4,发现 bug 提交 bug,并跟进 bug 修复

4、假如公司想要做自动化,让你去做,你会从那些方面考虑入手?

1.测试范围

2.时间进度

3.人员安排

4.框架确定

5.环境的搭建

6.准备好测试数据 数据驱动

7.工程的管理后期的维护

5、你写了多少接口自动化用例

自动化用例,也没有具体数过,当时我负责的所有模块的接口的自动用例都是我这边独立完成的,

有模块的用例会多一点,有些会少一点,这具体看接口的参数有多少,参数多限制条件多的,一般

用例会比较多一点,我负责的模块大概有 100 多条用例是有的!

6、比如说你接口的请求参数需要加密处理的,你们用的是什么加密方式,你加密怎么处理的?

这个是有做过的,就拿当我们那个项目的登录接口来讲吧,那个登录的密码是需要进行加密

加密之后再进行传输。这里需要问开发要加密算法,我们会把它封装成一个函数,调用这个加密函

数对密码加密,之后再进行传递。我们公司的加密算法,大部分用的都是 MD5 的加密算(base64)

7、你查询出来返回结果是密文,密文你怎么测试

这里首先要搞清楚用的是什么加密算法,问开发要解密算法,对返回的数据进行解密

解密完成之后在与预期结果对比,去进行断言

软件测试面试题:性能测试

1、你们性能观察哪些指标,大概指标范围是怎么样的。

对于指标这块,业务方面的指标主要有:并发数,90%用户的平均响应时间错误率,吞吐量/吞吐

率这些,例外还需要关注服务器资源的使用情况,像:CPU 的使用率、内存的 占有率,磁盘 IO,

网络。

我们那个项目当时只针对,登录,搜索查询,下订单,购物车相关接口,支付等业务做了些简单的

并发,压测这块,指标大概是这样的:

单基准业务并发测试登录,注册,查询 1s 以内,下订单,购物车相关接口,支付 2s 以内,混合

业务性能:5s 以内

响应时间:登录,注册业务<2s 之内查询,下订单,购物车,支付业务<3s

充值,提现,查看充值日志,查看提现日志业务查询标的,<3s

投标,申请借款<5s

错误率:0

吞吐量/吞吐率:200 左右请求/sec

CPU:80%以内

内存:80%以内

I/O: %util<=80%,%nowait<=20%

%util: 磁盘一秒中有百分之多少的时间用于 I/O 操作,% nowait:磁盘等待处理时间占比

带宽:<=系统带宽的 30%,无丢包,无延迟,无阻塞

2、这个测试的环境配置,如转速度

租用的服务器,一台数据库服务器,一台后端服务器

8 核 16G 网络带宽 1000M,2.5GHZ 磁盘 15000pm 转数

3、性能测试计划有哪些内容

写过,主要是时间进度安排与工作安排,主要是环境,测试任务,测试需求,测试方法与策略,测

试环境准备,测试通过的标准。

比如说原来我们一个项目性能测试时做了 5 天,那我们计划是,测试策略与用例编写一天,测试准

备需要 1 天,测试执行 2 天,报告总结 1 天。

软件测试面试宝典

上面只是软件测试面试宝典的一部分整份文档一共有216页,【点击文末小卡片免费领取】

全部为大家展示出来肯定是不太现实的,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习!希望大家都能够有些收获!

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看。

2024年吃透经典软件测试面试题200问,3天学完,让你的面试少走99%弯路!【存下吧,附100W字面试宝典】

  • 19
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值