https://blog.csdn.net/weixin_45912307/article/details/109523632
1. fiddle怎么抓取https的包
- 点击tools–>选择fiddle options -->点击https选项–>勾选Capture HTTPS CONNECTS 的Decrypt HTTPS traffic
- 如果还是抓不到https的包:
- 点击tools–>选择fiddle options -->点击https选项- ->点击Actions的Reset all Certificates
- 对于firfox浏览器:点击Action–>Export root Certificates to Desktop -->导入证书到浏览器的证书管理器中
- 点击tools–>选择fiddle options -->点击https选项- ->点击Actions的Reset all Certificates
2. fiddle 如何打断点(篡改数据)
- 勾选断点类型:
- 请求前:勾选Rules --> Automatic breakPoints下的before request
- 响应后:勾选Rules --> Automatic breakPoints下的after response
- 选中被测url–>右键copy–>选择just url
- 在左下角url栏中输入 :bpu url(取消输入bpu)–>回车:
- 重打开或刷新被测url–>点击被测url–>点击Inspectors–>Raw–>篡改数据(如url、Content-Type、data、等)
- 点击Run to Completion按钮发送请求
3. fiddle如何做弱网测试
- 勾选rules–>performance --> Semulate Modem Speeds
- 点击custom rules–>ctrl+f:m_SimulateModem–> 修改request-trickle-delay和response-trickle-delay的值大小
// Delay sends by 300ms per KB uploaded. oSession["request-trickle-delay"] = "200"; // Delay receives by 150ms per KB downloaded. oSession["response-trickle-delay"] = "150";
4. jmeter 如何做性能测试(http为例)
- 添加线程组,
**5.postman如何获取参数(cookie、token)等
** - 普通参数:url、port、user、pwd等
- 点击 manage environment–>点击add(可添加全局或局部) -->设置environment Name(如mall_env)、variable(如mall_url)和initial value(http://www.xxxx.com:port) -->再次点击add
- 在请求页面选择mall_env–>在请求接口中输入地址:{{mall_url}}/login -->发送请求
- 动态参数传递(如token、cookie)
- 先同样设置一个变量名称,但是变量值可以不填入(因为要动态获取登录的token)
- 点击 manage environment–>点击add(可添加全局或局部) -->设置environment (如mall_env)、variable(如token、token_type)不需要设置initial value值–>点击update
- 登陆接口页面的Tests添加如下脚本
var jsonData = JSON.parse(responseBody) postman.setEnvironmentVariable("token",jsonData.access_token) postman.setEnvironmentVariable("token_type",jsonData.token_type)
- 点击登陆的send按钮–>点击manage environment -->点击mall_env—>查看token和token_type的current value是否有值(自动带过去)
- 在其他接口调用:
- 输入url,选中请求方式–>点击headers–>添加key:Authorization、value:{{token_type}}{{token}}–>点击send按钮,请求成功
6. 抓包工具怎么用的?
我原来的公司对于抓包这块,在App的测试用得比较多。我们会使用fiddler抓取数据检查结果,定位问题,测试安全,制造弱网环境
;
- 如:抓取数据通过查看请求数据,请求行,请求报头,请求正文,信息是否正确去检查结果,
- 如果是以
4
开头的话就有可能是前端问题一般我会到前端排查
, - 以
5
开头就有可能是后端问题我就会到后端排查
; - 如果是
200
的话,就需要检查请求参数
是否正确,然后定位问题所在 如果错误
:前端问题,查看请求url,js有没写入,没有错误
:后端问题,看后端具体返回的数据,如代码问题,看运行日志 ,是否包含 exception,error或根据时间点去看日志。
- 如果是以
- 测试安全,抓取数据查看用户的感敏信息有没有进行加密显示,还有就是把发送请求的数据篡改是否成功。
- 弱网环境,通过fiddler工具选择Customize Ruels…(Ctrl+R)调出定义脚本编辑器找到“if (m_SimulateModem)”设置上行下行网速,然后把Rules->Performance->Simulate Modem Speeds选中生效
7. fiddler抓包用来做什么?
- 主要用fiddler抓包,来抓取传输过程中的数据进行对比,
查看请求参数是否正确
, - 一般是
app测试
,用得比较多, - 另外我们对问题进行定位,
分析是前端还是后端问题
时,可以根据抓包中返回的状态码以及请求数据和返回的数据,进行判断 - 也可以通过抓包,
查看数据传输过程中是否进行加密
,还可以通过设置断点来拦截,进行数据的篡改,SQL注入,来进行安全性测试
- 还有
弱网测试模拟网络
8. 主流测试工具的测试流程
winrunner
- 1 启动时选择要加载的插件
- 2 进行一些设置(如录制模式等)
- 3 识别应用程序的GUI,即创建map(就是学习被测试软件的界面)
- 4 建立测试脚本(录制及编写)
- 5 对脚本除错及调试(保证能够运行完)
- 6 插入各种检查点(图片,文字,控件等)
- 7 在新版应用程序中执行测试脚本
- 8 分析结果,回报缺陷
quicktestpro
- 1
准备录制
打开你要对其进行测试的应用程序,并检查QuickTest中的各项设置是否适合当前的要求。 - 2
进行录制
打开QuickTest的录制功能,按测试用例中的描述,操作被测试应用程序。 - 3
编辑测试脚本
通过加入检测点、参数化测试,以及添加分支、循环等控制语句,来增强测试脚本的功能,使将来的回归测试真正能够自动化。 - 4
调试脚本
调试脚本,检查脚本是否存在错误。 - 5
在回归测试中运行测试
在对应用程序的回归测试中,通过QuickTest回放对应用程序的操作,检验软件正确性,实现测试的自动化进行。 - 6
分析结果,报告问题
查看QuickTest记录的运行结果,记录问题,报告测试结果。
- 1
TestDirect
安装好后,先进入站点管理
1 创建域及工程
2 添加用户
3 编辑licenses及本服务器
4 编辑数据库TD
1 选择新建的工程进行定制(列表,用户,组,版本等)
2 在require中增加需求
3 把需求转化为plan
4 在testlab中由计划新建测试具体用例与执行
5 发现bug,在defect中提交bug
(每一部分都可以相对独立地使用)loadrunner
1制定负载测试计划
(分析应用程序, 确定测试目标,计划怎样执行LoadRunner)
2开发测试脚本
(录制基本的用户脚本,完善测试脚本)
3创建运行场景
(选择场景类型为Manual Scenario,选择场景类型,理解各种类型,场景的类型转化)
4运行测试
5监视场景
(MEMORY 相关,PROCESSOR相关,网络吞量以及带宽,磁盘相关,WEB应用程序 ,IIS5.0,SQL SERVER,NETWORK DELAY等)
6分析测试结果
(分析实时监视图表,分析事务的响应时间,分解页面,确定WEBSERVER的问题,其他有用的功能)
9. 在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试。
- a) 建立测试计划,确定测试标准和测试范围
- b) 设计典型场景的测试用例,覆盖常用业务流程和不常用的业务流程等
- c) 根据测试用例,开发自动测试脚本和场景:
- i.录制测试脚本
- 1.新建一个脚本(Web/HTML协议)
- 2.点击录制按钮,在弹出的对话框的URL中输入”about:blank”。
- 3.在打开的浏览器中进行正常操作流程后,结束录制。
- 4.调试脚本并保存。可能要注意到字符集的关联。
- ii.设置测试场景
- 1.针对性能设置测试场景,主要判断在正常情况下,
系统的平均事务响应时间是否达标
; - 2.针对压力负载设置测试场景,主要判断在
长时间处于满负荷或者超出系统承载能力的条件下,系统是否会崩溃
;
- 1.针对性能设置测试场景,主要判断在正常情况下,
- iii.执行测试,获取测试结果,分析测试结果
- i.录制测试脚本
10.Jmeter元件执行顺序?
1 .配置元件 :
CSV Data Set Config
HTTP请求默认值
HTTP信息头管理器
前置处理器
:在其作用范围内的每一个sampler元件之前执行;jdbc 预处理器、html链接解析器,用户参数定时器
:对其作用范围内的每一个sampler有效取样器
:包含http请求、jdbc请求、邮件请求后置处理器
:在其作用范围内的每一个sampler元件之后执行;包含jdbc后处理器、xpath抽取器、正则表达式抽取器断言
:对其作用范围内的每一个sampler元件执行后的结果执行校验监听器
:收集其作用范围内的每一个sampler元件的信息并且呈现出来;图表结果、查看结果树、汇总报告、断言结果
11. 常用抓包工具有:
- Charles,
- wireshark,
- fiddler,
- 谷歌浏览器内置抓包 f12,fiddler;(只需辽解面试尽量不要提及)
12. 简述Loadrunner的步骤
使用LoaderRunner进行性能测试的几个步骤:
开发脚本
(在Vugen中执行):涉及到,脚本的录制、参数化、事务的添加、检查点的设置、同步点的设置。loaderRunner脚本是符合c语言语法的。场景建立
(在Controller中执行):加入脚本(如果脚本中有集合点,应该然集合点在这里生效)、用户设置。测试结果
的分析。
13. LoadRunner分为哪三个模块?请简述各模块的主要功能。
Virtual User Generator
:用于录制脚步Mercury LoadRunner Controller
:用于创建、运行和监控场景Mercury LoadRunner Analysis
:用于分析测试结果