- 博客(125)
- 收藏
- 关注
原创 python标准库
Python标准库常见模块:操作系统相关:OS时间与日期:time,datetime科学计算:math网络请求:urllibOS模块os模块主要是针对文件,目录的操作常用方法:os.mkdir() 创建目录os.removedirs() 删除文件os.getcwd() 获取当前目录os.path.exists(dir or file)判断文件或者目录是否存在import os#os.makedirs("testdir") #创建目录#打印有哪些文件print(os.li
2021-11-17 15:35:47
3267
1
原创 Jmeter之BeanShell详解
目录:Jmeter中常用的BeanShellJmeter中的常用内置变量BeanShell用法实例一BeanShell用法实例二BeanShell用法实例三BeanShell断言Beanshell 保存数据到文件的方法Jmeter中常用的BeanShell前置处理器:BeanShell Preprocess采样器:BeanShellSampler后置处理器:BeanShell PostProcess断言:BeanShell断言Jmeter中的常用内置变量具体应用:后置处理器的应用:B
2021-07-22 16:31:49
6908
原创 Jmeter之JDBC请求配置详解
一、首先要添加数据库jia包拷贝mysql驱动包到jmeter/lib目录下或者在测试计划处添加jar包驱动驱动包的链接:链接:https://pan.baidu.com/s/1spaBI0gyXD9YTn4oVZVwIw提取码:4d7f二、配置jmeter链接数据库配置信息三、配置数据库请求这样执行后就会往数据库里插入一条数据了。数据库请求参数化如果想要参数化提高性能的话就要选择另外两个Query Type:prepared Update Statement或者prepare
2021-07-21 16:35:27
565
原创 Jmeter之web_services接口详解
WebServices接口:1.添加post http请求2.添加header:Content-type:text/xml接口提供:百度搜索webxml就可以http://www.webxml.com.cn/zh_cn/web_services.aspx来一个例子 查手机号归属地
2021-07-21 11:28:03
122
原创 彻底理解session、cookie和token
cookieCookie 是客户端保存数据的一种机制会话 cookie保存在浏览器内中,关闭后就消失了持久化 cookie保存在本地磁盘上,一般会有定的过期时间SessionSession是服务端保存数据的一种机制,用户些关键信息会保存在Session中 session保存在服务端内中 每个用户对应一独立的 session,服务端会存储很多 session 每个 session都有自己的唯一 id session session都有过期时间,如果一定内没更新数据就会消失coo
2021-07-21 09:39:27
136
原创 Jmeter性能测试之性能测试实战,脚本开发、Grafana性能监控,nmon监控
目录:性能场景提取实战性能场景提取首选要高频,核心业务以及用户扎堆的业务第二步:了解项目的流程第三步:了解项目的框架实战测试的页面
2021-07-07 16:31:52
492
原创 Jmeter接口测试之web接口 待续。。。
目录包含web接口、应用程序接口、数据库接口常见的web接口包括:http、https、webService接口文档实例:添加个接口
2021-07-02 14:43:23
116
1
原创 Jmeter性能测试之集合点详解
目录一、集合点目的创建集合点一、集合点目的让各个线程步调一致,对系统进行加压达到模拟真实并发访问的效果创建集合点就是叫同步定时器实战 对签到做5个用户并发线程数填写5个然后再添加同步定时器,注意作用域(放到可能签到接口的里面)同步计数器的参数讲解模拟用户组的数量模拟用户组的数量设置为0的话就是等同于线程数设置的数字大于线程数的话 就一直等,不会并发如果设置的是两个 就会到了后两个就并发超时时间以毫秒为单位参数注意事项:...
2021-06-28 17:29:20
373
原创 Jmeter性能测试之关联技术/正则表达式
目录关联操作:1.先获取到token(使用正则表达式)2.断言:从返回结果中检查有没有预期的值3.关联:获取到返回的值,然后保存起来,给别的请求使用,或者做一些其他的处理。正则表达式提取单个字符的话提取多个字符的操作正则表达式提取器引用名称:自定义,调用使用${name}正则表达式:()括号里面表示你要的数值模板: $表示你要用那个正则表达式那个模板获取的值,只有一个正则一般填写1,即111匹配数字:匹配到多个值取第一个-1表示全部,0随机,1第一个,2第二个缺省值:这个
2021-06-28 15:05:39
128
原创 Jmeter性能测试之参数化技术csv、函数式、用户变量、编程式
目录:Jmeter参数化方式:实战:Jmeter参数化方式:1.csv–需要配置的元件使用场景:账号密码2.函数式随机数timecounter计数器3.变量4.编程式实战:1.csv格式:配置如下:注意:如果是json格式的响应,提取token的话就直接用json提取器就好比正则更简单$.token就行注意:想看有没有成功,是可以加一个取样器,相当于代码中的debug2.函数助手对话框3.用户自定义变量配置元件下的用户自定义变量用户参数:了解4.编
2021-06-28 11:25:01
242
原创 性能测试jmeter之主要元件的讲解
目录:一、配置元件二、监听器元件三、其他常用元件一、配置元件HTTP请求默认值HTTP消息头管理器HTPPcookies管理器HTTPCache管理器1.HTTP请求默认值配置元件-请求默认值这个就是把请求的地址放里面,然后其他请求就不用写地址了,如果换了环境ip地址,就只需要改变请求默认值就好了very方便配置元件-HTTPcookie管理器这个就是为了提取cookie的,只需要放那里就行 不需要任何操作,需要cookie的地方自动会填写上去不需要用正则去提取了,是不是也是ve
2021-06-25 17:35:14
189
1
原创 性能测试Jmeter之环境搭建以及Java环境配置以及jmeter脚本开发
目录:一、JDK安装这一章节我就截图来表述了,因为没有太多重要的点一、JDK安装注意!!!前置环境:此篇安装文档基于windows+64 位的电脑,安装32 位jdk(64 位的电脑可同时兼容32 位与64 位,当然32 位电脑只能装32位的)首先,在安装java 环境之前,我们需要检查一下自己是否安装过java环境!第一步:检查本机是否安装过java1、查看自己当前电脑是否已安装jdk点击w7 电脑左下角的开始按钮,在出现的输入框中输入cmd,然后回车进入终端:(呈如下界面)
2021-06-23 17:06:53
320
2
原创 性能测试Jmeter之性能测试指标解析并发用户数、响应时间、吞吐量、系统性能计数器
目录一、响应时间二、并发用户数三、吞吐量四、**TPS每秒事务数**五、性能计数器大致包含 并发用户数、响应时间、吞吐量、系统性能计数器、思考时间我觉得这些:响应时间、tps、资源利用率、用户数 也是总结起来就是:多快好省多:并发量快:响应时间好:稳定性(长时间运行)省:资源使用率一、响应时间对请求做出响应所需要的时间,是用户感知软件性能的主要指标(端到端的)包含:用户客户端呈现时间请求/响应数据网络传输时间应用服务器处理时间数据库系统处理时间公式:网络传输时间+服务器处
2021-06-23 16:52:12
4264
原创 Charle工具详解之实战演练问题分析、https抓包、流量设置、断点配置
目录一、问题分析二、https的抓包**windows证书的配置****CharlesHttps代理的配置****MacOS证书的配置****IOS证书配置**三、Charles流量设置断点配置主要包含:问题分析https抓包弱网测试断点调试一、问题分析分析出前端问题还是后台问题问题描述:测试地址:http://ihrm-test.itheima.net/#/login13800000002/123456实施步骤二、https的抓包https不设置证书的时候抓的报文是乱码
2021-06-23 14:16:02
399
原创 Charles工具详解之简介、安装配置
目录Charles简介一、Charles是什么二、Charles工作原理图三、Charles能做什么四、Charles优点Charles安装配置Charles安装Charles组件介绍Charles代理设置Charles访问控制客户端代理配置Charles简介一、Charles是什么是一款基于https的代理服务器,通过成为电脑或者浏览器的代理,然后截取请求和请求结果达到分析抓包的目的特点:跨平台,半免费二、Charles工作原理图前置步骤:1.需要运行Charles并配置代理2、在客户端
2021-06-22 14:45:31
420
原创 接口测试框架4之httprunner实战演练及一些HttpRunner技巧方法
目录:一、案例介绍二、接口上下级关联一、案例介绍项目地址:https://github.com/debugtalk/v3-demo-mubu网址:https://mubu.com覆盖功能场景登录账号创建文档设置文档标题正文第一行输入换行到第二行正文第二行输入删除文档校验删除结果校验文档是否还在列表中二、接口上下级关联.extract() #通过extract方式来确定.with_jmepath(“body.data.id”,“docId”) #通过jmepath来提取参
2021-06-17 15:51:26
634
2
原创 接口测试框架3HtppRunner之项目实战(幕布登录场景)
目录:幕布登录的演练1.抓包2.脚本生成幕布登录的演练https://mubu.com1.抓包Charles / Fiddler / Chrome 抓包生成 HAR 文件把抓到的报文 剔除没用的报文然后保存成har文件生成的har文件不够美化,运行black har/mubu_login.har,这样就格式化了,比较美观2.脚本生成已经抓取的.har包,通过har2case: 将 HAR 转换为 YAML/JSON 脚本$ har2case xxx.har # pytest$ ha
2021-06-16 14:05:10
157
原创 接口测试框架3之httprunnerV3入门以及HttpRunner安装详解
这里写目录标题一、HttpRunner简介二、HtttpRunner安装详解1.环境准备2.脚手架生成项目一、HttpRunner简介参考文案:https://mubu.com/doc/2vXRWPx5i3c 密码:hogwarts1.为什么要开发HttpRunner(1).工具多而且杂接口测试工具,性能测试工具(2).学习成本高(3).团队协作难风格迥异,整合困难,交接困难(4).维护成本高接口变更一个,用例调整一堆接口测试脚本和性能测试脚本独立维护(5).普遍结局因投入太低,
2021-06-15 10:14:52
1190
原创 接口测试框架2之数据驱动,框架完善
目录:一、测试步骤的数据驱动二、总结:三、源码一、测试步骤的数据驱动实现原理:1.使用yaml文件对测试步骤进行数据驱动2,使用yaml文件实现变量传递多一个yaml文件存放数据baseapi.py文件不变还是和上篇文章一样#使用python关键字传参的方式,将请求结构体传给requests.requestimport requestsclass BaseApi: def request_https(self,req_data): #相当于就是requests
2021-06-10 15:36:41
428
4
原创 接口测试框架1之接口测试框架简介、加密接口案例、多环境运行接口、ApiObject模式
目录:一、接口流程的封装和定义二、基于加密接口测试用例设计三、多环境下的接口测试四、ApiObject模式与原则api object模式的应用:通用api封装一、接口流程的封装和定义配置:根据配置文件获取初始配置和依赖接口封装封装接口调用进行抽象封装类似PageObject效果业务流程业务用例设计,含有多个api形成的流程定义,不要在包含任何接口实现细节断言1、测试框架包含API对象,完成对接口的封装接口测试框架,完成对api的驱动配置模块,完成对配置文件的读取数据封装,数据构造
2021-06-10 10:39:45
858
2
原创 单元测试之单元测试实战运用、xml运用、csv运用
目录:一、单元测试运行二、xml运用xml简介三、xml的简单运用一、单元测试运行被测对象代码:class Sjx(): # 输入三条边,进行判断,是否等边、等腰、普通三角形,否则提示不能组成三角形,用函数来实现 def sjxpd(self,a,b,c): if a + b > c and a + c > b and b + c > a: if a == b and b == c: return
2021-06-08 15:04:20
201
3
原创 单元测试之基本操作
目录:一·单元测试引入二、单元测试的开展1.单元测试计划2.单元设计3.单元测试实现一·单元测试引入为什么要做单元测试,以及适用项目价值:提前介入测试,发现代码级别的bug适用的项目:1.大型的、项目周期长2.新系统、新团队3.涉及财产、生命的项目二、单元测试的开展1.单元测试计划确定单元测试的范围:二八原则确定评估标准,逻辑覆盖率包含:2.单元设计测试的策略:3.单元测试实现...
2021-06-04 16:03:58
164
2
原创 性能测试loadrunner之Analysis、WIN服务资源监控、nomon工具介绍、性能测试报告
目录:一、windows服务资源监控二、nomon安装教程三、Analysis分析四、生成报告五、性能测试总结:一、windows服务资源监控如果是windows服务器和测试机不在同一台电脑上时需要配置windows配置:添加服务器资源监控时系统提示:Monitor name :Windows Resources. cannot connect to machine Reason拒绝访问解决方法:1.运行输入services.msc打开服务对话框,开启Remote Procedure Ca
2021-06-03 10:36:22
955
1
原创 性能测试loadrunner之controller组件,压力曲线分析、多机联合、IP欺骗、图表监控以及多业务操作
目录:一压力曲线图二、controller的一些设置三、多机联合四、IP欺骗五、图表监控六、多业务操作1.Controller场景设置:1.两类三种:两类:手工场景、目标场景三种:按照数量的模式打开Controller按照百分比模式打开Controller按照目标场景模式打开Controller2.场景方案:schedule by:scenario ,groupRun mode:real-world schedule, basic schedule 运行过程: 初始化---&
2021-06-01 11:08:39
734
原创 性能测试loadrunner之VuGen包含事务、检查点、思考时间、集合点
目录:总结学到的函数:一、事务二、检查点函数的使用三、思考时间四、集合点总结学到的函数:web_url();发送get请求函数web_submit_data();发送get和post函数web_link();链接函数web_submit_form();表单提交函数web_custom_request();任何请求方法函数web_reg_save_param()关联函数lr_eval_string();获取参数返回值lr_save_string();字符串保存到参数中lr_output_m
2021-05-28 16:48:21
1010
原创 性能测试loadrunner之参数关联
目录:一、手动关联二、自动关联三、高级关联1.参数化其他类型:FileDate/TimeRandomNumberuniqueNumber2.从数据库中取值作为参数值:连接数据库时:需要ODBC数据源mysql默认不允许远程访问---->需要先开启远程访问3.关联—》从服务器的响应数据中获取数据函数:web_reg_save_param()----->关联函数,---->属于注册型函数—特点:该函数放在某个请求的响应如果有我们想要的数据,那么就放在该请求的前面两种:手动
2021-05-25 09:08:34
1476
原创 性能测试loadrunner之参数化类型以及连接mysql读取数据
目录:一、参数化类型配置odbc方法一、参数化类型包含:file、Date/Time、RandomNumber、Unique Numberfile上一篇已经讲过Date/Time:入口:选择迭代时发生变化时update value取值分三种情况://update value:each iteration—>每次迭代发生变化// lr_output_message(lr_eval_string("{datatime}"));// lr_output_message(lr_eval
2021-05-24 08:35:04
490
1
原创 性能测试loadrunner之脚本回放设置和脚本增强设置
目录:一、录制时设置二、运行时设置三、脚本增强之学习函数一、录制时设置使用url录制时:都是web_url来处理的将每一个不同url的请求封装为步骤,拆分的更细二、运行时设置运行设置的入口:run-time settings下包含一些选项:Run logic:用户建模Pacing(步长)LogThink timePreferencesMiscellaneous进程和线程的定义进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和
2021-05-21 08:39:01
765
原创 性能测试之loadrunner安装和三大组件介绍
目录:一、loadrunner安装二、LR组成VuGen介绍ControllerAnalysis一、loadrunner安装二、LR组成包含三大组件:VuGen、Controller、Analysis作用:Virtual User Generator —— 录制回放、开发维护脚本LoadRunner Controller —— 用于创建、运行和监控场景LoadRunner Analysis —— 用于生成测试报告,分析性能测试结果VuGen介绍脚本录制流程-新建脚本
2021-05-18 11:41:24
825
原创 性能测试指标及性能测试流程
目录:一、 性能指标一、 性能指标包括:响应时间、tps、资源利用率、用户数响应时间公式:网络传输时间+服务器处理时间N1+N2+N3+N4+N5+N6+WT+AT+DT不包含前端页面渲染时间,到浏览器收到请求后响应数据截止原则·:2秒:优秀,5秒:良好 ,8秒:差tpstps:每秒处理事务数hps:点击事务数(请求,不是鼠标点击)吞吐量:描述的是服务器的处理能力资源利用Mem:内存,还需要关注虚拟内存(页交换频率),页交换频率越大表明内存越不足用户数并发用户数:
2021-05-17 14:43:27
421
原创 性能测试之理发店模型解释
需求介绍:包含的性能指标同时进店剪头发-》就是并发用户数从进店到完成剪头发的时间-》响应时间1h内剪头发的用户数量:包含的性能指标单位时间内完成的事务数量(事务:剪头)单位时间事务数:tps总结:...
2021-05-12 11:22:51
150
原创 性能测试的概念和分类
目录:一、什么是性能测试:二、性能测试分类:一、什么是性能测试:基于协议模拟用户发出请求(业务的模拟),对服务器形成一定的负载,来测试服务器的性能指标是否满足要求时间性能和空间性能二、性能测试分类:性能测试、负载测试、压力测试、并发测试、配置测试、可靠性测试性能测试(狭义) 性能测试方法是通过模拟生产运行的业务压力量和使用场景组合,测试系统的性能是否满足生产性能要求。通俗地说,这种方法就是要在特定的运行条件下验证系统的能力状态。特点:1、这种方法的主要目的是验证系统是否有系统宣称具有的
2021-05-12 10:36:10
313
原创 jmeter接口自动化之读取txt文件数据和csv参数化数据
目录一、读取txt数据二、读取csv格式实行参数化三、函数助手读取csv文件实现参数化四、通过用户参数读取数据一、读取txt数据先创建一个txt文件然后引用csv文件设置,填入参数然后接口的请求参数调用该变量这样就实现了二、读取csv格式实行参数化创建个csv格式的文件接口中调用csv文件设置,参数如下:参数引用:这样运行就可以了。注意:想要读取两行数据的话,循环次数要写为2三、函数助手读取csv文件实现参数化在菜单tools中点击函数助手对话框,选择__CS
2021-05-10 16:57:21
2561
原创 jmeter接口自动化之接口间参数传递
目录一、正则二、示例参数传递一、正则在使用Jmeter过程中,会经常使用到正则表达式提取器提取器,虽然并不直接涉及到请求的测试,但是对于数据的传递起着很大的作用,本篇博文就是主要讲解关于正则表达式及其在Jmeter的Sampler中的调用。一、首先来介绍一下J meter中正则表达式提取器的元素组成,下图所示:下面是各参数值的含义:参数 释义引用名称 在HTTP等请求中,引用此数据,需要用到的名称正则表达式 用于将需要的数据提取出来模板 表示使用提取到的第几个值:111:表示取第1个
2021-05-10 14:27:05
754
原创 jmeter接口自动化之jemter基本介绍及get和post请求模拟
目录一、jmeter特点二、jmeter安装启动三、jmeter元件四、jmeter之get请求jemter安装那些懒得写一、jmeter特点二、jmeter安装启动三、jmeter元件四、jmeter之get请求还是用前面学习到的接口来进行练习,如图:然后填写请求数据:则可以发送成功。...
2021-05-10 10:38:53
182
原创 接口测试之数据代码分离读取excel表数据
首先需要导入xlrd包一、取excel数据首先来看一下怎么取到excel表中的数据代码:import xlrd#先打开excel表book = xlrd.open_workbook("../Data/data1.xlsx")#定位sheet表table = book.sheet_by_name("Sheet1")#统计行print(table.nrows)# 统计列print(table.ncols)#打印第一行值print(table.row_values(0))
2021-05-08 15:08:53
7301
2
原创 接口测试之使用unittest进行接口测试
使用unittest框架进行接口测试直接上代码吧,就是为了能添加一个断言import requestsimport unittestclass Test(unittest.TestCase): def setUp(self): print("开始") def tearDown(self): print("结束") def test01(self): #定义变量 url = "http://web.juhe
2021-05-08 10:15:51
168
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人