自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 python正则表达式(三)

再写一个比较简单的替换。import rephone = "2004-959-559 # 这是一个电话号码"# 从井号开始替换为空num = re.sub(r'#.*', "", phone)print("电话号码 : ", num)# 非数字的内容替换为空num = re.sub(r'\D', "", phone)print("电话号码 : ", num)输出:电话号码 : 2004-959-559电话号码 : 2004959559第一个井号没什么特殊含义,就...

2022-05-14 10:09:43 126

原创 python正则表达式(二)

继续写,上次写了match,这次再写一点儿,match和search。这两个差不多,然后上次写的.*?这种在search也是一样的用法,这俩还有一个功能,返回匹配值的下标,因为感觉match有点鸡肋,就没写,现在看到search,就一起都写了吧,也是差不多。还是先写match,match只能从字符串的起始位置匹配,如果不是起始位置匹配成功的话,match()就返回none,要返回匹配值的下标,后面还得加上.span()一起用。import reprint (re.match('www','w

2022-05-09 21:52:24 167

原创 python正则表达式(一)

看到一个编程题,就想试试,原题就不写了,我理解主要要实现的就是:输入一个字符串,包含了两个整数,中间用逗号隔开,然后把这两个整数提出来。第一个想到的是用循环加判断,肯定能提出来,就是费事。然后又想到正则表达式应该可以,可惜只用过一次,当时也是现学现卖,然后就扔了。百度了一圈,因为不是自己写的,看的有点迷糊,最后照葫芦画瓢给实现了,今天又看了一点儿,先记录一点儿最简单的。正则表达式要用到re模块,先写个re.match函数的应用,我第一次也是用的这个,直接上group方法,因为jmeter里经常用正则

2022-05-08 21:22:12 214

原创 postman设置时间变量

今天找开发同事要报文,又被提醒一次流水号不能重,我特别自信的说,这个能设置成自动增加。jmeter-时间函数以前写的,jmeter里可以用时间函数。然后开发问:postman怎么设置?我。。。我不用postman。。。有点不按套路出牌,但是还是找了一下,postman确实也可以设置。还是先写时间戳,获取从1970年到现在的所有毫秒//获取当前时间戳let timestamp = (new Date()).getTime().toString(); //控制台输出时间戳console.lo

2022-04-28 21:05:06 3721

原创 jmeter全局变量-仅执行一次

工作中写jmeter性能脚本,又遇到一个问题:一个接口要写服务器日期,所以要先用获取服务器时间的接口。如果直接写上,就得连带着把获取日期的接口也给压了,不是想要的结果。如果每次都手动改日期,很麻烦。第一个想到的仅一次控制器,听这名字就是仅执行一次,先看一下:还是用这个最喜欢用的,想让获取一次城市,然后多次查询这个城市天气预报,线程数和循环次数都给加上查看结果树,发现这个仅一次控制器控制的是循环次数,线程数没办法控制,两个线程数,执行了两次获取城市。后来学到了全局变量,jmeter线程

2022-04-23 19:26:41 411

原创 jmeter参数化-用户参数使用问题

以前写过一个参数化的,参数主要用两种:CSV文件和用户参数。如果参数多,就用csv文件;参数少,用用户参数。今年突然发现个问题,做性能测试用户参数有点不如想象中的好使。简化一个疲劳测试的场景:两个服务器,三个用户,循环两次。三个用户和循环两次简单,线程数3,循环次数2。如果服务器ip用的用户参数,就会出现一个问题,计划是要两个服务器承受的压力相同,实际这种情况,发到1服务器的请求是4个,发到2服务器的请求只有2个,跟想象的不太一样。如果用CSV文件倒是可以解决问题,6个请求平均发到2个服务器。这

2021-12-19 18:20:19 340

原创 jmeter-时间函数

写个时间函数,因为目前只会用这个函数了,其他的还不会工具-函数助手对话框找到time${__time(,)}就是函数了,下面数字就是这个函数生成的,表示从1970年0点到现在的所有毫秒(记得是这样),生成的数字一直变化,而且不会重复,比随机数好使一点儿,但是位数现在有13位,怎么能让位数少点儿还没太好的思路,现在工作用到的,刚好13位就行${__time(/1000,)}这样可以减少3位,单位是秒,但是数字变化的就会慢${__time(yyyyMMddHHmmss,)}获取当前时间2

2021-04-07 21:28:21 177

原创 jmeter之if控制器

if控制器用来判断,满足什么条件会走这个分支,就是java里用if分不同的情况借用那个视频里老师的例子,比如下单接口,判断库存数量大于50,才会下单。首先一个获取库存接口,正则表达式提取器或者json提取器,获取库存,然后if判断。这是理论,实际操作我没这种接口,也懒得找,继续获取城市接口和查询天气接口先获取城市,然后json提取器随机提取一个城市,如果是北京,就查询北京的天气预报(很多此一举,凑合玩吧)大概需要这些,再看if控制器,提示了怎么用格式就这样,city1是json提取器

2021-04-06 21:41:07 284

原创 jmeter插件安装

jmeter自带的功能不能满足需求时,需要再安装其他插件,写一下大概方法。先打开下载地址:jmeter插件管理器2000 years later可能有点慢,点击下载,下载以后放在文件里,下载地址上也有提示,然后jmeter重启。在选项里出现这个插件管理,也可能在帮助的后面,能找到就行,再也不用打开那个特别慢的网页了。在第二个里,这里都是没安装的插件,第一个是已有的插件。选中需要的插件,点击右下角那个按钮,就直接给安装好了,然后自动重启jmeter。下面写几个常用的插件。

2021-04-01 21:41:29 396

原创 jmeter之json提取器

之前写过正则表达式提取器,最近又学了一个json提取器,应该更简单一点儿, 但是不如正则表达式提取器功能强大了,只能提取返回结果是json格式的。还是用京东万象免费接口,获取城市接口json格式,里面的result还是个列表,很适合练习了。要提取出北京,从最外面一层一层往里找:$.result表示进入外面这个result里面。再继续:$.result.result,这个提取出的是一个列表,北京这组在列表是0,$.result.result[0].city,这个提出来的就是北京。如果想把北京这一组

2021-04-01 21:29:54 118

原创 burp suite初级使用-基本设置

最近可能需要测试安全,虽然不归我管,用的工具也不是这个,叫zap,感觉使用方法和功能都差不多,打算趁这个机会,再把burp suite学习一遍,然后两个工具对比一下。现在先记录一下学习的内容。之前安装破解的写过了,今天继续。 首先和使用抓包工具差不多,这个也需要浏览器设置代理,先打开工具,查看proxy-option 应该默认有一条吧,端口号8080,我这电脑用8080有点问题,改成了8880。根据这里,给浏览器设置代理。 然后还...

2020-11-05 21:13:42 989

原创 jmeter多接口顺序执行-Critical Section Controller

前几天遇到一个问题:jmeter脚本有多个接口,做压力测试时候,想象中每个接口都执行一遍,然后再执行第二遍,再执行第三遍……表达的不太清楚,看图吧大概这样,计划按顺序执行三遍,但是当线程数写3的时候,并发事实是这样:连续三次登录、三次查看结算单,三次删除结算单。之前也遇到过这个问题,但是当时没时间研究太多,就没仔细找原因。这次又想办法解决了一下,原来jmeter自己就有解决这个问题的东西:Critical Section Controller,中文名叫:临界区控制器(看这么翻译的

2020-06-14 15:37:02 4720 5

原创 python报错:NameError: name 'null' is not defined

python写个接口,但是处理返回值的时候,一直报个错:NameError: name 'null' is not defined原因接口返回值带有null,偏偏python语言没有null这个东西,所以python处理不了,返回值大概是这个样子:{"dt":null,"notes":null,"price":"100.000"}想了半天,没想出怎么处理null。。。。后来终于在网...

2019-10-25 22:19:34 14784 6

原创 jmeter连接数据库-取数据并参数化

第一步:连接数据库只连过MySQL的数据库,不知道其它数据库怎么操作,方法应该差不多在线程组下面加JDBC Connection ConfigurationVariable Name:这里写个名,后面要用到Database URL输入格式:jdbc:mysql://数据库地址/库名JDBC Driver class:com.mysql.jdbc.Driver下面就是用户...

2019-07-02 18:16:59 7099 3

原创 jmeter之再谈正则表达式

前面写过一篇关于jmeter正则表达式的,但是用起来有时觉得取出来的东西有点多,不是真正想要的,只能说还是之前理解的不到位,今天用的时候,偶然顿悟了一点,还是得在实践中摸索。百度一般搜索jmeter正则表达式,都只写了(.*?)或者(.+?)这种用法,和我上一篇水平差不多,百度时候在想,如果百度出自己的,岂不是很无语。后来觉得百度没什么有用的,直接叫来开发同事,请教正则表达式该怎么写,开发直接...

2019-06-15 22:17:46 259 1

原创 python2和python3共存

上次出现两个mysql,现在轮到两个python了。电脑上从python2进化到python3,如今又要做2和3并存。。。安装两个python就不详细描述了,安装的时候都有自动配置环境变量的选项,如果错过了,手动配置一下。安装好后,打开其中一个python的安装路径,我打开的是python2的,毕竟不想动python3这里原来是python.exe,我改成了python2.exe,在c...

2019-04-24 23:07:59 148 1

原创 已安装MySQL,再安装phpStudy经验

学习阶段,安装一堆东西,而且不知其然不知其所以然的状态。安装phpStudy以后,跟着教程就走不下去了,本地原本废了九牛二虎之力装的MySQL5.7也打不开了,因为phpStudy也自动装了一个MySQL。虽然觉得百度不太可靠,还是得集百家之长啊。现在是弄好了,再写一下我的经验。我这安装好phpStudy虽然目录里面有个MySQL,但是在任务管理器里面,MySQL服务还是只有一个(看别人的都是...

2019-03-13 23:22:06 5274 1

原创 Burp Suit激活失败经验总结

才开始学习安全,就给我来个下马威。工具打不开!!!又是一顿百度,说的都差不多,完全不是我遇到的情况。下面总结一下我的经验。这工具打开需要java环境(如果是百度出这篇博客的,应该都知道。。。),我电脑环境都有,查看jdk版本理论上我这jdk1.8是能打开这工具1.7版本的,按着网上方法的方法,打开burp-loader-keygen.jar,点击run或者说改了License ...

2019-03-03 00:16:14 11681 10

原创 fiddler抓包简单应用

工作中用fiddler时候有限,只是抓抓接口,打个断点,修改请求参数或者返回值。本来觉得没什么可写,但是问的人多了,还是直接写一篇出来,省的每次都教一遍了。使用方法很简单,直接打开fiddler,然后对浏览器操作就能抓到一些包了。但是,有意外情况,可能会发现网页打不开了,比如百度:因为涉及到https协议,所以得设置一下fiddler和浏览器(即使设置以后也打不开百度,我这已经是设置后...

2018-12-09 17:13:53 915 1

原创 jmeter分布式测试

要用jmeter做性能测试,基本原理都懂,就差实践,但是还有一个小问题:毕竟是用自己的电脑做测试机,说是测服务器性能,实际对自己电脑压力也不小。解决办法就是拉上所有测试伙伴,大家电脑一起发送多个线程对服务器加压。理论是这样,下面写一下技术实现。所有测试机都要装jdk和jmeter,版本最好都相同。然后配置环境变量,jdk这里就不写了。jmeter可以直接在path里面加上jmeter路径,一直...

2018-11-25 22:06:41 251 1

原创 jmeter录脚本

之前比较排斥录脚本,感觉录出来的东西太多,可能有没用的东西。最重要的是我不太会录。最近感觉录脚本倒也很方便,就是可能录出来的要稍微修改一下。因为可能要做性能测试,需要先调通接口测试,实际就一个要传图片的接口,之前没做过这种接口测试。第一个方法我试了fiddler抓包,想抓出接口然后在jmeter里手写脚本,但是实际抓出来的东西我完全看不懂,所以只好先放弃;然后使用badboy录脚本,感觉bad...

2018-11-25 20:29:26 252 2

原创 接口自动化测试(5)-生成excel测试报告

前面几篇都是个铺垫,直到这篇我还是感觉jmeter好用,包括第三篇准备的数据,可以用在jmeter参数化里面。这篇稍微能让人眼前一亮,自动出一个excel测试报告,比jmeter自己再去看测试结果稍微好点。代码我理解的也不是很透彻,包括课程的讲师感觉水平也一般,但是至少老师给指条路,还是得心怀感恩的。代码还是有点bug,但是我不会改,文章结尾再说一下问题。先看一下生成的excel测试报告:...

2018-11-18 19:25:34 2701 2

原创 接口自动化测试(4)-接口测试

标题想不出来写什么好,请见谅。前面两篇都是准备工作,这篇要用到前面两篇,当然再后面还会用到这一篇,这个.py文件名叫testvote,下一篇会调用这个模块。直接上代码。import xlrdfrom TestRequest import *from testdata.getpath import *testdata=xlrd.open_workbook(GetTestDataPat...

2018-11-04 16:19:32 1376 1

原创 接口自动化测试(3)-数据准备

第二篇提到了接口自动化大概意思:从excel自动读参数和预期结果,做接口测试并断言,生成excel测试报告。这篇写一下excel里面怎么写,并且用代码找到文件,怎么读内容。具体读出来怎么用放下一篇继续写。先看excel里面,接口我用的还是京东万象的接口,一个免费的天气预报查询。这个excel名称是TestData.xls。第一个标签那个初始化数据没什么用,如果有公用的东西也可以写那...

2018-10-29 15:08:27 3188 2

原创 接口自动化测试(2)-封装方法

学习了一段时间接口自动化,总算有点新的认识,但是学到的没能全理解,只能先把代码摆这。(不知道这个标题这么写是不是合适。)之前自动化只认识unittest框架,最后生成一个html的测试报告。虽然也强行做到了类似于参数化的效果,从excel读取数据,但是感觉很不方便,生成的报告不符合心愿。现在课程已经学了一半,已经做到了从excel读数据,最后生成excel的测试报告的效果。(感觉还是jmete...

2018-10-28 10:59:40 2564 1

原创 统计销售额

之前被交接点工作,有一个用excel统计销售额的,也算学到一项技能。从系统导出来的原始数据特别杂乱,字段主要有姓名、订单号、产品内容、产品金额。其中产品内容有机票、餐食、行李、改姓名、改期(随便列的)。要做的工作就是统计出每个人的机票和改期的产品金额总和。第一步排序,数据全选,根据姓名排序。排序之后不要动,让数据还是全选状态。第二步找到数据透视图,我用的office2016,不知道wp...

2018-09-26 21:50:21 1509 3

原创 接口自动化测试(1)-认识requests

即使开始写这篇博客,我也没完全明白接口自动化到底是何物,能自动化到什么地步。买了一套相关课程,开始只是入门级,接口自动化测试后面应该会根据课程进度,把这系列博客写完。今天先写入门。环境:python3环境准备好以后,安装requests,cmd下输入命令:pip install requests。如果有报错,可能两种原因,第一种命令改为pip.exe install requests。第二...

2018-09-21 11:19:58 518 1

原创 数据包含年月日时分秒,如何只查年月日

在一个群聊里听了一个需求:有一个注册的表,表里存的注册时间是“年-月-日 时:分:秒”格式,现在想知道每天注册的人数。群里的思路基本都是先把注册时间提取为年-月-日,再统计。当时对这个还比较有兴趣,打算研究一下怎么只提取出年月日。解决这个之后,统计每天注册人数理论上就能写出来了(没再往后试)。百度上各种办法,看的眼花,找了一个看着比较好理解的试了一下,下面写一下这个办法。首先建表,为了...

2018-09-09 21:46:49 8483 1

原创 Adobe Reader添加书签

Adobe Reader还是很强大的,但是本人比较懒,一个PDF文档看了一点之后,可能好几天不再打开,再打开的时候又忘了上次看到哪,还得从头找,这是Adobe Reader不太方便的地方,找了一圈没找到书签,原来得下载,下载地址:bookmark_page.js-1.0.zip下载下来解压,把里面的.js文件放到Adobe Reader的安装目录的\Reader\Javascripts里面,然...

2018-08-17 18:21:12 16730 10

原创 1000瓶无色无味的药水,其中有一瓶毒药,10只小白鼠拿过来做实验。喝了无毒的药水第二天没事儿,喝了有毒的药水后第二天会死亡。如何在一天之内(第二天)找出这瓶有毒的药水?

题目:1000 瓶无色无味的药水,其中有一瓶毒药,10只小白鼠拿过来做实验。喝了无毒的药水第二天没事儿,喝了有毒的药水后第二天会死亡。如何在一天之内(第二天)找出这瓶有毒的药水?第一次看这个问题完全没思路,应该有很巧妙的解法吧,后来还是百度一下,才明白怎么回事。思路就是用二进制,2^10=1024,也就是10只小白鼠最多能验出1024瓶药水,哪个有毒。小白鼠编号,1-10。瓶子也编号,1-...

2018-08-07 18:05:53 17269 3

原创 功能测试心得

前面研究了很多自动化,有时候觉得有点好高骛远的意思,但是这些技术有时候确实需要。回头想想,基本的功能测试好像还做不好,用例写的也不是特别好用,还研究一堆技术。这篇文章以后应该会不断增加内容,写一些功能测试遇到的特殊点,距离上一个大项目时间有点长了,可能会漏一些东西,先把能记起的写这里。一般用例设计都会说等价类、边界值。说都好说,真正写用例的时候,可能就漏了一些。等价类,我理解的输入框输入字...

2018-08-04 23:24:24 2787 1

原创 手机自动化测试环境搭建-Python版

我这手机自动化测试环境是一位测试界前辈教的,现在几乎不做手机测试,对这方面理解的也不是很深,按着前辈教的方法,也没遇到什么坑,所以我这里也只能写一下正常流程。以我的理解我这个环境搭建好了,只能跑安卓手机的脚本,苹果的可能还得加些别的东西。手机自动化测试我用的appium,需要下载个appium安装包,安装,可以不安装到C盘。(不要想着像selenium那么安装!两者差距很大!)还需要sdk...

2018-08-02 22:30:53 3676 5

原创 selenium-识别验证码

自动化在一些场景给人带来方便,但是也有一些技术上的难题,比如登录时候会输入验证码。这篇就写一下关于验证码的处理。如果是测试环境,就很简单了,常用的两种办法:1.让开发把验证码注释掉。2.让开发设置一个万能验证码,只要输入这个验证码就能通过。(感觉这个比较靠谱)如果是生产环境,再用上面的办法就不太好了,不过还有另外两种办法(如果不嫌麻烦,测试环境也可以用):1.使用cookie跳...

2018-07-28 21:33:12 29089 10

原创 selenium-跳过登录验证码

selenium最常见的就是登录,但是登录有个坑,就是验证码的问题,关于验证码一共四个办法:1.让开发注释掉验证码。2.让开发设置一个万能验证码,只要输入这个验证码,就通过。3.跳过验证码直接登录成功。4.验证码识别技术。第三条写的很模糊,不过下面就介绍一下第三条的实现方法。先说一下实现思路:1.打开要测试的网页,获取登录前的cookie(可以抓包获取,可以代码实现,下...

2018-07-28 20:37:24 19527 4

原创 python3连接Oracle数据库

今天有了Oracle环境,又捣鼓一遍怎么连接,比上次有点收获,上次比较顺利,照着网上别人的博客基本就连接成功了,今天遇到了一些坑,当然这些坑的帮助也很大。首先我安装的python是3.7版本,32位。这个在cmd下输入python就能看见。连接Oracle比MySQL麻烦一些,如何连接MySQL,请点这里。连接Oracle需要安装cx_Oracle和oracle客户端,由于我装的p...

2018-07-23 20:08:14 93645 8

原创 python连接MySQL数据库

电脑新装了python3,也试了试连接数据库的代码,毕竟真正工作用到了数据库的这段代码,selenium几乎没用。现在只有MySQL的环境,先试试这个数据库。首先得安装连接MySQL的包,python2和python3不太一样,python2的包叫“MySQLdb”,python3的包叫“pymysql”。看我这资料里,以前用python2的时候,有一个MySQL-python的安装文件,...

2018-07-22 11:21:06 7070 2

原创 “您使用的是不受支持的命令行标记”与“Chrome 正在受到自动化软件控制”

由于多种原因,好久没写过自动化了。又由于一些原因,又把自动化拿出来玩玩,当然不是真写脚本做自动化测试。然后发现打开谷歌的时候,上面的提示变了,虽然提示好像对脚本没什么影响,但是对强迫症人来说影响相当大,而且有以前的一个经验,这个提示有些时候确实影响脚本执行。今天就一起写一下怎么去掉提示。先说第一种提示:您使用的是不受支持的命令行标记:--ignore-certificate-errors。稳定...

2018-07-21 21:37:57 13975 1

转载 谷歌驱动与谷歌浏览器版本映射表(更新至v2.40)

看到网上基本没有最新的chromedriver与chrome的对应关系表,便兴起整理了一份如下,希望对大家有用:chromedriver版本 支持的Chrome版本 v2.40 v66-68 v2.39 v66-68 v2.38 v65-67 v2.37 v64-66 v2.36 v63-65 v2.35 v62-64 v2...

2018-07-20 11:27:26 3472

原创 查询每班分数最高的学生

最近看见一道数据库的面试题,面试的是测试,感觉查询很复杂,特意建个表试了一下。一共三个表,班级、学生、成绩,如下:题目是:查询每班分数最高的学生。先看一下所有人分数总和,这个比较简单,只要联合查询就可以了(我直接用了别人写的一个语句,没有inner join这种关键字,也是能查出来的):这题的思路如果是:根据班级分组,求出总分,再取出每班的最高分和姓名,那结果与预期就很...

2018-07-18 10:09:49 26944 18

原创 jmeter参数化的用法和用途

        参数化,能打开这篇博客看的应该都懂。。。最早我能想到的就是对传的参数进行参数化,比如手机号,我传131开头的、133开头的、135开头的,如果不会参数化,就要写三个http请求,分别传这三种参数,学会了参数化,只写一个http请求就够了,当然还会加点jmeter的其它一些小东西。以我的理解,jmeter有四种参数化,我只用熟了两种,不过这两种应该是最好用的两种,今天就主要说说这两种...

2018-04-25 19:55:07 11237 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除