废话不多说,上干货!
目录
问题4:你发现了个bug,但开发认为这不是个bug,你会怎么办?
问题12:Linux中不同权限对应的数字是什么?比如755是什么意思?
问题16:解释命令的含义Is-la lgrep log、 ps -ef、kill -9 2543
专栏一:软件基础
软件测试基础考察的是在测试过程中是否进行了最基本的规范测试。
问题1:你认为什么是软件测试?
答案:描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
问题2:软件测试的目的是什么?
答案:通过手工测试或者工具辅助,尽可能多的发现程序错误,以便提高软件质量和用户满意度。
问题3:测试用例包含的内容有什么?
答案:用例编号、测试项目、用例标题、重要级别、前置条件、输入数据、执行步骤、预期结果、实际结果、是否通过
问题4:你发现了个bug,但开发认为这不是个bug,你会怎么办?
答案:
1.将该问题先提交到缺陷管理工具中进行备案;
2.寻找判断依据:例如需求说明,设计文档,确认是否和预期要求一致;
3.站在用户的角度是否因设计不合理等原因严重影响到用户使用;
4.与开发人员、设计人员,来判断是否是缺陷
5.及时向测试经理反馈问题,并将自己认为是个缺陷的理由合理的说出来;
6.如还无法进行确认,经理向上级反映,及时与客户进行沟通确认;
问题5:给你一个杯子如何进行测试(软件测试的类型有哪些)?
这个问题,比如给你一张桌子,一辆电梯如何测试一样,主要考察的是测试人员能否全方位分析问题,换句话也是考察软件测试的类型有哪些?模板基本按照如下即可:
答案:
- 需求测试:查看杯子使用说明书
- 界面测试:查看杯子外观
- 功能度:用水杯装水看漏不漏;水能不能被喝到
- 安全性:杯子有没有毒或细菌
- 可靠性:杯子从不同高度落下的损坏程度
- 可移植性:杯子再不同的地方、温度等环境下是否都可以正常使用
- 兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等
- 易用性:杯子是否烫手、是否有防滑措施、是否方便饮用
- 用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
- 疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等
- 压力测试:用根针并在针上面不断加重量,看压强多大时会穿透
- 跌落测试: 杯子加包装(有填充物),在多高的情况摔下不破损
- 震动测试: 杯子加包装(有填充物),六面震动,检查产品是否能应对恶劣的铁路\公路\航空运输
- 期望输出:
- 该期望输出需查阅国标、行标以及使用用户的需求
- 说明书测试: 检查说明书书写准确性
问题6:如何制定测试计划?
答案:软件测试计划是对测试过程的一个整体上的设计;通过项目和产品的信息,对测试范围,测试风险进行分析,对测试用例,工作量,资源和时间等进行估算,对测试采用测试策略,方法,环境,资源,进度等做出合理的安排。每个公司用的测试计划的模板,测试计划要点一般包括:
- 确定测试范围
- 制定测试策略
- 测试资源安排
- 进度安排
- 风险及策略
问题7:测试报告的内容有哪些?
答案:
1)项目概述
背景介绍、测试目的、测试范围项目经理、需求、开发、测试等相关负责人名字
2)数据统计
人力投入:需求分析、设计测试用例、执行测试需要多少人
用例覆盖统计:用例总数、通过用例数、未通过用例数、未测试用例数,通过率
问题单不同维度统计:按照bug严重级别统计,按bug类型分类统计,按bug状态分类统计等等
3)测试风险,规避措施,以及优先级
测试用例覆盖不全
测试人力不足导致测试进度滞后
测试人员经验不足导致测试结果分析不全面
4)对被测试版本的一个评估给予测试结论:通过/不通过/有条件测试通过
问题8:怎么判断一个缺陷是前端还是后端的问题?
答案:
1.可以通过fiddler/F12抓包分析前后端的交互,如果前端请求参数不对则是前端的问题,如果前端请求参数正确但后端响应不对则是后端的问题;
2.也可以通过看日志,根据日志中的提示信息来判断是前端还是后端的日志
3.根据经验判断,常见的问题类型如下:
前端问题:界面显示、字体、对齐、展示消息等
后端问题:数据问题、业务逻辑问题等
问题9:C/S模式和B/S模式,有什么区别?
答案:
C/S模式又称C/S结构, 是软件系统体系结构的一种. C/S模式与B/S模式相比, C/S模式应用系统最大的优点是不依赖企业外网环境, 即无论企业是否能够上网, 都不影响使用。C/S模式需要安装后才能使用, 即以软件的形式存在
B/S模式即浏览器和服务器结构, 它是随着 Internet技术的兴起, 对C/S结构的一种变化或者改进的结构. 在这种结构下, 用户工作界面是通过WWW浏览器来实现, 极少部分事务逻辑在前端实现, 但是主要事务逻辑在服务器端实现, 形成所谓三层结构.不需要安装客户端, 在网页上就可以访问, 即以浏览器为载体的形式呈现
问题10:说说印象让你最深的bug是什么?
这个可以根据自己的项目来答,千万不要答上线之后还存在的严重bug,不然基本记得面试就凉凉了。
专题二:Linux命令
Linux命令相对于WIndows来说复杂很多,但又是软件从业人员必须掌握的一部分,因为大部分的中间件都部署在Linux服务器上,包括测试人员最常查看的日志也必须通过Linux进行查看。所以这是所有企业必面之一。目前最主流的是CentOS,所以以下面试题围绕的是CentOS的命令。
问题11:说出你常用的10个以上的Linux命令
答案:
1.man,linux中的男人,是查看命令说明
2.su,切换用户
3.cd,切换目录
4.ls,查看目录
5.mkdir,创建目录
6.mv,修改或移动目录
7.vi,编辑文件
8.more、tail、cat、less,查看目录
9.tar、unzip,解压文件
10.free,显示内存使用情况
... ...
问题12:Linux中不同权限对应的数字是什么?比如755是什么意思?
答案:4表示可读,2表示可写,1表示可执行。权限从左到右分别是用户所有者,用户所在组和其他用户。755表示所有者有的权限是4+2+1可读可写可执行,用户所有者所在组权限为4+1可读可执行,其他用户权限4+1
问题13:如何查看后台所有java进程?
答案:ps -ef |grep java 或者 jps -m,ps -ef|grep 进程名,这个命令是查看相应进程
问题14:如何使用linux命令查看后台日志?
答案:使用tail-f日志文件名称
问题15:如何使用tar命令压缩和解压gz包?
答案:
1.压缩: tar -zcvf
tar zcvf FileName.tar.gz DirName
2.解压: tar-zxvf
tar zxvf FileName.tar.gz
问题16:解释命令的含义Is-la lgrep log、 ps -ef、kill -9 2543
答案:
Is -la lgrep log查找当前目录含有log的文件
ps -ef查看所有进程
kill-9 2543强制终止2543进程
问题17:重启网络服务的命令?
答案:
service network restart或systemctl restart network
network网络服务 firewalld防火墙 mysql数据库服务 httpd apache 服务
问题18:查询端口占用并杀掉占用端口的进程?
答案:
1.已知程序名称查找占用了端口:
举例
查进程ID ps-ef|grep 程序名[如tomcat)
根据上一步结果,查占用端口netstat -nap I grep pid(109)
2.已知占用了哪个端口,查程序名称
查进程ID netstat -nap Igrep端口(8080)
根据上步结果,查应用程序名ps ef| grep pid
问题19:测试环境如何搭建?
答案:
一般根据开发给的部署文档指建, 都署文档操作步骤如下:
1.安装依赖软件java (jak. tomcat. redis. mysql)等
2.导入基础数据(建表,导入初始化的数据)
3.获取代码(编译、打包),war包
4.部署到tomcat的webapps目录下
5.修改配置文件
6.启动服务
问题20:Linux如何查看CPU、磁盘等信息?
答案:
1.查看CPU详细信息
cat /proc/cpuinfo
2.查看内存信息
cat /proc/meminfo
3.查看磁盘信息
fdisk -l
先更新到这里,笔者也要准备准备面试了,正好也一起学习学习,后面会更新Jmeter、数据库专题、python基础知识专题、docker专题、selenium专题、pytest、unittest等自动化测试框架专题和性能测试专题。原创不易,如需转载请与我联系,谢谢!