- 博客(98)
- 资源 (4)
- 收藏
- 关注
原创 【loadrunner性能测试 】:AI辅助生成性能测试脚本
本文介绍两种性能测试脚本编写方法:传统方式通过Fiddler捕获请求并转换为.saz文件,再使用LoadRunner 12生成脚本后转入11版本调试;创新方式采用AI技术,通过规范提示词将.saz文件直接输入AI,即可自动生成可直接在LoadRunner 11中运行通过的脚本。AI方法显著简化了工作流程,实现了从请求捕获到可执行脚本的一步生成,验证了AI在自动化测试领域的应用潜力。
2026-03-12 16:23:37
207
原创 【Mysql数据库还原异常处理】:myloader数据库还原异常处理
本文介绍了mydumper命令还原数据库异常时的两种处理方法:1)下载并修改出错的.gz备份文件,删除报错记录后重新压缩覆盖;2)确认非必要表后直接删除出错文件并修改metadata文件。适用于结构数据分离备份还原场景,提供快速解决备份还原异常的实用方案。
2026-03-12 16:04:49
37
原创 TDSQL备份和还原
TDSQL for MySQL版本支持与MySQL类似的备份还原方式。验证表明:1)备份时可用mysqldump导出库结构并过滤DEFINER语句,配合mydumper进行数据备份;2)还原时先通过mysql命令导入结构文件,再用myloader恢复数据。备份过程包含压缩、多线程等优化选项,还原时需注意跳过触发器以避免冲突。该方案完整实现了TDSQL数据库的备份还原功能,操作流程与MySQL基本一致。
2026-03-06 16:54:54
108
原创 【loadrunner性能测试】:小程序请求的token设置
小程序性能压测遇到401问题时,解决方案是获取最新token并添加到请求URL中。具体步骤:1)向开发人员获取最新token;2)将token拼接到URL后,通过浏览器访问验证;3)使用Fiddler抓取请求;4)转换为LR脚本时需包含原始请求中的cookies。该方法可解决因token失效导致的401错误,确保压测顺利进行。
2026-03-02 14:11:02
227
原创 【loadrunner性能测试】:日期函数在性能测试中应用
摘要:本文介绍了在测试中处理日期限制的方法,通过代码示例展示如何获取当前日期和次日日期。主要步骤包括:定义变量、使用日期函数获取日期、赋值给变量并替换请求中的日期。关键代码演示了使用lr_save_datetime和lr_save_string函数保存当前日期和次日日期,以及lr_eval_string函数获取变量值。该方法可确保测试请求中的日期符合不大于当前时间的要求。
2026-03-02 11:20:54
294
原创 【性能测试loadrunner】:报错解决LR VUG: The‘aTweb‘ twpe is not supported on wiN 32.
在loadrunner Controller中运行时压测,如果出现LR VUG: The'aTweb' twpe is not supported on wiN 32.异常;2、loadrunner安装目录的bin下面设置wlrun.exe的兼容性。1、load Generators设置为localhost。2、wlrun.exe兼容性设置问题;1、本地压力机代理设置问题;
2026-02-11 14:54:12
156
原创 【Load runner性能测试】:01 关联函数获取多个值存储在数组中
摘要:本文介绍了在LoadRunner中动态处理多个GUID值并传递给后续请求的方法。首先使用web_reg_save_param_ex函数获取所有serviceEvaluationDimensionGUID值并存储到数组中,设置Ordinal=ALL获取所有匹配值。然后通过lr_eval_string和lr_output_message函数验证数据获取是否正确,可以使用数组名_下标方式获取特定元素。最后将数组元素赋值给指定变量(serviceEvaluationDimensionGUID0~3),用于替换
2026-01-20 10:25:44
270
原创 【Loadrunner性能测试】:【超时请求】修改超时时间
loadrunner11的soket是直接调用的windows底层,修改脚本设置中的超时时间是无效的,需要在windows10中修改注册表。ReceiveTimeout 十进制 120000。ConnectTimeout 十进制 120000。120000毫秒=120*1000毫秒=120秒。SendTimeout 十进制 120000。新建 DWORD(32位)值。
2026-01-20 09:58:30
59
原创 【Loadrunner性能测试】:回放和加压时,查看错误日志
本文介绍了虚拟用户生成器(Virtual User Generator)中日志的设置方法。主要包括两种日志记录方式:1.将服务器返回的所有数据记录到日志中,便于错误排查;2.两种错误日志查看位置:回放时在Replaylog窗口查看,以及脚本加压时的日志查看方式。这些功能为性能测试中的问题定位提供了便利。
2026-01-20 09:40:04
62
原创 【loadrunner性能测试】:03 Lr参数化使用随机数
摘要:本文介绍了随机数在测试场景中的应用。以认购单保存为例,通过每次提交时生成不同的随机金额参数,确保测试数据的差异性,从而有效检测系统性能。该方法避免了因重复数据可能导致的服务端不处理问题,为性能测试提供了可靠的数据变化依据。(99字)
2026-01-20 09:34:52
70
原创 【loadrunner性能测试】:02 参数化设置
参数化数据取值规则主要包括三种方式:顺序、随机和唯一取值,以及更新时机(每次迭代/出现/仅一次)和超限处理(停止/循环/取末值)的配置。常见组合如顺序+每次迭代实现循环取值,唯一+每次迭代确保数据不重复。在控制器中可设置自动分配或为每个虚拟用户分配固定数量参数值。参数化SQL需保证数据质量,取值规则无法修正数据问题。
2026-01-20 09:33:19
944
原创 【达梦数据库】重启数据库服务
达梦数据库服务查询与重启方法:1. 查询正在运行的达梦服务可使用命令 systemctl --type=service --state=running,服务名以DmService开头;2. 重启服务执行 systemctl restart DmServiceDMSERVER。该摘要简明扼要地说明了达梦数据库服务的查询和重启操作步骤。
2026-01-12 09:59:27
359
原创 【海量数据库】日志清理-复制槽删除
摘要:该SQL操作主要涉及PostgreSQL复制槽管理。首先查询了所有复制槽的信息,包括槽名、类型、状态、重启LSN位置、当前LSN位置以及保留的WAL数据量(字节和可读格式)。然后通过retained_size字段确定哪个复制槽保留的WAL数据最多。最后执行删除操作,通过pg_drop_replication_slot函数删除指定名称的复制槽(示例为"0e3554c44fb54204505ba82238dfe054")。这些操作用于监控和清理PostgreSQL的复制槽资源。
2026-01-12 09:56:57
229
原创 海量数据库安装及常用命令
查看状态:systemctl status vastbase。重启:systemctl restart vastbase。1、停止:systemctl stop vastbase。启动:systemctl start vastbase。停止:systemctl stop vastbase。2、删掉vastbase目录。
2025-12-30 16:02:59
574
原创 【loadrunner性能测试】:关联函数web_reg_save_param_ex获取请求返回值
摘要:本文介绍在LoadRunner中处理动态GUID参数传递的方法。首先使用web_reg_save_param_ex函数获取所有serviceEvaluationDimensionGUID值,设置Ordinal=ALL存储到数组中。然后通过lr_eval_string和lr_output_message函数验证数据获取情况,使用lr_save_string将数组元素分别保存到四个变量中。最后将这些变量替换到后续请求的body参数中,实现动态参数的传递。关键点包括:参数捕获、数组处理、变量转换和参数替换。
2025-12-30 11:36:15
756
原创 【AI自动化】VSCode+Playwright+codegen+nodejs自动化脚本生成
Playwright 是由Microsoft开发的一个开源的跨浏览器自动化测试库,它支持Chromium、WebKit和Firefox浏览器,可用于测试现代Web应用。Playwright提供可靠的端到端测试能力,能够模拟用户与网页的真实交互。
2025-08-28 14:36:46
917
2
原创 【AI】录制自动生成UI自动化脚本
Playwright Codegen 是一个自动化测试脚本录制工具,通过命令行输入 npx playwright codegen 并指定目标 URL(如 https://myerp.dmyc.XXX.com:9443/),可自动打开浏览器并记录用户操作,实时生成对应的自动化测试脚本。该功能简化了测试脚本编写过程,适用于快速创建基于用户交互的自动化测试用例。
2025-08-21 17:23:12
410
原创 【达梦数据库】达梦表空间清理-磁盘清理
达梦数据库在频繁增删数据后会出现表空间无法自动回收的问题,导致磁盘空间浪费。本文介绍了空间回收方法:首先通过SQL查询确定空间利用率低的表空间,然后将目标表空间切换为手动扩展模式,执行RESIZE命令收缩数据文件到合理大小(需大于已用空间),最后恢复自动扩展模式。以JHXT_XIONGAN表空间为例,演示了从290G收缩到5G的具体操作步骤,包括修改数据文件路径和大小设置。该方法可有效解决空间浪费问题,建议定期执行维护。
2025-08-21 10:09:17
1359
原创 【Jmeter】两个函数拼接
JMeter中要遍历数据库查询结果时,不能直接使用${dbVar}_${Index}拼接,而需要使用__V()函数。例如查询结果存储在tpdocumentId变量中,通过${_V(tpdocumentId${Index},)}实现动态取值,其中Index是循环计数器(从1递增),运行时等效于${tpdocumentId_1}、${tpdocumentId_2}...${tpdocumentId_n}。这解决了JMeter中需要通过下标遍历结果集的问题。
2025-08-11 10:20:33
500
原创 【JMeter】调试取样器的使用
JMeter调试取样器(DebugSampler)是用于调试测试计划的实用工具,它不发送实际请求,而是显示JMeter变量、属性和系统信息。主要功能包括:查看变量值验证提取器结果、检查配置属性及系统环境。用户可通过右键添加该取样器,并选择显示的信息类型(变量/属性/系统信息)。使用技巧包括:结合结果树查看输出、命名清晰、测试时选择性启用以及搭配断言验证。特别提示:全局变量实际存储为JMeter属性,查看时需勾选相应选项。该工具特别适用于验证变量提取、调试逻辑控制器和排查脚本问题。
2025-08-08 10:17:20
1380
原创 【Jmeter】设置线程组运行顺序的方法
摘要:JMeter实现线程组顺序执行的5种方法:1) 推荐使用IfController+变量控制,通过全局变量标记完成状态;2) CriticalSectionController插件通过锁机制控制;3) TestFragment+ModuleController实现模块化调用;4) 利用内置的setUp/tearDown线程组;5) 拆分测试计划后命令行顺序执行。其中方法1无需插件适合简单场景,方法2适合复杂逻辑,方法3适用于大型测试。选择时需根据测试复杂度、是否需要插件等因素综合考虑,简单场景推荐方法1
2025-08-08 09:38:15
1479
原创 Jmeter全局变量跨线程组的使用
摘要:本文介绍了JMeter测试中跨线程组共享变量的方法。首先在线程组1中从数据库查询字段值,然后通过BeanShell取样器使用props.put()将变量设置为JMeter全局属性。需要注意的是,这种属性变量只能在调试取样器的JMeter属性开关中查看。在线程组2中,通过${__P(Out1)}函数调用该全局属性,用于后续的SQL查询操作,最终获取所需的结果集。这种方法实现了不同线程组间的数据传递。
2025-07-31 15:44:09
319
原创 【mysql】使用mydumper快速的备份和还原
data/dbBackup/projectManagerSuite/ompxnycbzbaerp_product_data_20250214 :备份数据的目录和文件名。/data/dbBackup/projectManagerSuite/erp_jcsj_100_data_20250102 : 数据备份的路径和备份文件。erp_jcsj_100_stru_20250114.sql : 生成数据库结构备份文件。并且还支持结构和数据分离备份和还原,提高还原稳定性;erp_jcsj_100: 数据库名。
2025-04-08 15:52:26
651
原创 powerShell 基础文件及文本操作
一、基础文件及文本操作1、压缩和解压缩:此处用7z1)前提:需要安装7z压缩软件;2)语法:7z a 压缩文件名 目录 压缩格式 a:标识压缩 x: 标识解压缩3)实例:7z a $zipfile .\* -tzip 7z x *.zip -oD:\JenkinsWS\FW_730\ERP -aoa2、文本拷贝1)语法:Copy-Item 源目录 目标目录 -exclude 排除的文件名1,文件名2 -Force -recurse -exclude:排除某些文件不拷贝 -Force:复制只读文件 -recu
2025-01-24 15:40:46
1222
原创 如何抓取app应用的请求,并进行调试
XXX助手 :依次点 “我 -> 设置 -> ” 设置顶部点击10次,就打开了XXX助手调试模式。如果是公司内部,需要安装XXX测试版【具体安装版本,以实际为准】如果是客户有单独的APP,需要找一线要二维码扫描下载。点击当前页面的任何应用,就可以在右边抓取到请求;输入edge://inspect 回车。设置-搜索USB调试,打开调试开关。稍等一会,会出现如下装置连接。
2024-12-24 16:45:19
1648
原创 ddddocr运行 ImportError: DLL load failed while importing onnxruntime_pybind11_state: 找不到指定的模块。
ImportError: DLL load failed while importing onnxruntime_pybind11_state: 找不到指定的模块。安装:pip uninstall onnxruntime==1.11.0。1、onnxruntime安装的版本过高与ddddocr不匹配。ddddocr安装时会自动安装依赖库onnxruntime;卸载:pip uninstall onnxruntime。2、VC++ 2019没安装或需要重新安装。下载VC++2019安装后解决;
2024-04-03 14:08:21
5642
1
原创 loadrunner lr 录制代理设置
e、Traffic Forwarding:Allow forwarding to target server from local port 此处端口设置需要与chrome浏览器的代理端口一致。2)Program to record:选择代理工具的地址,C:\Program Files (x86)\HP\LoadRunner\bin\wplus_init_wsock.exe。a、TargetServer:站点的域名或IP,不需要http或https。1、Chrome中设置代理地址和端口。
2024-03-05 14:38:04
1317
原创 loadrunner lr解决参数化一次取多条记录【一对多问题】
我们希望的效果是,这个脚本每次迭代时项目GUID取1次,工作项GUID取3次;因为3个工作项的项目GUID相同,所以项目GUID也可以取3次;如果工作项GUID变量在Action中出现不止3次,比如第一个请求中出现3次,第二个请求中又出现3次,那么这么设置就会导致取了6次,即取了6行记录;但是这种情况,只适用于,工作项GUID只在一个请求中出现3次,那么每次出现就换一个值,才能满足以上的设置;即项目GUID取得还是A项目GUID,但是4~6条项目GUID已经是B项目的GUID了;可以采取变量中转方式;
2024-03-05 14:14:36
642
原创 Python+uiautomator2 框架搭建
原本是谷歌的一个自动化java库,后来慢慢发展越来越完善,形成了python-uiautomator2,封装了谷歌的uiautomator测试框架,通过python接口,用它可以很方便的编写python代码来实现app的UI自动化测试。这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示。逍遥模拟器的多开功能比较好用,可以在一个模拟器中设置好环境后,快速复制多个模拟器-模拟器多开;模拟器基本都是免费使用的,大家可以自行去网上下载需要的模拟器;本人常用的就是逍遥和夜神。
2024-01-30 10:03:41
1364
原创 UI自动化Selenium BeautifulReport报告中展示用例描述
BeautifulReport安装并运行后,发现用例描述为空NULL;怎么定义每个Testcase的用例描述并展示在报告中呢?当然也可以通过ddt 方式 在Excel中定义好用例描述后,运行时传入beautifulReport中;这种方式后面再做介绍;只需要在每个测试方法第一行加上'''注释内容''' 即可;
2024-01-19 11:25:47
816
原创 UI自动化Selenium BeautifulReport报告嵌入截图
2、因为上面没有图片时,不返回data对象,所以下面需要判断如果有返回图片地址就print到报告中,没有就不print,这样就不会报错了;这里原作者有个设计不太好的点,add_test_img方法传入的图片名称,如果在业务脚本中没有执行截图,就会报错;其实真实的使用场景应该是,不需要传入图片名称的,应该自动生成图片名称并迁入报告中【此方案后续会研究】后续会研究不需要传入图片名称,遇到报错,就自动截图并print到报告中;2、业务脚本中有if判断,有些地方截图根据业务类型不会执行,有的会执行;
2024-01-18 18:18:43
1150
原创 UI自动化Selenium BeautifulReport报告样式错乱解决
首先找到依赖的资源地址,通过分析发现BeautifulReport报告生成都是根据一个模板文件,依赖的资源地址配置在模板文件中;有一天开开心心上班,打开我的自动化测试报告,整个人都不好了,出现了让我意想不到的事情——样式错乱、数据出不来;最后打开报告F12查看,发现是报告依赖的js和css文件网络访问不了了;依赖的资源404,找不到了;不足:如果报告发给别人开,别人本地没有资源文件,报告打开还是样式错乱;不足:依赖网络,如果不稳定或者别人环境不能联网,也会出现样式错乱;优势:本地稳定,不再依赖于网络加载。
2024-01-18 11:11:15
894
原创 UI自动化Selenium 页面窗口window定位切换
Selenium自动化,在操作元素时,一定是基于某个窗口这个前提;我们时常在操作时会出现打开新窗口的情况;如点击新增按钮,打开了新增单据的新页面窗口,接下来要录入单据信息时,必须告诉框架切换到新窗口后,才能操作窗口内的元素;甚至还需要在几个窗口之间来回切换,要做到这点,我们就需要提前获得各个窗口的句柄,从而判断当前在哪个窗口,接下来要去哪个窗口;
2024-01-04 10:28:27
1113
原创 UI自动化Selenium iframe切换多层嵌套
先进入IframeBig,再进入Iframe2,操作A,退出Iframe2,进入Iframe3,操作元素B,退出Iframe2,操作元素C。标签,作用是文档中的文档,或者浮动的框架(FRAME)。Selenium自动化对iframe的操作无非就是:进入iframe和退出iframe;要操作每一个元素,必须先进iframe;综上所述,iframe多层嵌套时,一定要注意当前位于什么位置,否则就会迷失;简单来说,就像房子内的一个个房间一样;先进入IframeBig,再进入Iframe2,然后操作元素A。
2024-01-04 10:05:40
1840
原创 UI自动化Selenium 显式和隐式等待Wait
都是等待设定的固定时间;不同是,硬等待是只对后一行脚本起作用,隐式等待是全局设置,所有操作都会等待设置的时间后,才操作;举例:如果页面上有 n 个元素的 class 都是’wp’,那么只要有 1 个元素存在,这个方法就返回 True。究其根本原因,就是咱们的应用在运行过程中,因为服务器性能、网络延迟等等原因,导致页面响应或者加载变慢,自动化脚本在操作元素时,元素没有加载完成导致的;因为本身元素可能1s加载完成了,但是设置后,每次都固定等待10s,白白浪费9s时间;智能判断,元素出来了就操作,不出来就等;
2024-01-02 18:00:19
2082
chrome81.0.4044.138和匹配的chromedriver
2023-11-01
jdbc-mysql-connector-j-8.0.31.jar jdbc-sqljdbc41.jar
2023-02-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅