自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 列表中的字典排序

一般用lamada就可以了,因为函数的逻辑比较简单这样可以节约代码行数。{'age': 3, 'name': '张小三', 'sex': 0},{'age': 4, 'name': '李四', 'sex': 1},{'age': 5, 'name': '王五', 'sex': 1},{'age': 6, 'name': '赵六', 'sex': 1},{'age': 3, 'name': '张三', 'sex': 1},1、列表中的元素优先按年龄排序,年龄相同时候按性别排序。2、或者直接找出最大最小值。

2024-09-18 11:43:15 66

原创 python对列表中的相同字典进行排序

对字典 dict_data 的项进行排序,排序的依据是每个项的第二个元素,且这个第二个元素被转换为整数类型后进行比较。由于name属性是字符串,在使用sort()排序时,会按照字符串中每个字符的位置进行比较。r值是字符串类型,那么需要将下标截取出来,然后再对name进行排序。‌ 是一个切片操作,表示从字符串的第二个字符开始到字符串的末尾。"value": "无形资产名称","value": "摊销期数","value": "用途","value": "原值","value": "序号",

2024-09-18 11:35:51 854

原创 Selenium点击元素的方法

点击方法在web自动化测试中经常用到,下面就来介绍一下selenium常用和不常用的点击方法;

2024-09-18 10:39:39 1021

原创 获取元素的实用方法

selenium定位的方法有很多,比如id、class、css选择器、className、xpath等定位,在这里最推荐使用xpath;一种很简单的获取方法就是选中要查找的元素,右击选择复制即可;不过我喜欢自己手动定位;下面来介绍不同的方法;

2024-09-14 16:23:09 331

原创 selenium中键盘操作:Keys类

本文详细介绍了如何使用Selenium库进行键盘操作,包括非组合键如回车、删除等,以及Ctrl+A、Ctrl+C等常见组合键的模拟。通过实例演示了在百度搜索中的应用,并展示了ActionChains类的使用方法。

2024-09-09 18:19:17 757

原创 时间控制器

实现时间控制器的python代码

2024-09-09 17:36:49 263

原创 python列表嵌套字典取值

5、列表的值提取返回结果为字典类型,所以进一步取值时,通过字典的key获取,例:i[“key”]4、先把列表的值提取出来,也就是通过for…将以下列表的backup_unit_id全部提取出来。1、确定需要取值的对象是什么类型(列表还是字典)3、所以取值的时候要用到列表取值,字典取值。2、此处确定类型为列表,列表下嵌套了字典。

2024-08-19 18:28:56 408

转载 selenium之常见键盘的操作

键盘操作需要通过send_keys()方法来进行输入内容,输入的内容可以根据用户需求指定输入键盘所有按键,键盘的操作需要结合导入keys类来进行使用;1. 删除键(BackSpace):send_keys(Keys.BACK_SPACE)2. 空格键(Space):send_keys(Keys.SPACE)5. 回车键(Enter):send_keys(Keys.ENTER)3. 制表键(Tab):send_keys(Keys.TAB)4. 回退键(Esc):send_keys(keys.ESCAPE)

2024-02-04 10:23:47 1925

原创 selenium之鼠标动作链

定位除了使用xpath,css选择器定位外,还可以使用鼠标动作链来进行定位;

2024-02-04 10:18:38 664

原创 Pycharm在下载安装第三方库时速度慢或则超时(不是pip提速)

为了学习python读取文件,需要下载pandas,但是在pycharm->seeting->python interpreter下载pandas很慢,迟迟下载不成功;

2023-12-22 11:39:35 1897 1

原创 在雷电模拟器中安装apk包使用charles抓包详细教程

由于手头没有多余的平板,所以用模拟器来安装应用进行测试,有时候想要知道是前端问题还是后端问题,需要安装charles来进行抓包;

2023-12-22 10:05:47 844 1

原创 jmeter(三十三):阶梯线程组Stepping Thread Group,并发线程Concurrency Thread Group

以打开优快云首页https://www.youkuaiyun.com/为例。每步0.1分钟(0.5分钟除以5步)。Stepping Thread Group参数详解。现在官方不建议使用阶梯式线程组,建议使用并发线程组。每步20个用户(100个用户除以5步)达到100个线程后,所有这些线程。,直到达到100个用户。持有目标速率半分钟;

2023-10-16 17:46:39 1257 1

原创 并发数计算方法

性能测试的TPS,大都是根据用户真实的业务数据(运营数据)来计算的普通计算方式:TPS=总请求数/总时间二八原则计算方法:TPS=总请求*0.8/总时间*0.2 (二八原则就是指80%的请求在20%的时间内完成)总结:普通计算方式只能满足基本的要求,但是不能很好覆盖系统正常的使用情况,二八原则计算方法能满足系统对大多数情况下的应用。

2023-10-16 15:41:58 1656

原创 python+selenium实现修改日期控件的值

在实现过程中,我遇到了一些问题,比如去掉readonly属性之后,重新赋值没有成功,后来又加了一行代码, self.driver.find_element(By.XPATH,"//*[@id='root']/div/div[2]/div/div[2]/div/div/div/div/div[2]/div[2]/div/div/div[1]/div/form/div[2]/div/div/span/span/input") .clear() 目的就是把原来的默认值删掉;

2023-09-01 16:05:58 1318

原创 selenium+find_elements用法

1、假如我们遇到多个标签的class一样,比如像下面这样的。

2023-09-01 16:00:25 861

原创 python函数调用的四种方式

标准调用运行结果:x is 1y is 2。

2023-08-29 15:19:49 876

原创 requests.exceptions.InvalidHeader: Invalid leading whitespace, reserved character(s), or...

报上面错是因为,有空格导致,把空格删掉即可;

2023-08-29 14:10:08 2111

原创 Python 如何生成重复单一内容的列表?

【代码】Python 如何生成重复单一内容的列表?

2023-08-29 11:25:15 148

原创 Python 中给列表(List)的每个元素加上1,怎么实现?

【代码】Python 中给列表(List)的每个元素加上1,怎么实现?

2023-08-29 11:22:32 1737

原创 request+python操作文件导入

图中标注的就是我们需要的参数,其中 name是参数名,filename是文件名,Content-Type是上传文件的类型,不管上传图片,视频,还是excel等文件类型,其参数都是这3种,将下面3个参数放在接口;注意:在执行代码会出现以下错误:OSError: [Errno 22] Invalid argument。而导致的错误,也就是说加上r之后,“”里的就不再出现转义字符,编程纯的文件地址。别着急,出现这个是因为平台的bug,像pycharm,,r"file":意思是指为了避免\xx是一个。

2023-08-29 11:02:13 830

原创 Jmeter(三十一):制造大批量的用户数据数据

需求:因测试需要,要造100w用户数据,通过用户名、手机号、密码可新增用户,其中用户名和电话号码要求100w用户不能重复。符合我们常用规则的手机号:第一位为1,第二位为3-9,后面的9位为0-9即可。1、通过Bean shell Sampler实现用户名和手机号的足够随机。以上一行代码将用户名和手机号联系起来,实现了用户名的随机。以上两行代码实现了手机号后9位在1-9之间随机分配。以上两行代码实现了手机号第二位在3-9之间随机分配。2、通过循环控制器使之循环100w次。以上四行代码实现了手机号的足够随机。

2023-08-28 18:22:37 1578

原创 Jmeter(三十):并发测试(设置集合点)

所以当timeout设置为0,但是线程数又不满足集合点中设置的值时,就会一直等待,不执行请求,需要手动stop。如:我集合点设置为50,那么不满足50个请求的时候,这些请求都会集合在一起,处于等待状态,当达到50的时候,就一起执行。分2组,发现先有4个请求,为第一组,5秒后,出现后2个请求,为第二组,共6个。原因:不够并发数且超时为0。场景三:线程数设置6,集合点设置为4,超时为0,点击运行。场景四:线程数设置6,集合点设置为6,超时为0,点击运行。场景一:线程数设置为6,集合点为3,超时为0,点击运行。

2023-08-28 17:44:09 1345

原创 Jmeter(二十九):Jmeter常用场景梳理

Jmeter常用场景梳理_jmeter性能测试场景设计_晓伟晓伟的博客-优快云博客

2023-08-27 20:50:30 754

原创 Jmeter(二十八):beanshell的使用

在此介绍下BeanShell PreProcessor的用法,其它的beahshell可以类推。用addClassPath("D:\\")方法引入 class文件,在用import导入包及类,然后就可以像java一样调用了。1、上一篇中已使用过的:把jar包放到jmeter目录\apache-jmeter-2.13\lib\ext下。a、bean shell可以接受传入参数,如下图:${u1} ${u2} ${u3}1、直接把上例中的java文件编译成class文件,如何编译请自行百度。

2023-08-27 20:47:04 1138

原创 Jmeter(二十七):BeanShell PostProcessor跨线程全局变量使用

稍后补充:https://www.cnblogs.com/insane-Mr-Li/p/10146302.html

2023-08-27 20:28:13 1290

原创 Jmeter(二十六)、详解jmeter函数和变量

JMeter函数可以被认为是某种特殊的变量,它们可以被采样器或者其他测试元件所引用。其中,__functionName匹配被调用的函数名称。用圆括号包含函数的形参,例如${__time(YMD)},不同函数要求的参数也不同。有些JMeter函数不要求参数,则可以不使用圆括号,例如${__threadNum}。如果一个函数的参数中包含逗号,那么必须对逗号进行转义(使用"\"),否则JMeter会把逗号当成参数分隔符。

2023-08-22 21:14:39 434

原创 JMeter(二十五)、一些概念的理解---90%响应时间、事务、并发

那么它的第90%百分位,也就是第9个数刚好是9 ,那么他的90%Line 就是9。2、2.1、2.5、3、3.4、3.4、4、4、4、4、5、5、5、5.9、5.91、6.8、8、12、24、24.1 按由小到大将其排列。如果事务中增加思考时间,运行结果统计的事务响应时间是包括思考时间的,所有场景的设计,脚本的设置,对测试结果是有影响的,具体需要根据需求进行设计。应用A,每个select查询需要1ms, 一个connection的话,一直不停的执行,1S内 可执行1000次,也就是1000qps。

2023-08-04 14:42:41 1120

原创 JMeter(二十四)、使用吞吐量控制器实现不同的用户操纵不同的业务

需求:博客系统,模拟用户真实行为,80%的用户阅读文章,20%的用户创建文章,创建文章的用户随机的删除或者修改文章。根据post_id是否能整除2,决定编辑还是删除。80%的用户查看文章。

2023-08-04 13:55:47 878

原创 Jmeter(二十三):快速生成测试报告

然后在聚合报告中指定日志文件存储路径,路径中最好不要包含有中文,执行脚本后,会在指定的这个目录下创建一个login.txt的日志文件。首先要保证jmeter命令是ok的,如果你在cmd中输入jmeter -v,有出现如下截图所示的信息,那就说明jmeter环境ok;1.完成脚本的调试、参数化、断言等操作后,在脚本存放目录下打开cmd,通过执行命令来执行脚本,并同步输出HTML测试报告。注意:指定的报告存放目录,如果目录不存在,则会自动创建。注意:指定的报告存放目录,如果目录不存在,则会自动创建。

2023-07-25 18:13:23 490

原创 JMeter(二十二):系统性能分析思路

还有其他应用程序自身的性能特征、工作负荷的特性、应用程序间的通信行为、磁盘或网络上的数据访问模式,还有终端用户对应用程序的使用模型。CPU是操作系统中运行的根本,他的执行速度与性能好坏很大程度上决定了系统整体的性能快慢,现在的cpu已经由之前的单核发展到多核,使得处理能力更强。磁盘数据的读写的性能也会直接影响系统程序的性能,磁盘I/O系统是系统中最慢的部分。在系统中,要考虑对应的网络是否到达、防火墙是否开启、端口的访问、宽带是否被限制、路由的寻址、网络的时延等。当系统利用率大于50%时,需要关注;

2023-07-25 16:02:43 379

原创 JMeter(八):响应断言详解

但是当我们发一个请求时,可以触发多个服务器请求,类似于ajax那种,那么就有main sample 和 sub-sample之分了。如果上面断言结果为true,勾选“否”后,最终断言结果为false。此外,对于有重定向的请求,并且勾选了“跟随重定向”, 那么这两个请求都是 sub-sample,重定向后的请求(第二个请求)就是main-sample。响应文本,Document(Text),url样本,响应代码,响应信息,Response Header,ignore status。(2) 正则匹配。

2023-07-25 11:20:19 578

原创 windows关闭某个进程

(1)win+R键打开命令提示符,输入cmd(2)输入netstat -ano(3)输入taskkill /f /pid 进程ID。例如:taskkill /f /pid 19216如果成功终止的话,会出现成功;

2023-07-25 09:45:37 4252

原创 sql中group by 的使用

Group By 从字面意义上理解就是根据By指定的规则对数据进行分组,所谓的分组就是将一个数据集划分为若干个小区域,然后针对若干个小区域进行数据处理。

2023-07-21 18:30:33 347

原创 Mysql数据库两种去重的方法

比如:(1)、查数据Select count(num), max(name) from student 列出表中的重复的记录数和学生名字的属性,Having count(num)>1 并按照num分组后找出表中num列出现次数大于一次的。(2)、删除数据//删除表中num列所有重复的数据。

2023-07-21 17:25:11 507

原创 mysql 使用存储过程批量插数据

ENGINE INNODB DEFAULT CHARSET utf8 COMMENT '测试表';2、定义存储过程,新建查询,输入以下语句,运行;运行完之后,会在函数下看到该函数。##num_limit 要插入数据的数量,rand_limit 最大随机的数值。1、打开navicat ,准备测试表,新建查询,输入以下语句,运行;3、调用存储过程,新建查询,输入以下语句。

2023-07-21 16:48:02 762

原创 postman中变量声明,var,let,const

JavaScript let 和 const | 菜鸟教程

2023-07-20 17:11:35 436

原创 消息队列MQ入门理解

但通常情况下,不同的 Topic 之间的消息没有必然的联系,而 Tag 则用来区分同一个 Topic 下相互关联的消息,比如全集和子集的关系,流程先后的关系。以时间轴为坐标,在消息持久化存储的时间范围内(默认3天),重新设置消息订阅者对其订阅 Topic 的消费进度,设置完成后订阅者将接收设定时间点之后由消息发布者发送到 MQ 服务端的消息。Producer 将消息发送到 MQ 服务端,但并不期望这条消息立马投递,而是推迟到在当前时间点之后的某一个时间投递到 Consumer 进行消费,该消息即定时消息。

2023-07-16 19:41:55 187

原创 消息中间件(一)MQ详解及四大MQ比较

消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发RocketMQ等。阿里系下开源的一款分布式、队列模型的消息中间件,原名Metaq,3.0版本名称改为RocketMQ,是阿里参照kafka设计思想使用java实现的一套mq。

2023-07-16 18:43:03 620

原创 为什么需要消息队列(MQ)?

主要原因:是由于在高并发环境下,由于来不及同步处理,请求往往会发生堵塞,比如说,大量的insert,update之类的请求同时到达MYSQL,直接导致无数的行锁,甚至最后请求会堆积过多,从而触发too many connections错误。通过使用消息队列,我们可以异步处理请求,从而缓解系统的压力。美国计算机科学家,LaTex的作者Leslie Lamport说:“分布式系统就是这样一个系统,系统中一个你甚至都不知道的计算机出了故障,却可能导致你自己的计算机不可用。

2023-07-16 18:35:25 210

原创 同步和异步的区别

异步如收发收短信,对比电话,打电话我一定要在电话的旁边听着,保证双方都在线,而收发短信,对方不用保证此刻我一定在手机旁,同时,我也不用时刻留意手机有没有来短信。异步,执行完函数或方法后,不必阻塞性地等待返回值或消息,只需要向系统委托一个异步过程,那么当系统接收到返回值或消息时,系统会自动触发委托的异步过程,从而完成一个完整的流程;同步如打电话,通信双方不能断(我们是同时进行,同步),你一句我一句,这样的好处是,对方想表达的信息我马上能收到,但是,我在打着电话,我无法做别的事情;

2023-07-16 17:26:29 629

空空如也

空空如也

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

TA关注的人

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