软件测试面试题:WEB+网络|接口测试|性能测试|自动化测试
1. http代码表,常考题目
404:找不到资源
500:服务器内部错误,无法完成请求。
501:服务器不支持请求的功能,无法完成请求。
502:充当网关或代理的服务器,从远端服务器接收到了一个无效的请求。
301:永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI,今后任何新的请求都应使用新的URI代替。
302:临时移动。与301类似。但资源只是临时被移动,客户端应继续使用原有URI。
200:成功。
2. TCP/IP四层网络模型
链路层、网络层、传输层、应用层。
3. TCP/UDP区别?
TCP: 可靠传输协议,需要三次握手连接,有确认重传机制,特点是可靠、准确、有拥塞控制,缺点就是比较慢,传输量比较小,适用于升级、下载;一句话:TCP是可靠的传输。
UDP: 不可靠传输协议,面向非连接的协议,优点是传输量大、速度快,缺点是已丢失、没有拥塞控制,适用于直播、视频等。一句话:UDP是不可靠的传输。
4. html css js运行的先后顺序是什么?
界面加载的时候先加载html在加载css最后加载js
5. session和cookie的区别是什么
session存放在服务器端用来校验客户端的身份
cookie存放在客户端,每次从客户端往服务器发请求时,将cookie带到服务器端,用来校验客户端的身份
二、接口测试
1. 怎么用JMeter测试接口?
如果使用JMeter进行接口测试:
测试前了解需求,根据接口规格说明书梳理业务;
接下来设计用例,分析接口的入参和出参,分清楚有哪些有效输入和无效输入,设计用例(原则:用最少的用例覆盖所有有效输入,针对每一个无效的输入设计一个测试用例,如果有错误码没有覆盖到,还要对每个未覆盖的错误码分别设计一个用例);
准备测试数据,比如:测试所需的账号、密码、key 等信息;
打开JMeter,创建一个线程组,根据接口类型,填写好对应的接口地址和请求方式等;
参数化配置,添加配置元件CSV Data Set Config,定义变量,并准备CSV格式的数据,变量的引用用${变量名}的格式;
添加断言来判断测试结果的正确性,用得最多的是响应断言;
添加监听器,比如查看结果树,对测试结果进行监听;
运行测试用例;
查看监听器结果,来判断用例的执行是成功还是失败,针对失败的用例,分析其失败原因;
针对测试中发现的问题,给开发提单,直到问题最终解决。
最后输出测试报告。
2. 怎么用Postman测试接口?
如果使用Postman测试接口:
其中1,2,3点相同,工具使用方面则比JMeter跟简单,工具的主要的步骤是添加对应的请求、填写主机URL及入参、添加测试套、运行测试套、分析结果出报告。
3. 在JMeter上如何把上一个请求的结果作为下一个请求的参数?
使用正则表达式提取器提取上一个请求的响应中的信息,保存一个引用名称比如abc,在下一个请求的参数中,用${abc}的格式来引用提取的结果。
常用的正则表达式格式:(.+?),其中.表示匹配任意字符串,+表示只匹配一次,?表示匹配到就停下来。
三、 性能测试
一般是我们功能测试完成最后两三天时间测试性能。
1、先是分析需求计算出并发数,TPS,响应时间和 CPU,内存,硬盘和网络IO这些指标。
2、制定测试方案,主要包括环境,计划和具体测试那些场景(如可靠性,并发,负载,压力测试等)
3、根据场景用Badboy录制脚本,导出为JMeter工具支持的脚本。
4、用JMeter工具打开脚本,进行脚本调试,加一些断言,监听器,参数化等。
5、接下来执行性能测试,然后主要收集监听器和收集服务器CPU,内存,硬盘和网络IO等分析是否满足需求,如果满足就输出性能测试报告。
6、如果指标不能满足,反馈给开发进行调优。调优后继续测试,一直到满足需求后最终输出测试报告。
给大家推荐一个 q 群:902061117 里面有许多资料共享!资料都是面试时面试官必问的知识点
四、自动化测试
1. Python怎么定义一个函数?
你可以定义一个由自己想要功能的函数,以下是简单的规则:
函数代码块以def关键词开头,后接函数标识符名称和圆括号()。
任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
函数内容以冒号起始,并且缩进
return[表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回None
2 Python切片
list1=[sa,fe,faw,ve,eta,t]
list1[2:5]
list1[2:]
list1[:]
list1[20:]
得到的是[ ]
复制代码
3. Python上用过什么库/模块?
webdriver:定位和操作元素
time:设置等待时间
ActionChains:动作链,完成鼠标的相关操作
Keys:键盘的相关操作
WebDriverWait:设置显式等待
Expect_Conditions:针对单个元素,设置显式等待的场景
PIL:截图
Select:下拉选择框的操作
unittest python:自带的单元测试框架
HTMLTestRunner:运行脚本,生成报告
ddt:实现数据驱动测试,行为和数据分离
4. 你做过自动化测试吗?
我在上一份工作中,公司去年下半年也开始规划做Web 自动化,采用Python作为开发语言,通过Selenium WebDriver定位和操作页面元素,自动化框架用的是unittest。我主要负责写测试脚本。
假设一个测试团队有5个人:1资深(测试经理)+2~3个中级(自动化+手动)+1 个初级(手动)
5. 使用什么工具进行的自动化测试
使用的工具是Selenium(Web自动化工具)
6. 用的什么编程语言
用的Python
7. Selenium 用的是哪个版本的的?Python用的是哪个版本的?
用的是selenium 3.11.0和Python2.7.10
8. Selenium的工作原理?
1)对html元素定位
2)模拟对第一步定位到的元素进行点击、输入、选择等操作一句话:定位元素,操作元素。
9. 元素定位方法有哪些?
要点:8种定位方法
根据元素的属性值定位,比如 id、name、class、标签名、链接文字和部分链接文字;
根据CSS选择器定位;
根据 XPath 定位;
10. 子页面里的元素怎么定位?
先切换到框架里,然后再定位,用switch_to_frame函数根据子页面id或name,切换到子页面;定位完了如果要再定位主页面的元素,要用switch_to_default_content 函数先返回主页面。
11. 怎么定位alert弹窗?或者这样问:怎么处理JS原生窗口?
要点:主要涉及点击弹窗确认按钮、强行关闭弹窗、获取弹窗中的文字等操作。
点击弹窗的确定按钮,用如下函数:
driver.switch_to_alert().accept()
强行关闭,点击右上角的叉叉,用如下函数:
driver.switch_to_alert().dismiss()
获取弹窗里的文字,用如下函数:
driver.switch_to_alert().text
12. 怎么运行自动化用例并生成测试报告?
以unittest为例,我通常的做法是把用例加载到测试套中,做成一个脚本,在命令窗口下运行脚本,报告的生成用第三方模块HTML TestRunner来生成。
13. 怎么定位/操作图片中的验证码?
用tesseract OCR引擎处理图片中的验证码,步骤:
(1)对整个屏幕截屏,保存成png格式的图片;
(2)在截取的图片中定位验证码图片的位置坐标;
(3)根据坐标对验证码截图;
(4)在图片中提取验证码,输入到输入框。
最后: 给大家推荐一个 q 群:902061117 里面有许多资料共享!资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
如果对你有一点点帮助,各位的「点赞」就是小编创作的最大动力,我们下篇文章见!
好文推荐
2021软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!
什么样的人适合从事软件测试工作?
软件测试和软件开发哪个发展更好
那个准点下班的人,比我先升职了…
软件测试面试题:WEB+网络|接口测试|性能测试|自动化测试相关推荐
- 软件测试简历编写以及软件测试面试题大全(接口、自动化测试面试题)赶快收藏
目录 一.简历重要性以及编写原则 二.简历模板 三.简历包装 1.个人信息 2.教育经历 3.专业技能 4.工作经验 5.项目经历(4-5个项目))10年,只写最近的四个项目.后面的项目和时间都不写 ...
- 全网最全软件测试面试题含答案(性能测试+功能测试+接口测试+自动化测试)
前言 因为篇幅有限,截图不代表所有资料,图中的资料我都放在公众号[程序员阿信]里面了,回复66就可以领取了. 性能测试方面 简述性能测试流程? 1.分析性能需求. 2.制定性能测试计划. 3.编写测试 ...
- 测试面试题集锦(五)| 自动化测试与性能测试篇(附答案)
简介:本系列文章总结归纳了一些软件测试工程师常见的面试题,主要来源于个人面试遇到的.网络搜集(完善).工作日常讨论等,分为以下十个部分,供大家参考.如有错误的地方,欢迎指正.有更多的面试题或面试中遇到 ...
- 初中级测试工程师,软件测试面试题总结大全(功能/接口/自动化测试)你要的都有...
目录:导读 前言 一.Python编程入门到精通 二.接口自动化项目实战 三.Web自动化项目实战 四.App自动化项目实战 五.一线大厂简历 六.测试开发DevOps体系 七.常用自动化测试工具 八 ...
- 功能测试,接口测试,自动化测试,压力测试,性能测试,渗透测试,安全测试,具体是干嘛的?
软件测试是一个广义的概念,他包括了多领域的测试内容,比如,很多新手可能都听说:功能测试,接口测试,自动化测试,压力测试,性能测试,渗透测试,安全测试等,这些专业名词,但是绝大多数人都对这些名词一知半解 ...
- 软件测试面试题-接口测试
接口测试 接口测试面试题 1.接口测试工程师发现前台数据显示错误,定位问题的正确做法? 1)查看前台调用接口是否正确. 2)查看接口调用到的数据是否正确. 3)查看数据库存储的数据. 2.接口测试用例 ...
- 【软件测试笔试题】阿里巴巴(中国)网络技术有限公司
小编热衷于收集整理资源,记录踩坑到爬坑的过程.希望能把自己所学,实际工作中使用的技术.学习方法.心得及踩过的一些坑,记录下来.也希望想做软件测试的你一样,通过我的分享可以少走一些弯路,可以形成一套自己 ...
- 2021秋季“金九银十”跳槽必备:软件测试面试题(附带答案)
软件测试面试题(带答案) 1. 请自我介绍一下(需简单清楚地表述自己的基本情况,在这过程中要展现出自信,对工作有激情,上进,好学) 面试官您好,我叫###,今年26岁,来自江西九江,就读专业是电子商务 ...
- 万人总结的软件测试面试简历及软件测试面试题
一.前言:浅谈面试 面试是我们进入一个公司的门槛,通过了面试才能进入公司,你的面试结果和你的薪资是息息相关的.那如何才能顺利的通过面试,得到公司的认可呢?面试软件测试要注意哪些问题呢?下面和笔者一起来 ...
最新文章
- seaborn系列(1) | 关系类图relplot用法
- Linux操作系统下利用SSH进行远程控制
- tfw文件如何导入cad_教你三维家3d设计软件如何导入cad文件
- hapi logs 日志保存代码片段
- Android的activity的title设定内容
- 在线拍卖系统代码_来了来了,轻工业领域拍卖的福利来啦!聚拍网终于扩展新范围啦...
- HCIE-Security Day6:5个实验深入浅出理解源NAT
- VMware View:VMware 专为 Kindle Fire 打造的视图客户端
- sqlmap基本命令
- windows系统安装指南-微PE版
- PRTR论文代码解读
- onenote使用python开发_我应该用onenote还是印象笔记?
- 大前端之js导入导出
- 垃圾回收算法-标记清扫回收
- 【Vulnhub靶场】Earth
- 欧拉函数φ(x)简要介绍及c++实现
- Moveit + Gazebo:搭建双臂仿真平台(方案一)
- Introduce Null Object
- 【Codeforces Round #514 (Div. 2) D. Nature Reserve】 三分+推公式
- web应用开发实战(1)