【问题标题】:JMeter Assertion to verify the count of records inserted into databaseJMeter Assertion 验证插入数据库的记录数
【发布时间】:2018-03-08 22:04:26
【问题描述】:

我想要达到的目标:

将记录插入数据库并验证插入的记录计数是否与预期计数匹配。

执行的步骤:

  • 我已使用 HTTP 请求 (API) 将 1 条记录插入数据库。
  • 我已包含一个 JDBC 请求以返回插入数据库中的记录计数并将计数 * 存储为 RESULT
  • 我已将 JDBC 请求中的变量名称添加为 RESULT
  • 我在 JDBC 请求中创建了一个响应断言,并将“要使用的 JMeter 变量名称”作为 RESULT 传递
  • 选择“要测试的字段”作为“文本响应”
  • “模式匹配规则”为“相等”
  • “要测试的模式”为“{Result=1}”
  • 执行脚本

断言结果:

断言错误:false 断言失败:真 断言失败消息:测试失败:variable(RESULT)expected to equal/

*******收到:[[[[{RESULT=1}]]]] *******比较:[[[{RESULT=1}]]]

如果这个问题得到解决,我想增加计数。请指教。

【问题讨论】:

    标签: jmeter assertion


    【解决方案1】:

    当使用 JDBC 请求时,您的变量会像这样返回:RESULT_1、RESULT_2 等等..所以您的变量实际上是 RESULT_1。所以简短的回答是这样的:

    在响应断言中,您必须执行以下操作:

    1. “JMeter 变量”作为 RESULT_1
    2. 选择“要测试的字段”作为“文本响应”
    3. “模式匹配规则”为“等于”
    4. “要测试的模式”为“1”
    5. 执行脚本

    【讨论】:

    • 抢劫:感谢您的回复。我已将以下查询放入 JDBC Request select count() FROM Customer WHERE emailAddress ='loadtest.mk@gmail.com';我已将结果变量名称配置为“RESULT_1”按照您对响应断言的说明进行操作。,。结果:JDBC 请求 - 响应数据计数()1 响应断言结果:断言错误:false 断言失败:true 断言失败消息:测试失败:变量(RESULT_1)预期等于 / ******收到: [[[[{count(*)=1}]]]] ****** 比较: [[[1 ]]] /
    • - JDBC 请求:imgur.com/FkMqeXT 响应断言:imgur.com/P4yD3uP 查看结果树:imgur.com/4Jy4DDA
    • 您的响应断言现在是正确的,应该保持不变。 JDBC 请求不正确。您应该保持以前的变量名:“RESULT”。你应该把它放在“变量名”而不是“结果变量名”区域。所以,保持现在的断言,按照我说的修改 jdbc 请求,你应该一切顺利。
    • 抢劫.. 我已插入 3 条记录并针对 1 条进行验证,响应断言失败。但是,当断言计数与插入的实际 #of 记录匹配时,不执行响应断言。我希望这是预期的行为。非常感谢您的帮助。我附上了图片供您参考。 imgur.com/IWd3vWR
    • 太好了!是的,确实只有在请求有问题时才会在结果树中显示响应断言。所以是的,这是预期的行为。我很高兴能帮助你。如果您对答案感到满意,请选择我的回答为最佳并投票赞成/他们。祝你有美好的一天!
    猜你喜欢
    • 2017-08-15
    • 2023-04-08
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-18
    • 1970-01-01
    相关资源
    最近更新 更多