jmeter 正则html元素,jMeter正则表达式

使用正则表达式搜索和操纵文本,基于模式。 JMeter解释正则表达式的形式或模式被用于整个JMeter 测试计划,包括模式匹配软件 Apache Jakarta ORO.

使用正则表达式,我们当然可以节省大量的时间,并实现更大的灵活性,因为我们建立或加强一个测试计划。正则表达式提供了一种简单的方法来获取信息页面时,它是不可能或很难预测结果。

使用表达式的标准用法的例子是从服务器响应得到一个会话ID。如果服务器返回一个唯一的会话密钥,我们可以很容易地得到我们的负载脚本中使用表达式。

要使用正则表达式在测试计划,需要使用正则表达式提取在JMeter。可以将正则表达式在测试计划中的任何组件使用。

这是值得强调的包含和比赛之间的差异,如用于响应断言测试元件:

包含表示正则表达式匹配至少有一些目标的一部分,所以'字母'“包含”'ph.b.因为正则表达式匹配'phabe“。

匹配正则表达式匹配整个目标。因此,“alphabet”是“匹配”'*t'。

假设想匹配一个Web页的以下部分:

name="file" value="readme.txt"

要提取readme.txt。一个合适的正则表达式如:

name="file" value="(.+?)">

上述的特殊字符是:

( and ) - 这些匹配字符串括起来的部分要返回

. - 匹配任何字符

+ - 一次或更多次

? - 停止在第一个匹配成功时

CREATE JMeter测试计划

让我们了解在正则表达式中使用正则表达式提取后处理器的元素,编写一个测试计划。此元素会从当前页面使用正则表达式识别文字图案所需的元素,符合提取文本。

首先,我们将写人名单和他们的电子邮件ID是一个HTML页面。它部署到 tomcat 服务器。 HTML(index.htmll)上的内容如下:

IDnameEmail3Manishamanisha@domain.com4joejoe@domain.com

部署在 Tomcat 服务器上,这个页面会看起来像在下面的快照:

在我们的测试计划中,我们将选择人以上列表页中看到的人表的第一行的人。为了捕捉这个人的ID,让我们首先确定的模式,我们会发现在第二排的人。在下面的快照中可以看出,第二个人的ID被包围

的和,它是具有这种模式的数据的第二行。我们可以用它来完全匹配的模式,我们希望从中提取信息。正如我们要提取两条信息从当前页的,该人ID和该人的姓名,字段定义如下:

启动JMeter,添加一个线程组 Test Plan > Add> Threads(Users)> Thread Group.

接下来,添加一个采样器的HTTP请求,右键单击选择的测试计划 Add > Sampler > HTTP Request 并进入详情如下:

Name: Manage

Server Name or IP: localhost

Port Number: 8080

Protocol: We will keep this blank, which means we want HTTP as the protocol.

Path: jmeter/index.htmll

接下来,添加一个正则表达式提取。选择HTTP请求采样器(管理),右键点击 Add > Post Processor > Regular Expression Extractor.

上述快照详情如下:

Field

描述

Reference Name

所提取的测试将被存储在其中的变量的名称(refname)。

Regular Expression

对文本提取模式将匹配。文字组,将提取的字符'('和')'所包围。我们使用'+?'由

.. TD>标签包围的文本来表示一个单一实例。在我们的例子中的表达式为:(+) TD> S*(+) TD> S*

Template

提取的文本的每个组将被放置作为成员变量person,“(”和“)”括起来的模式各组的顺序之后。每个组存储为refname_g#,其中refname是你输入的字符串作为参考名称,#是组号。 $1$指组1,$2$是指第2组,$0$是指无论整个表达式匹配。在这个例子中,我们所提取的ID将被保持于Person_g1,而“名称”的值将被存储在Person_g2。

Match No.

既然我们打算只提取第二次出现的这种模式,相匹配的第二项,我们使用值2。值0将随机匹配,而在foreach控制器需要使用负值。

Default

如果该项目没有找到,这将是默认值。这是一个可选字段。可能会让它空白。

添加一个监听器来捕捉这个测试计划的结果。右键单击线程组选择 Add > Listener > View Results Tree 选项​​添加监听器。

保存测试计划为reg_express_test.jmx和运行测试。输出将是一个成功,因为在下面的快照:

¥ 我要打赏

纠错/补充

收藏

上一篇:

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值