1、用过 awk 命令吗
linux 三大文本操作神器,gerp、sed、awkgerp、sed 作为测试一定要会awk 运维用得最多,测试会用是加分项
2、会 httprunner 吗
HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,会用就说会用,不会用就回答替代品,pytest、unittest
10、会 httpclients 吗
HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包。属于 java 开发的一个工具包,用 java 做自动化肯定是会的,用 python 做自动化可以回答不会。
3、压力测试系统响应时间多少
根据 2-5-8 原则去回答即可
2 秒以内得到响应时,会感觉系统的响应很快
2-5 秒之间得到响应时,会感觉系统的响应速度还可以
5-8 秒以内得到响应时,会感觉系统的响应速度很慢,但是还可以接受
超过 8 秒后仍然无法得到响应时,会感觉系统糟透了
4、测试方案里面包含什么
测试人员、资源(硬件、软件环境)、测试目标、测试范围、测试完成标准
5、API 测试怎么做
API 测试就是接口测试参数校验、幂等性、接口性能(响应时间、并发数)、安全性(参数传递安全性、接口鉴权、数据安全性(数据隔离,数据权限))
6、postman 怎么做接口关联的测试
使用 js 提取保存到环境变量里面,其他接口可以直接使用环境变量的值即可。
7、HTTP 和 HTTPS 有什么不同
1、https 协议需要到 ca 申请证书,一般免费证书较少,因而需要一定费用。
2、http 是超文本传输协议,信息是明文传输,https 则是具有安全性的 ssl
加密传输协议。
3、http 和 https 使用的是完全不同的连接方式,http 使用 80 端口,https
是 443。
4、http 是简单的无状态的连接;HTTPS 协议是由 SSL+HTTP 协议构建的可进
行加密传输、身份认证的 络协议,比 http 协议安全
8、简述下测试流程
根据自己公司的测试流程回答。
完整测试流程:需求评审->测试任务分配->测试用例->冒烟测试->冒烟通过后正式测试(2 轮)-> 回归测试(主流程或者全量回归,根据公司要求) ->预发布环境测试 -> 写测试 告 -> 找产品经理验收测试->上线验证测试
9、如果负责的系统和其他测试负责的系统测试范围有歧义怎么办?
牵头开会讨论(拉上双方的测试领导和当事人),确认各自的测试范围,避免漏测。
10、自动化测试脚本修改频率高吗,每次版本都需要去修改自动化脚本?
自动化脚本目的是用来做主流程的回归测试,或者是前置测试参数的构造,所以只要主流程稳定,自动化脚本就稳定。
11、有没有出现比较严重的 bug
没有严重 bug,有的话你也不能说。
12、安全测试会吗
如实说就好,但是基础的安全项要知道,比如:越权、CSRF 攻击、跨域等等,主要是考你是否有安全意识,安全测试涉及知识面广而深,真正能玩得转安全测试的凤毛麟角,属于加分项。
13、怎么样在不同的测试环境进行高效测试(手工和自动化在同一个环境,不同环境指 UAT、SIT 环境等)
UAT: (User Acceptance Testing)用户验收测试
SIT: (System Integration Testing)系统集成测试
自动化测试的时候,使用特定标签的账 ,在脚本前置条件处理的问题,保证自动化测试完成后将每次测试产生的数据清理干净即可。手工测试的时候 一样使用特定标签的账 ,测试完成后使用脚本清理测试产生的数据。
14、断言做在什么地方,怎么做断言
测试用例执行完成之后进行断言
怎么做断言分情况:
接口自动化:根据接口返回,与预期结果进行对比(预期结果事先计算好的,或者是直接去数据库查询出来,或者其他方式,总之要保证数据准确性没有问题)UI 自动化:根据 UI 页面元素返回进行断言,元素是否存在,或者值是否正确
15、项目相关,问的比较细
项目相关的问题,总体思路:
1、注意逻辑性
2、多用专业术语(包括行业专业术语)
3、只讲业务大的流程,不要讲细节(如果你真的了解的很细,知道代码的内部逻辑实现,这种情况可以讲细节,这是加分项)
4、问到不懂的直接说不是自己负责不知道细节
16、Try catch 的运行顺序
先运行 try 里面的代码块,如果 错了才会运行 catch 里面的代码块
17、Xpath 轴是什么
轴是相对于当前节点的节点集
18、如果一个系统调用另一个系统,出现异常了( 络异常),通过手工测试测不出来,这时候要怎么测通过脚本,使用 MOCK 模拟故障系统各种类型的返回来测试本系统。
19、需求分析时,有进行非功能性分析吗
有,需求分析时会做易用性分析,目标用户习惯分析,视觉效果分析,竞品分析等等
20、ABtest 时,怎么去实现?比如设置走 A 的概率 60%,走 B 的概率 40%,怎么
去开发
ABTest:简单来说,就是为同一个产品目标制定两个方案,让一部分用户使用 A 方案,另一部分用户使用 B 方案。
实现思路:
abtest 对于业务开发来说,最好是独立的,也就是我们需要在用户无感知切入 abtest,同时注意保持业务一致性,通过 nginx+lua 方案,通过在 nginx 中执行嵌入的 lua 脚本,动态计算 upstream,将不同标签的用户导向不同的程序版本,达到 abtest 的目的。
21、怎么定位性能瓶颈,比如线程组是 10 的时候,TPS 是 60,线程组是 20 的时
候,TPS 还是 60,怎么去定位问题
10 个线程的时候事物处理能力是 60,20 个线程的时候事务处理能力是 60,根据当前数据暂时无法判断是否存在性能问题,因为并不能证明 60 就是该服务器的最大事物处理能力,还需要进行其他的测试来确定服务器最大事物处理能力峰值。
建议增加测试场景如下:
场景一、超过 20 个线程场景,记录 TPS 值
场景二、10-20 之间线程场景下,记录 TPS 值
当某个场景得到的结果 TPS 到最大值后,随着线程数增加 TPS 值变小,这就说明这个最大是就是该机器的最大 TPS。最终通过其他指标去寻找系统瓶颈即可。
22、怎么去做兼容性测试
1、web 端做浏览器内核兼容即可
Trident 内核(代表:Internet Explorer)
Gecko 内核(代表:Mozilla Firefox)
WebKit 内核(代表:Safari、Chrome)
Presto 内核(代表:Opera)
2、移动端
android 系统版本屏幕分辨率
主流手机厂商(苹果、华为、小米、三星、中兴、oppo、vivo)
23、三方接口,第三方出现问题了,你们怎么处理
第三方接口出了问题,首先排查出现问题的原因,是我方导致还是第三方导致。根据排查结果做对接流程和对接测试流程优化。如果是第三方修改了接口上线了,我方不知道,导致的 bug,这个时候需要变更对接流程,约定版本上线以及变更能及时通知我方,进行联调测试。如果是我方的问题,优化测试流程,增加测试范围和交叉测试环节,防止漏测。
24、带 cookie 的接口,自动化脚本怎么写
将 cookie 获取作为前置条件即可。
福利
福利大放送,从入门到实战,从电子书到面试真题,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你。
如果需要这份学习资料,私信小编“面试”免费领取
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!