JMeter-需要提交POST数据,但我只希望修改单个字段
我正在运行一些JMeter测试来编辑一个字段。如果我使用JMeterHTTP(S)测试脚本记录器,我可以获得页面的精确表示和我所做的编辑 它为页面上的每个字段、复选框和下拉列表创建一个HTTP POST请求,并带有一个参数。我只关心修改其中一个 我的问题是,我不能从POST数据中删除所有其他参数,因为页面将其解释为我从页面中删除了所有参数(然后抱怨缺少数据)。因此,我只剩下尝试获取剩余可编辑字段和复选框的当前值,以便在只想修改单个字段时可以重新提交它们 例如,假设我正在提交一些包含姓名、电子邮件和地址字段的用户数据。我想通过在名称末尾添加1来更改名称,并保留其他两个字段的原样 我的想法是: 1) 使用XPath尝试获取页面上显示的值,将它们全部存储在变量中,然后在post请求中重新提交它们。这是混乱的,也是非常困难的,因为页面显示在弹出窗口中,增加了复杂性 2) 查询数据库中的所有信息并重新提交。看起来开销很大,加上数据不是免费的。。我不想这么做 3) 使用我不知道的JMeter的其他元素从页面获取特定元素数据。也许是我还没弄明白的听众?如果我可以从页面中提取参数并保存它们,那将非常方便 4) 以某种方式提交一个只有一个字段的POST请求,指定我不希望清除其余字段,我只想让它们单独存在。我可以坦率地承认,我对web应用程序不是非常熟悉,因此可能有一个非常明显的原因说明为什么不能做到这一点(或者这取决于应用程序后端如何处理它)JMeter-需要提交POST数据,但我只希望修改单个字段,jmeter,Jmeter,我正在运行一些JMeter测试来编辑一个字段。如果我使用JMeterHTTP(S)测试脚本记录器,我可以获得页面的精确表示和我所做的编辑 它为页面上的每个字段、复选框和下拉列表创建一个HTTP POST请求,并带有一个参数。我只关心修改其中一个 我的问题是,我不能从POST数据中删除所有其他参数,因为页面将其解释为我从页面中删除了所有参数(然后抱怨缺少数据)。因此,我只剩下尝试获取剩余可编辑字段和复选框的当前值,以便在只想修改单个字段时可以重新提交它们 例如,假设我正在提交一些包含姓名、电子邮件
想法?从整篇文章中,我了解到您想要参数化一个字段,每次传递不同的值 如果我的理解是正确的,答案在于,您可以从CSV文件中传递值 从你的例子来看: 例如,假设我正在提交一些带有字段的用户数据 姓名、电子邮件和地址。我想通过向中添加1来更改名称 结束它并保持其他两个字段不变 为实现这一目标: 步骤如下:
名称
名称1
姓名2
名字3
名称4
名称
为列标题,其余为值httppost
请求中name字段中的值替换为${names}
。就这样从整篇文章中,我了解到您想要参数化一个字段,每次传递不同的值 如果我的理解是正确的,答案在于,您可以从CSV文件中传递值 从你的例子来看: 例如,假设我正在提交一些带有字段的用户数据 姓名、电子邮件和地址。我想通过向中添加1来更改名称 结束它并保持其他两个字段不变 为实现这一目标: 步骤如下:
名称
名称1
姓名2
名字3
名称4
名称
为列标题,其余为值httppost
请求中name字段中的值替换为${names}
。就这样不幸的是,我事先不知道这些价值观。我需要加载页面,获取页面上已经存在的所有值,更改其中一个,然后重新提交所有值。然后您只需使用“正则表达式提取器”关联这些值,它允许您在响应上应用正则表达式,并将所需值保存到变量(比如id)中,稍后,您可以使用变量名替换发送到的任何位置的值。请在谷歌上搜索Jmeter相关性,你会找到许多要完成的链接。这听起来不错,在大多数情况下可能都会奏效。不幸的是,在我的设置中,这些字段中存在的数据不是文本。就是在这个设置中,您开始键入内容,并根据您的输入提供一个选择列表。当你点击一个按钮时,它会变成一种按钮。在HTML中,有一个简单的“只有两个数据源。如果客户端生成(使用js等)数据,则使用参数化。如果服务器将数据发送给客户端,则使用关联。因此,我们的工作是找到数据源,并使用参数化(使用CSV提供多个值)或关联(使用正则表达式提取器)。希望有帮助。遗憾的是,我无法提前知道这些值。我需要加载页面,获取页面上已经存在的所有值,更改其中一个,然后重新提交所有值。然后您只需使用“正则表达式提取器”关联这些值,它允许您在响应上应用正则表达式,并获取所需的值转换为变量(如id)因此,以后您可以使用变量名替换发送到的任何位置的值。请在Google中搜索Jmeter Correlation,您将找到许多要完成的链接。这听起来不错,并且可能在大多数情况下都有效。不幸的是,在我的设置中,这些字段中存在的数据不是文本。正是在这个设置中,您开始键入nd它根据您的输入提供一个选择列表。当您单击其中一个时,它会变成一种按钮。在HTML中,只有一个“只有两个数据源。如果客户端生成