wrk post lua脚本取excel参数压力测试,判断接口性能

简介: wrk post lua脚本取excel参数压力测试,判断接口性能

在使用wrk进行压力测试时,可以通过Lua脚本获取Excel参数,并进行POST请求。下面是一个使用Lua脚本获取Excel参数,并进行POST请求的示例:


1. 假设有一个参数Excel文件params.xlsx,格式如下:

    | param1   | param2   |
    | :------: | :------: |
    | value1   | value2   |
    | value3   | value4   |


    2. 在Lua脚本中,使用luawin32库读取Excel文件内容,并将内容转为字符串。使用Lua的lunajson库将字符串转为JSON格式,并发送POST请求。

    -- 引入所需库
    local json = require("lunajson")
    local luawin32 = require("luawin32")
    -- 读取Excel中的参数
    function read_params()
       local excel = luawin32.new("Excel.Application")
       local workbook = excel:Workbooks():Open("params.xlsx")
       local worksheet = workbook:Worksheets(1)
       local params = {}
       for row=1,2 do
          local param1 = worksheet:Cells(row, 1):Value2()
          local param2 = worksheet:Cells(row, 2):Value2()
          params[param1] = param2
       end
       workbook:Close(false)
       excel:Quit()
       return params
    end
    -- 构造POST请求
    function request()
       local params = read_params()
       local headers = {}
       headers["Content-Type"] = "application/json"
       local body = json.encode(params)
       return wrk.format("POST", "/test", headers, body)
    end



    在这个例子中,我们使用了luawin32库读取Excel文件内容,并将内容转化为表格形式的参数。接着,我们使用Lua的lunajson库将参数表格转为JSON字符串。最后,我们使用wrk.format()函数构造POST请求,并将请求头,请求体以及POST请求的路径信息传递给该函数。


    可以使用以下命令行参数来执行上述测试:



      wrk -t10 -c100 -d20s -s test.lua http://example.com



      其中,test.lua为包含上述代码的Lua脚本文件名,http://example.com为测试目标主机名。这将使用10个线程和100个连接,测试20秒,并执行Lua脚本以模拟发送POST请求。


      目录
      相关文章
      |
      21天前
      |
      数据采集 监控 机器人
      浅谈网页端IM技术及相关测试方法实践(包括WebSocket性能测试)
      最开始转转的客服系统体系如IM、工单以及机器人等都是使用第三方的产品。但第三方产品对于转转的业务,以及客服的效率等都产生了诸多限制,所以我们决定自研替换第三方系统。下面主要分享一下网页端IM技术及相关测试方法,我们先从了解IM系统和WebSocket开始。
      37 4
      |
      1月前
      |
      存储 监控 测试技术
      测试脚本编写和维护的最佳实践有哪些?
      测试脚本编写和维护的最佳实践有哪些?
      119 50
      |
      14天前
      |
      监控 安全
      公司用什么软件监控电脑:Lua 脚本在监控软件扩展功能的应用
      在企业环境中,电脑监控软件对保障信息安全、提升效率至关重要。Lua 脚本在此类软件中用于扩展功能,如收集系统信息、监控软件使用时长及文件操作,向指定服务器发送数据,支持企业管理和运营。
      29 6
      |
      19天前
      |
      算法 Java 测试技术
      Benchmark.NET:让 C# 测试程序性能变得既酷又简单
      Benchmark.NET是一款专为 .NET 平台设计的性能基准测试框架,它可以帮助你测量代码的执行时间、内存使用情况等性能指标。它就像是你代码的 "健身教练",帮助你找到瓶颈,优化性能,让你的应用跑得更快、更稳!希望这个小教程能让你在追求高性能的路上越走越远,享受编程带来的无限乐趣!
      67 13
      |
      1月前
      |
      SQL 测试技术 API
      如何编写API接口的自动化测试脚本
      本文详细介绍了编写API自动化测试脚本的方法和最佳实践,涵盖确定测试需求、选择测试框架、编写测试脚本(如使用Postman和Python Requests库)、参数化和数据驱动测试、断言和验证、集成CI/CD、生成测试报告及维护更新等内容,旨在帮助开发者构建高效可靠的API测试体系。
      |
      26天前
      |
      并行计算 算法 测试技术
      C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面
      C语言因高效灵活被广泛应用于软件开发。本文探讨了优化C语言程序性能的策略,涵盖算法优化、代码结构优化、内存管理优化、编译器优化、数据结构优化、并行计算优化及性能测试与分析七个方面,旨在通过综合策略提升程序性能,满足实际需求。
      57 1
      |
      1月前
      |
      缓存 Ubuntu Linux
      Linux环境下测试服务器的DDR5内存性能
      通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
      38 4
      |
      1月前
      |
      监控 JavaScript 前端开发
      如何在实际应用中测试和比较React和Vue的性能?
      总之,通过多种方法的综合运用,可以相对客观地比较 React 和 Vue 在实际应用中的性能表现,为项目的选择和优化提供有力的依据。
      36 1
      |
      1月前
      |
      存储 监控 前端开发
      如何确保测试脚本的稳定性和可靠性?
      确保测试脚本的稳定性和可靠性是保证性能测试结果准确有效的关键
      |
      1月前
      |
      监控 网络协议 Java
      一些适合性能测试脚本编写和维护的工具
      一些适合性能测试脚本编写和维护的工具