Jmeter接口测试生成测试报告(可视化图形!测试数据非常直观!).jmx文件生成.jtl文件并生成.html文件可视化图形测试报告

软件测试实战教程系列—接口测试用例和报告模板|收藏版 接口测试的内容就讲到这里啦!如有需要了解软件测试相关的其他内容,可到在评论区和我互动交流进行学习~同时,有不理解或有误需要补充的地方也欢迎评论区共同探讨大家一起交流技术🤗。 阅读详情
AI摘要

本文介绍了如何使用JMeter进行接口测试,包括创建线程组、配置HTTP请求、添加监听器,以及在非GUI模式下运行测试并生成报告。在生成报告过程中遇到的问题和解决办法也进行了分享,最后提到了使用谷歌浏览器查看测试报告的优势。此外,还提及了MeterSphere这一开源持续测试平台作为其他可视化测试报告工具的选择。

目录

一、Jmeter创建线程组然后进行接口测试

1.1Jmeter先切换中文模式

1.2点中Test Plan来放大界面(Ctrl+鼠标滚轮)

1.3右键TestPlan---点击添加---Threads(Users)---线程组,并设置线程数为500

1.4右键线程组---点击添加---Sampler---HTTP请求,并配置Http请求接口

1.5右键HTTP请求---点击添加---点击配置元件---HTTP信息头管理器,并配置请求头(Content-Type)+用户Token(authorization)

​1.6右键HTTP请求---添加---监听器---jp@gc - Transactions per Second和jp@gc - Response Times Over Time

1.7右键HTTP请求---添加---监听器---Summary Report

1.8右键HTTP请求---点击添加---监听器---察看结果树,右键HTTP请求---点击添加---监听器---聚合报告

​         1.9右键HTTP请求---点击添加---监听器---图形结果

二、运行接口测试,保存jmx文件

​三、请求成功,插件结果展示如下(可跳过此步)

3.1察看结果树

3.2 jp@gc - Transactions per Second

3.3jp@gc - Response Times Over Time

3.4Summary Report​

3.5图形结果

3.6聚合报告

四、打开Jmeter/bin目录的文件夹,找到刚才运行的jmx文件,注意在当前目录下输入cmd并回车!!!

4.1打开Jmeter/bin目录的文件夹,找到刚才运行的jmx文件

4.2在当前路径直接输入cmd!!!

4.3弹出黑窗口

4.4输入指令jmeter -n -t G:\apache-jmeter-4.0\bin\cat接口测试.jmx -l cat接口测试.jtl -e -o G:\apache-jmeter-4.0\bin\CatReporter

4.4.1在Jmeter的bin目录下新建空文件夹CatReporter注意这个文件夹为空!!!必须为空!!!名字随便起哈

4.4.2在黑窗口输入路径,比如我的路径是

jmeter -n -t G:\apache-jmeter-4.0\bin\cat接口测试.jmx -l cat接口测试.jtl -e -o G:\apache-jmeter-4.0\bin\CatReporter

五、如下图代表生成测试报告成功,已经生成测试报告!

 5.1我在生成的过程中就报了一个异常,我的异常解决方案如下:

1.在你的Jmeter的bin目录下找到jmeter.properties这个文件比如我的地址:(G:\apache-jmeter-4.0\bin)

2.全局搜索jmeter.save.saveservice.output_format=

找到位置后,修改为jmeter.save.saveservice.output_format=csv 

六、打开Jmeter的bin目录,发现文件夹多了.jtl文件和CatReporter文件夹多了html文件

6.1多了.jtl文件

6.2 多了html文件等等

七、用谷歌浏览器打开html文件,为什么选择谷歌是因为可以翻译为中文,看上去更直观更容易理解

​

其他可视化测试报告工具:

MeterSphere(Linux系统下载GitHub)

一、界面展示

二、更多截图


一、Jmeter创建线程组然后进行接口测试

1.1Jmeter先切换中文模式

1.2点中Test Plan来放大界面(Ctrl+鼠标滚轮)

1.3右键TestPlan---点击添加---Threads(Users)---线程组,并设置线程数为500

1.4右键线程组---点击添加---Sampler---HTTP请求,并配置Http请求接口

 1.5右键HTTP请求---点击添加---点击配置元件---HTTP信息头管理器,并配置请求头(Content-Type)+用户Token(authorization)

 

1.6右键HTTP请求---添加---监听器---jp@gc - Transactions per Second和jp@gc - Response Times Over Time

1.7右键HTTP请求---添加---监听器---Summary Report

1.8右键HTTP请求---点击添加---监听器---察看结果树,右键HTTP请求---点击添加---监听器---聚合报告

1.9右键HTTP请求---点击添加---监听器---图形结果

二、运行接口测试,保存jmx文件

三、请求成功,插件结果展示如下(可跳过此步)

3.1察看结果树

3.2 jp@gc - Transactions per Second

3.3jp@gc - Response Times Over Time

3.4Summary Report

3.5图形结果

3.6聚合报告

四、打开Jmeter/bin目录的文件夹,找到刚才运行的jmx文件,注意在当前目录下输入cmd并回车!!!

4.1打开Jmeter/bin目录的文件夹,找到刚才运行的jmx文件

4.2在当前路径直接输入cmd!!!

4.3弹出黑窗口

4.4在黑窗口输入指令jmeter -n -t G:\apache-jmeter-4.0\bin\cat接口测试.jmx -l cat接口测试.jtl -e -o G:\apache-jmeter-4.0\bin\CatReporter(先不要着急回车,看下一步解释,修改当前的指令再回车)

环境要求
1:jmeter3.0版本之后开始支持动态生成测试报表

2:jdk版本1.8以上

3:需要jmx脚本文件

基本操作

1:在你的脚本文件路径下,执行cmd命令:jmeter -n -t test.jmx -l result.jtl -e -o /tmp/ResultReport

参数说明:
● -n: 非GUI模式执行JMeter
● -t: 执行测试文件所在的位置
● -l: 指定生成测试结果的保存文件,jtl文件格式
● -e: 测试结束后,生成测试报告
● -o: 指定测试报告的存放位置

注意:结尾的 ResultReport 是自己手动创建的报告文件夹。每次启动命令之前,文件夹内容必须和 jtl 文件一起清空

4.4.1在Jmeter的bin目录下新建空文件夹CatReporter注意这个文件夹为空!!!必须为空!!!名字随便起哈

4.4.2在黑窗口输入路径,比如我的路径是

jmeter -n -t G:\apache-jmeter-4.0\bin\cat接口测试.jmx -l cat接口测试.jtl -e -o G:\apache-jmeter-4.0\bin\CatReporter

五、如下图代表生成测试报告成功,已经生成测试报告!

 5.1我在生成的过程中就报了一个异常,我的异常解决方案如下:

1.在你的Jmeter的bin目录下找到jmeter.properties这个文件比如我的地址:(G:\apache-jmeter-4.0\bin)

2.全局搜索jmeter.save.saveservice.output_format=

找到位置后,修改为jmeter.save.saveservice.output_format=csv 

六、打开Jmeter的bin目录,发现文件夹多了.jtl文件和CatReporter文件夹多了html文件

6.1多了.jtl文件

6.2 多了html文件等等

七、用谷歌浏览器打开html文件,为什么选择谷歌是因为可以翻译为中文,看上去更直观更容易理解

 

其他可视化测试报告工具(待解锁):

MeterSphere(Linux系统下载GitHub)

MeterSphere 是一站式的开源企业级持续测试平台,涵盖测试跟踪、接口测试、性能测试、团队协作等功能,兼容JMeter 等开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量软件的交付。

一、界面展示

 

二、更多截图

点击这里查看更多功能截屏及演示视频

@希望能帮到大家!~

Jmeter之生成图形化报告 在 JMeter 中可以以图形化(饼状图、柱状图...)的方式显示脚本运行结果,较之于聚合报告或查看结果 树组件实 现更直观,用户体验更友好 生成图形化测试报告 命令: jmeter -n -t 脚本文件 -l 日志文件 -e -o 目录 -n 无图形化运行 -t 被运行的脚本 -l 将运行信息写入日志文件 -e 生成测试报告 -o 指定报告输出目录 步骤: 1、将jmeter脚本复制到jmeter文件夹/bin 2、该文件夹下cmd,输入命令 阅读详情

相关推荐

从零搭建MeterSphere一站式测试平台:部署、核心功能与DevOps集成实战

在软件工程实践中,持续集成与自动化测试是保障软件质量、提升研发效能的关键环节。其核心原理在于通过自动化脚本和工具链,将测试活动嵌入开发流程,实现快速反馈。这一技术能显著降低回归测试成本,加速发布周期,并沉淀可复用的测试资产。典型的应用场景包括接口自动化回归、性能压测和UI自动化测试等。针对测试工具链分散、协作成本高的普遍痛点,开源的一站式测试平台应运而生。以 MeterSphere 为例,它通过平台化整合,将接口测试、性能测试等核心能力统一管理,有效解决了脚本管理混乱和报告汇总困难等问题。本文将以 Mete

weixin_34269583的博客 607

Jmeter-HTML图形化报告内容详解

Jmeter-HTML图形化报告内容详解

qq_37515374的博客 2849

性能测试工具选型指南:JMeter、LoadRunner、Gatling、Locust、k6深度对比

性能测试是软件质量保障和系统稳定性评估的关键环节,其核心原理是通过模拟真实用户并发访问,对系统施加压力,以评估其在特定负载下的响应时间、吞吐量和资源利用率等指标。这项技术的价值在于,它能在产品上线前主动发现性能瓶颈,如数据库慢查询、内存泄漏或微服务调用链延迟,从而指导容量规划和架构优化,避免生产环境故障。在持续集成与持续交付(CI/CD)的现代研发流程中,性能测试已左移成为自动化流水线的重要质量门禁。本文聚焦于性能测试工具选型这一工程实践难题,针对 JMeter、LoadRunner、Gatling、Loc

weixin_33981932的博客 431

接口测试总结

接口测试的一些基础总结

weixin_43236533的博客 1315

接口测试报告接口测试报告

接口测试报告接口测试报告接口测试报告接口测试报告

分析国外几款主流蜜罐产品看欺骗诱捕技术的应用脉络

网络安全的本质是攻防对抗,更本质的其实是人与人心智与技术的全面较量。 欺骗诱捕技术作为攻防对抗技术中比较特殊的技术,能够使防守方更多掌握对抗中的主动权,诱导攻击,迫使攻击者耗费精力的同时,留下丰富的攻击信息。究其本质,欺骗诱捕技术更深层次考验的不止是技术的能力,还有对于攻击者作为人的理解。 国外主流蜜罐产品分析 根据MarketsandMarkets《欺骗技术市场规模、份额和2021年全球市场预测》中提到的欺骗诱捕技术全球主要供应商及产品,我们分析了几款国外主流的蜜罐产品,希望更清晰看到欺骗诱捕技术应

cdyunaq的博客 1307

性能测试报告模版

性能测试报告 1 概述 1.1性能测试概念 性能测试是通过自动化的测试工具模拟多种正常峰值及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试确定在各种工作负载下系统的性能,目标是当负载逐渐增加时,测试系统的各项性能指标的变化情况。压力测试是通过一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。...

weixin_30748995的博客 2133

KIBANA可视化管理界面说明

更说明转自https://blog.csdn.net/IT_ZRS/article/details/125496588 1 主要结构功能 使用浏览器访问 ip:5601 默认端口,进入首页 Discover:日志管理视图 主要进行搜索和查询 Visualize:统计视图 构建可视化的图表 Dashboard:仪表视图 将构建的图表组合形成图表盘 Timelion:时间轴视图 随着时间流逝的数据 APM:性能管理视图 应用程序的性能管理系统 Canvas:大屏展示

tian830937的专栏 7083

给定一个数据生成html,Jmeter接口测试生成测试报告(可视化图形!测试数据非常直观!).jmx文件生成.jtl文件并生成.html文件可视化图形测试报告...

目录一、Jmeter创建线程组然后进行接口测试1.1Jmeter先切换中文模式image1.2点中Test Plan来放大界面(Ctrl+鼠标滚轮)image1.3右键TestPlan---点击添加---Threads(Users)---线程组,并设置线程数为500imageimage1.4右键线程组---点击添加---Sampler---HTTP请求,并配置Http请求接口imageimage1...

weixin_29536515的博客 318

嵌入式下载故障排查:ST-LINK与GD32 Programmer典型问题解决

嵌入式固件烧录是MCU开发的关键环节,其本质依赖于调试器(如ST-LINK、GD-Link)与目标芯片间的协议通信、驱动加载及硬件接口协同。原理上,SWD/JTAG协议需在正确时序、电平与供电条件下完成设备枚举、ID读取与Flash编程;技术价值在于保障量产烧录稳定性与调试可重复性;典型应用场景涵盖STM32/GD32教学开发、工业控制板量产调试及Windows 11新系统适配。本文聚焦ST-LINK-V2在Keil MDK中的下载失败和GD32 All In One Programmer的DLL加载异常两

weixin_35006125的博客 153

11、系统稳定性分析与李雅普诺夫函数的应用

本文深入探讨了李雅普诺夫函数在系统稳定性分析中的核心作用,重点介绍了时变与时不变系统的稳定性判据差异,以及巴尔巴拉特引理在处理非自治系统中的应用。文章还阐述了正线性系统与严格正实传递函数的性质及其在非线性控制系统中的重要性,并展示了李雅普诺夫函数在评估主导时间常数和设计快速干扰抑制控制策略方面的实际应用。通过具体示例和流程图,系统地总结了李雅普诺夫方法在稳定性分析、性能评估与控制器设计中的多维度价值,同时指出了当前挑战与未来发展方向。

Jerry的专栏 93

Jmeter接口测试报告生成全链路解析:从jmx到jtl再到HTML可视化

接口测试报告是性能验证闭环的关键交付物,其本质是将原始压测数据转化为可理解、可追溯、可决策的技术证据。核心原理在于通过Jmeter的jmx测试计划驱动执行,以jtl二进制采样文件作为不可篡改的数据凭证,再经CLI命令生成基于ECharts的静态HTML报告,实现毫秒级响应时间、错误率、吞吐量等指标的可视化表达。该技术路径保障了数据保真性、结果可复现性与跨角色可读性,广泛应用于金融支付、电商大促、API网关等高可靠性场景。本文聚焦Jmeter接口测试中jmx设计规范、jtl数据结构解析及HTML报告定制机制,

weixin_31286719的博客 278

手把手教你使用ConvNeXt训练自己数据集和推理,ConvNeXt模型训练(CVPR 2022),一个能挑战 Vision Transformer 的卷积神经网络,含完整代码和数据集

手把手教你使用ConvNeXt训练自己数据集和推理,ConvNeXt模型训练(CVPR 2022),一个能挑战 Vision Transformer 的卷积神经网络,含完整代码和数据集

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 1450

JMeter HTML报告生成原理与实战避坑指南

JMeter HTML报告并非简单导出,而是基于.jmx测试计划驱动、.jtl原始采样日志为数据源、内置聚合引擎动态渲染的三段式构建过程。其核心原理是将海量采样结果(SampleResult)按时间、标签、响应状态等维度进行流式统计与分桶计算,支撑响应时间百分位、错误趋势、线程变化等关键性能指标可视化。技术价值在于可审计、可复现、可归档,满足生产级压测的工程化要求。典型应用场景包括CI/CD性能基线校验、业务指标定制看板、APM根因联动分析。本文聚焦.jtl生成可靠性、HTML报告引擎机制及常见空图表、乱码

weixin_28826545的博客 189

Mastercam软件二次开发:使用C#进行Mastercam二次开发

C#(发音为“C Sharp”)是一种现代、面向对象的编程语言,由微软开发,首次发布于2000年。它结合了C和C++的强大功能,同时引入了Java的垃圾回收机制,使得C#在开发效率和运行性能之间找到了一个良好的平衡点。C#的设计目标是提高开发者的生产力,它支持多种编程范式,包括面向对象、泛型、委托和事件等,这使得它成为开发Windows应用程序、Web应用程序、游戏(尤其是使用Unity引擎)和企业级应用的理想选择。

kkchenjj的博客 2214

C#使用OpenCvSharp+微信模型识别多个二维码

本文介绍了一个基于OpenCvSharp和微信开源二维码检测器的多二维码识别项目。该项目通过C# WinForm实现,主要功能包括:加载图片、识别图片中的多个二维码并显示识别结果。核心代码使用了OpenCvSharp.WeChatQRCode类,通过预训练的caffe模型(detect.prototxt/detect.caffemodel和sr.prototxt/sr.caffemodel)进行二维码检测和解码。识别结果包括每个二维码的编号、内容及位置信息。项目适用于批量二维码识别场景,部署简单,识别效果良

遇见--专栏 123

Jenkins与Jmeter集成实战:自动化接口测试与CI/CD流水线构建

持续集成(CI)与持续交付(CD)是现代软件工程的核心实践,旨在通过自动化流程提升软件交付效率与质量。其核心原理在于将代码集成、构建、测试和部署等环节串联为自动化流水线,实现快速反馈与可靠发布。在CI/CD流水线中,自动化测试是保障质量的关键环节,而接口测试作为验证系统间交互的重要手段,其自动化执行尤为关键。Apache Jmeter作为一款开源的性能与接口测试工具,能够模拟用户请求并对系统进行压力测试与功能验证。通过将其与Jenkins这一流行的自动化服务器集成,可以实现测试脚本的版本化管理、定时或触发式

weixin_33795743的博客 397

多物理场光学仿真软件:Ansys Lumerical_(8).CHARGE解决方案详解

CHARGE 模块主要用于求解 Poisson 方程和连续性方程,以模拟半导体器件中的电荷分布和载流子输运。通过 CHARGE 模块,可以分析器件的能带结构、载流子浓度、电流密度等关键参数。这些参数对于理解器件的工作原理和优化设计至关重要。

kkchenjj的博客 1386

JMeter与Postman深度对比:接口测试工具选型与实战指南

在软件测试领域,接口测试是验证系统间数据交互正确性的核心环节,其原理在于模拟客户端请求并验证服务端响应。掌握高效的接口测试技术,对于保障软件质量、提升开发效率具有重要价值,广泛应用于API开发调试、功能回归验证及系统性能评估等场景。本文聚焦于两款主流工具JMeter和Postman的深度解析,它们分别是性能测试与API协作开发的代表性解决方案。通过对比其设计哲学、协议支持、自动化脚本及性能测试能力,并结合CI/CD集成、数据驱动测试等热词,为测试工程师与开发者在不同实战场景下的工具选型提供清晰决策路径。

weixin_30740295的博客 543

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

JMeter接口测试实战指南:从核心流程到性能压测全解析

接口测试是保障软件系统稳定性的关键技术,它通过模拟客户端与服务器间的数据交互,验证接口功能、性能及可靠性。其核心原理在于发送特定协议的请求,并对响应进行断言验证,从而确保各服务模块协同工作的正确性。掌握接口测试能显著提升软件交付质量,降低线上故障风险,广泛应用于API功能验证、性能基准测试、持续集成流水线等场景。本文以Apache JMeter这一主流开源工具为载体,深入剖析其作为**流程编排器**和**性能探针**的双重角色,系统讲解从测试计划制定、脚本开发到结果分析的完整工程实践,并重点分享利用**JS

weixin_34072637的博客 357

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

JMeter+Ant接口自动化测试框架:从原理到CI/CD集成的实战指南

接口自动化测试是保障软件质量与交付效率的关键实践,其核心在于通过脚本模拟用户请求,自动验证接口功能与性能。其原理通常基于客户端-服务器通信模型,通过发送特定格式的请求并断言响应结果来实现验证。这项技术的价值在于能够实现快速、重复的回归测试,显著提升测试覆盖率与效率,是DevOps和持续交付流程中的重要环节。典型的应用场景包括API功能验证、微服务集成测试以及每日构建后的冒烟测试。本文聚焦于利用JMeter这一开源负载测试工具进行功能测试,并结合Ant构建工具实现测试脚本的批量执行与报告自动生成,从而构建一套

weixin_33794672的博客 592

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

JMeter性能测试实战教程:从脚本编写到报告生成与常见排查

性能测试是验证系统稳定性和并发处理能力的关键手段,JMeter作为Apache旗下的开源工具,通过线程组模拟多用户并发请求,采集响应时间、吞吐量、错误率等核心指标。理解并发模型与参数化原理后,还需结合实际场景灵活应用:例如使用“单用户1分钟”验证脚本稳定性与接口基线表现,通过“上传文件”接口压测覆盖业务上传场景,以及利用命令行模式生成HTML报告以支撑生产级压测。同时,常见报错如连接失败、证书问题等需要系统化排查链路。本教程按照从环境准备、首个脚本、接口场景、命令行压测、参数化到面试高频概念的完整路径,帮助

优快云头条 556

Jmeter+Ant+Jenkins接口自动化测试框架搭建与实战指南

接口自动化测试是软件质量保障的关键环节,其核心原理是通过脚本模拟用户请求,自动验证接口功能与性能。在持续集成(CI/CD)实践中,自动化测试能显著提升回归测试效率,快速反馈代码变更对系统的影响。Jmeter作为开源性能测试工具,凭借其强大的协议支持、参数化能力和无头模式运行特性,成为接口自动化的理想选择。结合Ant构建工具实现测试任务编排与报告生成,并通过Jenkins进行任务调度与结果通知,可以构建一套轻量级、易维护的自动化测试流水线。该方案特别适合测试资源有限、迭代快速的敏捷团队,能够将接口测试从重复手

weixin_28836507的博客 297

接口自动化测试工具选型指南:Postman、JMeter与Python方案深度对比

接口自动化测试是软件质量保障的核心环节,其原理是通过脚本模拟用户操作,自动执行接口请求并验证响应结果,从而实现测试过程的标准化与高效化。这项技术的价值在于能够显著提升回归测试效率,快速发现接口层面的功能与性能问题,是DevOps和持续交付流程中不可或缺的一环。其应用场景广泛,从单接口的功能验证到复杂的多接口业务流测试,再到性能基准测试,都离不开自动化测试框架的支持。本文聚焦于当前主流的三种实现路径:以图形化和协作为核心的Postman、源于性能测试的JMeter“瑞士军刀”,以及基于Python代码的高度可

weixin_30617797的博客 329

Postman与JMeter互补使用指南:接口测试与性能测试实战

接口测试是软件质量保障的基础环节,核心逻辑可拆解为构造请求、发送请求与验证响应三步。面对不同测试场景,工具选型往往令人困惑:Postman以直观的界面和灵活的脚本能力见长,非常适合接口联调、功能验证与自动化回归;JMeter则依托成熟的线程组模型,专为并发压力测试与复杂场景模拟而设计。二者并非替代关系,而像螺丝刀与电钻互补——日常联调用Postman,性能压测用JMeter。掌握环境变量、断言脚本、参数化与关联等核心技巧,能显著提升测试效率。从工程实践看,同一份Postman集合可驱动Newman接入CI,

weixin_34239592的博客 335

主流压力测试工具深度解析:从JMeter到k6的选型与实战指南

压力测试是软件性能工程的核心实践,旨在通过模拟高并发用户访问,评估系统在极限负载下的吞吐量、响应时间、错误率及资源消耗等关键指标。其原理在于主动制造可控的流量冲击,以暴露潜在的性能瓶颈、容量限制和稳定性问题,从而避免生产环境中的服务中断与用户体验下降。在微服务、云原生架构普及的今天,性能测试的价值愈发凸显,它不仅是上线前的关键验证环节,更是持续交付流程中保障服务SLA的重要手段。应用场景涵盖电商大促、秒杀活动、API服务扩容及新系统上线等各类高并发业务。本文将聚焦于**JMeter**、**k6**、**L

weixin_34013044的博客 335
上一篇: Error in NonGUIDriver java.lang.IllegalArgumentException: Report generation requires csv output form
下一篇: Jmeter 多个接口并发测试,使用逻辑控制器Critical Section Controller,使每个HTTP请求顺序执行
嘤嘤嘤999
博客等级 码龄9年 129粉丝 72原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值