热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

自动化测试第二节jmeter关联+抓包+python基础

1、jmeter关联:从上一个请求中获取返回值提供给下一个请求使用2、解决jmeter乱码问题:打开apache-jmeter-2.11\bin\jme

1、jmeter关联:从上一个请求中获取返回值提供给下一个请求使用


2、解决jmeter乱码问题:
打开apache-jmeter-2.11\bin\jmeter.properties文件,搜索“encoding”关键字,找到如下配置:
# The encoding to be used if none is provided (default ISO-8859-1)
#sampleresult.default.encoding=ISO-8859-1
将注释删掉,并改成utf-8编码,即:
The encoding to be used if none is provided (default utf-8)
sampleresult.default.encoding=utf-8
重启JMeter即可

3、实现Jmeter关联----JsonPath:(返回值是json串时才可用)

DestinationVariable Name随意填写,表示返回值的参数化
Default Value随便填写
JSONPath Expression填写需要获取的返回值,格式为$.parameter
在需要传这个返回值的其他接口中,传这个返回值的参数化变量${DestinationVariable Name}即可-----如${ninanie}


4、实现Jmeter关联----正则表达式方式:

引用名:正则表达式参数化的名称
正则表达式匹配:"token": "(.*?)"------(.*?)表示要匹配的值,括号左右分别为值的左右两边的显示
模板:固定值
匹配数值:1表示有多个匹配值时取第一个
缺省值:匹配失败时默认取的值



5、jmeter添加压力机:
1、谁的电脑做压力机,就把谁电脑上的jmeter-server.bat启动
2、这两台电脑要能ping通
3、在配置文件中加入这个IP,jmeter.properties,搜索"remote_hosts",如"remote_hosts=localhost:1099,192.168.2.119:1099"(端口号默认为1099)
4、重启jmeter
5、若有参数化的文件,则在压力机的同样目录下也必须有这个文件
运行压力机:


6、jmeter在linux运行:
1、先把jmeter上传到linux
2、把在window上做好的脚本上传到linux上面
3、执行shell脚本:./jmeter.sh -n -t class two.jmx -l response.jtl
(-n代表以没有图形化界面启动,-t代表后面是测试脚本,class two.jmx是jmeter脚本(不在当前路径下执行时此处填写文件的绝对路径),-l代表测试结果,response.jtl是测试结果文件)
4、看结果的话,需要将response.jtl下载到本地,然后在jmeter下添加聚合报告,浏览导入该文件即可

7、抓包:修改抓包的请求和返回
常用抓包工具:charles,fiddler

找到要拦截的位置,加入断点进行拦截:

 


再次通过浏览器发送一个http请求
编辑请求的url后点击Excute:(拦截请求并修改请求信息,执行后发送修改后的请求)

 


编辑返回的信息后点击Excute:(拦截response并修改返回信息,执行后返回修改后的响应结果)

 

8、配置http代理:

服务器主机名写电脑IP,端口默认8888
手机配置代理后,可以使用抓包工具进行抓包(手机和电脑需要在同一个局域网中)
https的请求都是加密的,请求和返回数据都无法看到,需要安装证书后才能看到



9、python基础
语言类型:
编译型语言:C、C++、C#(运行速度相对解释型语言来说更快)
解释型语言:python、java、perl、shell、ruby、php

从coding网站下载项目代码的方法:


上传到coding代码:
点击右上角的绿色图标

---弹框中选择commit and push(commit message必填),最后点击push即可

Python语言规范:

快速注释:ctrl+/

快速复制:ctrl+d

字符串有双引号有单引号时,可以用三个引号括起来,如print('''let's go,"nina"''')

字符串格式化,%s表示一个字符串,%d代表后面要加整数,%.2f表示后面要加2位小数,如print('我的年龄是%d,我有%d的钱' % (age,money))

使用input接受的数据类型都是字符串

定义变量,如name = "nina"

强制类型转换,如age = int(age)

连接字符串使用加号,如print(truename+'说'+say)

如果用while循环则必须有计数器,如:

i = 0
while i<10:
......
i&#43;&#61;1
......

continue:结束本次循环,即跳过这次循环&#xff0c;继续进行下一次循环

break:立即结束循环&#xff0c;break之后的代码不会再执行

随机产生一个1到100的整数:导入random后&#xff0c;src_num &#61; random.randint(1,101)

 

 

 

 

 

 

 

 

 

 

转:https://www.cnblogs.com/ninanie/p/7550234.html



推荐阅读
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Android系统移植与调试之如何修改Android设备状态条上音量加减键在横竖屏切换的时候的显示于隐藏
    本文介绍了如何修改Android设备状态条上音量加减键在横竖屏切换时的显示与隐藏。通过修改系统文件system_bar.xml实现了该功能,并分享了解决思路和经验。 ... [详细]
  • 本文介绍了如何使用Express App提供静态文件,同时提到了一些不需要使用的文件,如package.json和/.ssh/known_hosts,并解释了为什么app.get('*')无法捕获所有请求以及为什么app.use(express.static(__dirname))可能会提供不需要的文件。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • Centos7搭建ELK(Elasticsearch、Logstash、Kibana)教程及注意事项
    本文介绍了在Centos7上搭建ELK(Elasticsearch、Logstash、Kibana)的详细步骤,包括下载安装包、安装Elasticsearch、创建用户、修改配置文件等。同时提供了使用华为镜像站下载安装包的方法,并强调了保证版本一致的重要性。 ... [详细]
  • 本文讨论了在使用PHP cURL发送POST请求时,请求体在node.js中没有定义的问题。作者尝试了多种解决方案,但仍然无法解决该问题。同时提供了当前PHP代码示例。 ... [详细]
author-avatar
愚木小三_563
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有