软件测试——性能测试2

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: 软件测试——性能测试

软件测试——性能测试1:https://developer.aliyun.com/article/1521846

九、断言

作用:用于就检查测试中得到的响应数据是否符合预期,用于保证性能测试过程中的数据交互与预期一致,主要用于做调试,在进行压力测试时,断言可以禁用。

目的:在request的返回层面加一层判断机制。

实现过程

  1. 在请求下添加断言(一个请求可以添加多个断言),请求不同,添加的断言不同;
  2. 添加一个断言结果的监听器,通过断言结果可以看到是否通过断言,若通过,断言结果会打印一次请求的名称,一个请求的所有断言都通过了才算请求成功。

Jmeter中的断言和LoadRunner中的检查点是一致的。

常用断言:

响应断言:判断返回的内容是否满足预期;

作用对象:响应报文中的所有对象(响应代码、响应文本、url等等)

在响应断言下添加断言结果:

大小断言(size断言):用来判断返回内容的大小;

作用对象:返回信息,响应报文,添加size断言,必须指定大小和长度

断言持续时间:判断服务器的响应时间是否达到预期;

作用对象:服务器;

BeanShell断言:与Java语言相结合的断言,用于验证脚本。

十、关联

在测试过程中需要引用前面的数据,但是数据是经常发生变化的,那么要获取使用这些数据,就需要使用关联。

例如:第二个请求需要第一个请求返回数据的结果作为自己的输入数据,此时就需要使用关联将这两个数据对接起来。

具体实现步骤:在第一个请求之后添加后置处理器;

后置处理器的作用:在请求结束之后,处理响应结果的特定数据,提取需要的数据。


在关联的过程中,会通常使用到正则表达式提取器。


对于Jmeter的参数说明:


引用名称:下一个请求要引用的参数名称,比如填写name时,就需要用${name}进行引用;


正则表达式:


():括起来的部分表示要提取的;

. :匹配任何字符串;

+:一次或多次;

?:在找到第一个匹配项后停止;

模板:用

引用起来,如果正则表达式中有多个正则表达式,则可以是$2

$2

3$等等,

匹配数字:0代表随机取值,1代表全部取值,通常情况下使用0;

缺省值:如果参数没有取到值,就要给赋给默认值。

常用的正则表达式操作符:


后置处理器中的正则表达式:

十一、JDBC请求

使用Jmeter通过jdbc请求来操作数据库。

准备工作:准备数据库环境(创建表、准备数据)

实现步骤:

1、添加jar包

  • 直接将jar包复制到jmeter的lib目录(mysql推荐使用)
  • 通过Test Plan浏览加载(oracle推荐使用)

2、建立连接信息:在测试计划中,点击添加配置原件 -> JDBC Connection Configuration


3、添加JDBC请求

使用结果树查看响应结果:

十二、分布式测试

使用场景:在使用Jmeter进行性能测试时,对于高频大并发的数据单台电脑可能难以支持就需要进行分布式压测,即对客户端的压力进行分摊,也叫负载均衡。

原理

  1. 在使用Jmeter进行测试时,选择其中一台作为主控调度机,其余作为执行机;
  2. 执行时,主控机器会把每个脚本发送到每台执行机器上,执行机器拿到脚本就开始执行,执行机器不需要启动GUI界面;
  1. 执行结束后,执行机器会把结果回传给主机,主机收集所有的执行机器的测试数据进行汇总;

主控机器:生成脚本,调试脚本,汇总数据;

执行机器:运行脚本,回传数据给主控数据;

具体实现步骤

1、执行机器的设置

  • 在执行机上安装JDK和Jmeter(执行机和主控机的版本必须保持一致);
  • 添加环境变量;
  • 在启动bin目录下的:jmeter-server.bat;

易出现问题:提示无法启动,请按任意键/文件找不到


解决方案:进入apache-jmeter-5.2\bin\jmeter.properties文件,将server.rmi.ssl.disable设置为true,重新启动jmeter-server.bat,查看命令行窗口显示则表示启动成功。


2、主控机器设置:


准备测试脚本;

修改属性配置文件:jmeter.properties 文件,修改IP和端口号,在文件中查找remote_hosts,原默认信息是127.0.0.1表示本机,修改host信息:执行机器IP:端口号,执行机器2号IP:端口号,默认端口号是1099,执行时,确保1099未被占用(端口号可以进行自定义)

重新启动jmeter.bat;

在jmeter中点击运行,再点击远程启动,即可开启分布式测试。

十三、性能测试报告

测试报告的大纲:目的、项目简介、测试过程、测试结果以及项目总结。


性能测试报告的内容:概述、测试环境、测试目标(性能指标)、测试方法、测试数据分析、测试结论。


注意:在测试数据分析的过程中,必须按照不同的测试场景进行描述。


利用Jmeter生成html的测试报告:


方法一:


选择添加监听器中的聚合报告,将聚合报告输出到指定的csv文件,在jmeter的工具中选择

Generate HTML report;

html报告展示:

方法二:在命令行窗口输入命令来实现:

操作命令:jmeter -n -t 脚本的绝对路径.jmx -l 测试报告的文件名称.csv -e -o html报告的目录路径。

注意:报告的目录文件必须为空目录,测试报告文件也不能有数据,必须是空文件或者是不存在的文件。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
6天前
|
测试技术
探索软件测试的奥秘:如何构建有效的测试策略
在软件开发的海洋中,测试是确保航船不沉没的灯塔。本文将带你领略测试的魅力,从基础概念到高级策略,我们将一起航行在软件测试的广阔海域,探寻那些隐藏在代码深处的秘密。准备好了吗?让我们启航吧!
18 1
|
13天前
|
敏捷开发 测试技术 持续交付
软件测试中的探索性测试方法及其重要性
【8月更文挑战第6天】在软件开发周期中,测试环节是不可或缺的。它确保了产品的质量、性能与可靠性。然而,传统的测试方法往往侧重于预设的测试用例和场景,可能忽略了用户实际使用过程中的非预期行为。探索性测试(ET)应运而生,它强调测试人员的自主性和创造性,通过不断学习和适应来发现软件的潜在缺陷。本文将探讨探索性测试的概念、实施策略及其在现代软件开发中的重要性。
|
13天前
|
测试技术
软件测试中的心理学:如何优化测试流程
【8月更文挑战第6天】本文深入探讨了软件测试过程中的心理学因素,揭示了测试人员的心理动态对测试效率和质量的影响。通过分析测试人员的压力源、动机以及团队间的沟通问题,提出了一系列改善策略,如建立积极的反馈机制、提供持续的职业培训和优化工作环境等,旨在提升软件测试的整体效能。文章最后提出一个开放性问题,邀请读者思考如何在不断变化的技术环境中维持测试团队的心理健康和动力。
|
19天前
|
测试技术
软件测试中的探索性测试方法
在软件开发周期中,测试环节扮演着至关重要的角色。本文将深入探讨一种灵活而高效的测试方法——探索性测试。我们将通过具体实例分析其实施过程,并讨论如何通过这种方法提高软件质量和测试效率。最后,我们提出一个开放性问题,邀请读者思考探索性测试在他们工作中的实际应用和潜在价值。 【7月更文挑战第31天】
|
16天前
|
机器学习/深度学习 人工智能 数据挖掘
重塑软件测试未来:自动化与人工智能的交响乐章,引领高效精准测试新时代
【8月更文挑战第3天】软件测试是确保软件质量的关键环节。随着自动化与AI技术的发展,测试正经历从手动到自动、再到智能的深刻变革。自动化显著提升了测试效率,减少人为错误;AI则通过数据分析和学习能力,实现了测试用例的自动生成与优化,提高了测试的智能水平。两者的融合不仅增强了测试的全面性和准确性,还预示着一个更加高效智能的测试新时代的到来。
19 1
|
18天前
|
机器学习/深度学习 人工智能 测试技术
探索式测试:软件测试的未来趋势
在数字化时代,软件测试是确保产品质量和用户体验的关键环节。传统的测试方法虽然有效,但往往耗时耗力,难以适应快速迭代的开发模式。本文将介绍一种新兴的测试方法——探索式测试,它强调测试人员的主观能动性,通过不断地学习和探索来发现软件中的问题。我们将分析其原理、优势及实施过程,并探讨它如何成为未来软件测试的趋势。
|
20天前
|
敏捷开发 测试技术
软件测试中的探索性测试:一种灵活的质量保证方法
在软件开发周期中,测试是确保产品质量的关键步骤。传统的测试方法往往依赖于事先定义好的测试用例,但这种方法可能无法覆盖所有潜在的缺陷和场景。探索性测试(ET)作为一种更为灵活的测试方式,允许测试人员在执行测试的同时设计和适应测试用例,从而提高了测试覆盖率并发现更多隐藏的缺陷。本文将探讨探索性测试的核心概念、实施策略以及与传统测试方法的比较,旨在为软件测试专业人员提供一种更高效、适应性强的测试手段。
|
26天前
|
弹性计算 Prometheus Cloud Native
SLS Prometheus存储问题之Union MetricStore在性能测试中是如何设置测试环境的
SLS Prometheus存储问题之Union MetricStore在性能测试中是如何设置测试环境的
|
29天前
|
测试技术
单元测试问题之过去的软件测试如何解决
单元测试问题之过去的软件测试如何解决
|
1月前
|
监控 数据可视化 测试技术
性能测试:性能测试报告
**性能测试报告摘要** 报告详述系统在不同负载下的性能,作为决策、问题发现与解决、沟通合作及监控改进的依据。内容涵盖测试目的、环境、策略、用例、结果、分析、问题、调优建议及风险评估。清晰的图表辅助理解,为开发团队提供优化指导,确保系统性能与用户体验的提升。
43 2

热门文章

最新文章