自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

feng的博客

从经历中提取经验

  • 博客(111)
  • 收藏
  • 关注

原创 基于PyAutoGUI图片定位的自动化截图工具--完成了

上次把jm部分的识别测试写完了,开始截图功能就大致修改一下循环逻辑就能用。lr部分大部分功能与jm流程一致,针对修改挺快的。

2024-04-16 11:45:04 628

原创 基于PyAutoGUI图片定位的自动化截图工具--jmeter部分(2)

使用pyautogui 库操作鼠标键盘,按钮根据截取的识别图定位。使用pygetwindow 库操作Windows窗口,切换到相应的标题窗口。

2024-04-12 14:56:09 433

原创 基于PyAutoGUI图片定位的自动化截图工具--jmeter部分

压测完成后需要编写性能测试报告,报告中所需数据截图较多,使用自动化操作方便快捷,就编写一个界面工具以便后续复用。之前编写过loadrunner报告的自动化截图脚本,现在用jmeter也比较多,就编写jmeter部分,然后两个整合起来。

2024-04-11 16:18:05 809

原创 截图识别对比:CnOCR与PaddleOCR

我需要对jmeter与loadrunner软件截图进行识别,获取定位,再使用PyAutoGUI做自动化操作。从上面的识别结果来看,PaddleOCR(飞桨)的识别率符合要求,就是慢一点。

2024-03-28 16:44:51 524

原创 Jmeter使用BeanShell保存数据到文件

使用JSON提取器将值提取出来,后面请求可以直接使用。其它业务想要使用就只能把值保存到文件,再使用文件做参数化了。

2024-03-25 16:05:46 360

原创 Python内置对象

内置对象在Python中是指那些由Python解释器直接提供的、无需额外导入就能使用的数据类型和实体。

2024-03-18 10:04:17 694

原创 Python异常处理

在Python中,异常处理是一个关键的编程概念,用于处理程序运行时可能出现的各种错误情况。Python通过try-except语句结构以及相关关键字(如finally、else)提供了异常处理机制。一个try语句可以跟多个except如果有多个except一定要注意顺序,具体的异常放上面,通用的异常放最后一个try语句可以有一个else语句,只有在不发生异常的情况下才执行else的内容一个try语句可以有一个finally语句,不管是否发生异常,里面的代码都会执行。

2024-02-28 09:54:11 762

原创 公共用例库计划--个人版(八)pyinstaller打包pyqt6,从168 MB到40.2 MB

公共用例库基本开发完成,打包成exe文件。经过优化,打包成多文件的exe程序,大小40.2 MB,单文件32.7 MB。优化幅度:(168-40.2)/168*100%=76.07%

2024-02-22 11:34:10 766

原创 公共用例库计划--个人版(七)Excel导入功能开发与导出功能改造

本次对导出功能的模块等进行改造,bug修改。编写导入功能的相关代码。导入导出页面:选择模块,把用例导出为Excel文件。导入:模板中填写用例信息,导入库中。用例库的主体功能就开发完成了。

2024-02-06 12:51:05 601

原创 公共用例库计划--个人版(六)典型Bug页面设计与开发

典型Bug:新增遇见的较典型的bug,进行复盘与经验总结。本次实现对bug的增删改查,图片的上传显示、翻页,还有大图窗口的缩放。

2024-02-01 17:18:08 1153

原创 公共用例库计划--个人版(五)QtCharts制作首页饼图与柱状图

使用pyqt6制作用例库工具软件,本次待完成:1. 首页的界面设计 2. 模块、用例与bug的数据显示 3. QtCharts制作饼图、柱状图

2024-01-25 11:11:32 836

原创 公共用例库计划--个人版(四)功能改造与性能优化

对用例信息页面,模块查询功能进行改造。实现下拉框输入模块名称,几秒钟后自动查询模块信息,或者回车查询。使用计时装饰器对比,对部分函数进行优化。码表改造。

2024-01-18 16:04:12 999

原创 公共用例库计划--个人版(三)导出Excel功能

公共用例库本次待完成:导入导出页面中,模块用例导出功能。

2024-01-12 17:28:37 830

原创 公共用例库计划--个人版(二)主体界面设计

本次待完成:公共用例库项目主体界面与逻辑设计阶段的工作。

2024-01-05 16:49:27 1041

原创 公共用例库计划--个人版(一)

本次计划的核心任务是开发一个,个人版的公共用例库,旨在将各系统和各类测试场景下的通用、基础以及关键功能的测试用例进行系统性地归纳整理,并以提高用例的复用率为目标,力求最大限度地减少重复劳动,提升测试效率。

2023-12-30 23:15:06 1014

原创 批量汇总nmon结果文件Excel数据

在使用nmon监控服务器资源以后,因为服务器较多,生成了几十个结果文件。现在需要统计每个文件中cpu、内存、disk等平均值、最大值信息。

2023-09-14 15:43:10 215

转载 loadrunner error:27796解决方法

使用loadrunner进行web性能测试时,高并发场景以及高性能的服务器/负载机可能导致压测出现大量Error -27796: Failed to connect to server “10.2.9.147:80”: [10048](服务器ip和端口),connection refused。

2023-08-07 15:56:09 354

转载 loadrunner--步长(Pacing)的设置及作用

当客户端请求发出去后,LoadRunner就开始计算响应时间,一直到它收到服务器端的响应。这个时候问题就产生了:如果此时的服务器端的排队队列已满,服务器资源正处于忙碌的状态,那么该请求会驻留在服务器的线程中,换句话说,这个新产生的请求并不会对服务器端产生真正的负载,但很遗憾的是,该请求的计时器已经启动了,因此我们很容易就可以预见到,这个请求的响应时间会变得很长,甚至可能长到使得该请求由于超时而失败。

2023-08-07 15:00:45 356

转载 Python中requests库的用法详解

requests是使用Apache2 licensed 许可证的HTTP库。比urllib模块更简洁。Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码。在python内置模块的基础上进行了高度的封装,从而使得python进行网络请求时,变得人性化,使用Requests可以轻而易举的完成浏览器可有的任何操作。

2023-07-19 10:01:26 2869

原创 PyAutoGUI实现对LoadRunner报告自动化截图

功能:输入路径,扫描路径下2级目录中.lra文件,打开文件进行指定页面截图操作,截图保存在\image中。

2023-07-10 17:33:11 228

转载 Django中数据库表的删除和重建的正确方法和问题的解决

python manage.py makemigrations(Django会重新对照你的models类与数据库中的映射表,如果你的model类被删除,则Django会生成一个删除迁移)今天因为需要为一个Django中已经存在的model类添加元数据,所以直接在db.sqlite3中删除了该model类的映射表,但是在重新迁移的时候出现了问题:迁移后没有删除的表。(后文有Django中删除和重建数据库中关于models类的映射数据库表的正确方法)

2023-06-14 16:11:11 829

转载 计算机网络的 89 个核心概念

因为 TELNET 有一个非常明显的缺点,那就是在主机和远程主机的发送数据包的过程中是明文传输,未经任何安全加密,这样的后果是容易被互联网上不法分子嗅探到数据包来搞一些坏事,为了数据的安全性,我们一般使用。:ARP 是一种解决地址问题的协议,通过 IP 位线索,可以定位下一个用来接收数据的网络设备的 MAC 地址。:由于 IP 地址是计算机能够识别的地址,而我们人类不方便记忆这种地址,所以为了方便人类的记忆,使用 DNS 协议,来把我们容易记忆的网络地址映射称为主机能够识别的 IP 地址。

2023-03-08 14:14:52 135 1

转载 Selenium 隐藏浏览器指纹特征

我们使用 Selenium 对网页进行爬虫时,如果不做任何处理直接进行爬取,会导致很多特征是暴露的。对一些做了反爬的网站,做了特征检测,用来阻止一些恶意爬虫。本篇文章将介绍几种常用的隐藏浏览器指纹特征的方式。

2023-03-07 11:15:13 599

转载 python yield有什么用

yield是一个常用于python函数定义中的关键字,它的作用是返回一个可以用来迭代(for循环)的生成器,它的应用场景通常为一个需要返回一系列值的,含有循环的函数中。如果想要彻底搞懂yield关键词的用法,你务必先要搞懂如下词的意思:迭代,可迭代,迭代器,生成器。接下来我将逐一介绍这些词的含义,以及相应的用法。

2023-02-17 11:03:19 2819

原创 JMeter类比loadrunner断言、参数化、集合点、关联、事务——学习笔记

1、函数助手_CSVRead的参数化功能相比CSV Data Set Config较弱;2、CSV Data Set Config适用于参数取值范围较大的时候使用,该方法具有更大的灵活性;3、User Defined Variables一般用于test plan中不需要随请求迭代的参数设置;4、User Variables适用于参数取值范围很小的时候使用;PS:相比于loadrunner来说,jmeter参数化有以下不同:1.jmeter参数文件第一行没有列名称。

2022-09-12 16:40:08 920

原创 Jmeter基础——学习笔记

所用到的插件目录,里面均为jar包。lib\junit下存放junit测试脚本.提供了对Ant的支持,可以使用Ant来实现自动化测试,例如批量脚本执行,产生html格式的报表,测试运行时,可以把测试数据记录下来,jmeter会自动生成一个.jtl文件,将该文件放到extras目录下,运行"ant -Dtest=文件名 report",就可以生成测试统计报表。● 测试计划(Test Plan):测试计划是JMeter测试脚本的根节点,关于整个测试脚本的一些基础设置,可以在测试计划中设定,例如用户定义变量。

2022-09-12 16:14:40 330

原创 使用JMeter上传excel文件

jmeter上传Excel

2022-08-29 11:57:17 2081

转载 UnitTest中的Path must be within the project 问题

unitTest中的 discover 第三个参数 top_level_dir 第一次运行时如果为None 会取当前传入的start_dir所在路径为 top_level_dir。而这个top_level_dir会作为self的参数保存下来,这样第二次运行时 top_level_dir实际取的是上一次的路径,直接影响到了下一次的运行。2 如果一定要调用两次,第二次需要手动将 top_level_dir这个参数传给discover方法,这样才能运行不同文件夹下的用例。查看了下discover的代码逻辑发现。.

2022-08-08 14:11:37 262

转载 Selenium Python

这篇文章在介绍官网的同时使用了比较多的脚本示例,示例里遇到的问题有部分在本篇文章进行了解释,还有一篇文章专门记录了问题。希望可以给予初学者更多的帮助。

2022-07-12 15:08:20 791

原创 记Python开发小工具过程

学习开发一个GUI界面,将之打包成exe小工具。这里记录一下整个学习流程。

2022-06-30 15:48:32 2719

转载 PageObject模式解析及案例

本文章向大家介绍PageObject模式解析及案例,主要包括PageObject模式解析及案例使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

2022-06-30 10:24:32 2803

转载 Loadrunner 并发时‘Error -27492 HttpSendRequest failed‘解决办法

Loadrunner对脚本单独回放时,回放100%正常无报错信息,但是运行场景多个用户并发测试时,运行一段时间后,每次均报错:Error -27492: “HttpSendRequest” failed, Windows error code=12002百度了一下,答案千篇一律,基本解决办法都是:“在Runtime-setting中的preferences–>options–>http-request connect timeout(sec)的值设为999。”然并卵…设置后依然报错,无法解决报错问题。

2022-06-21 15:04:24 2888 4

转载 Loadrunner在场景中添加多个负载机报错:Action.c(38): Error -26488: Could not obtain information about submitted解决方法

Error -26488: Could not obtain information about submitted file “E:.jpg”: _stat32 rc=-1, errno=2 [No such file or directory]. Using an empty file解决方法:1.先执行一次场景,让其报错,主要是为了创建完整的C:\Users\Administrator\AppData\Local\Temp\ brr_WJy.395目录下的子目录和文件2.在192.168.1.

2022-05-20 14:31:27 793

原创 学习Python+BeautifulSoup爬取小说

1、明确目标本次目标是利用BeautifulSoup,爬取http://t.icesmall.cn/网站下一本完整小说。Beautiful Soup 4.4.0 文档地址https://beautifulsoup.readthedocs.io/zh_CN/latest/#beautifulsoup2、网页分析小说目录页面,有每一章节的名称及章节地址,全都在 < li > 标签中,获取所有的章节地址,一次访问一整本小说。小说内容页面,章节名称位于class="post-title gr

2022-04-30 10:44:46 1230

转载 全网最全Python操作Excel教程

0 Python Excel库对比我们先来看一下python中能操作Excel的库对比(一共九个库):1 Python xlrd 读取 操作Excel1.1 xlrd模块介绍(1)什么是xlrd模块?python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库。(2)为什么使用xlrd模块?在UI自动化或者接口自动化中数据维护是一个核心,所以此模块非常实用。xlrd模块可以用于读取Excel的数据,速度非常快,推荐使用!官方文档:ht

2022-04-28 11:01:17 116633 21

转载 Python的requests库进行接口测试——session对象的妙用

在进行接口测试的时候,我们会调用多个接口发出多个请求,在这些请求中有时候需要保持一些共用的数据,例如cookies信息。妙用1requests库的session对象能够帮我们跨请求保持某些参数,也会在同一个session实例发出的所有请求之间保持cookies。举个栗子,跨请求保持cookies,在命令行上输入下面命令:# 创建一个session对象 s = requests.Session() # 用session对象发出get请求,设置cookies s.get('http://httpb

2022-04-20 14:48:02 508

转载 python:Unittest_断言方法

断言方法1、执行自动化测试中最重要的就是判断用例是否执行通过。python UnitTest单元测试框架提供了一整套内置的断言方法⑴如果断言成功,则无影响,代码继续执行,标识该测试用例为成功状态⑵如果断言失败,则抛出一个AssertionError,并标识该测试用例为失败状态⑶如果用例执行过程中发生异常,则当做错误来处理2、在UnitTest框架中定义了以下几类断言方法:⑴基本的Boolean断言,即:要么True,要么False的验证⑵简单比较断言,例如比较a,b两个变量的值⑶复杂断言3

2022-04-11 10:13:53 4916

转载 Python 文件读写

Python内置了读写文件的函数,用法和C是兼容的。本节介绍内容大致有:文件的打开/关闭、文件对象、文件的读写等。本章节仅示例介绍 TXT 类型文档的读写,也就是最基础的文件读写,也需要注意编码问题;其他文件的读写及编码相关详见专题的博文。open() close() with open(…) as …看以下示例就能了解 Python 的 open() 及 close() 函数。这边调用 read()方法可以一次读取文件的全部内容,Python把内容读到内存,用一个str对象表示,具体使用

2022-03-31 15:15:48 1078

转载 python: line=f.readlines()消除line中\n的方法

记file.readlines().strip()想去除\n,引发的报错测试代码#!/ust/bin/env python3 f = open("name.txt")date = f.readlines()print(date)f.close()结果:#[‘eray\n’, ‘eray\n’, ‘bike\n’]#打印出来的带 \n ,怎么去掉\n呢?解决方法:#1、f = open("name.txt")date = f.read().splitlines()print(d

2022-03-31 10:05:21 3297

原创 super().__init__报错TypeError: __init__() takes 3 positional arguments but 4 were given

代码详情:class Man(): '''一个人''' def __init__(self,name,age,like): '''初始化属性''' self.name = name self.age = age self.like = like -- snip --class Woman(Man): '''继承一个人的类''' def __init

2022-03-28 10:27:06 5083 2

PyAutoGUI实现对LoadRunner报告自动化截图

功能:输入路径,扫描路径下2级目录中.lra文件,打开文件进行指定页面截图操作,截图保存在\image中。

2023-07-10

空空如也

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

TA关注的人

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