gpt4 book ai didi

javascript - JMeter BSF 断言 - 比较日期变量

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:44:56 24 4
gpt4 key购买 nike

我正在尝试在 JMeter 中使用 javascript 进行 BSF 断言。

在 JMeter 调试采样器中,我有以下两个变量:insert_date=2013-11-11 16:22:33.000343db_created_date_1=2013-11-11 16:22:53.863187

我想比较它们,看看它们是否发生在彼此相差正负 10 秒的特定时间范围内 -或者时差超过 20 秒。

最好的方法是什么?

我不知道我是否应该使用 Date.parse(dateVal)Date.parse 函数返回一个整数值,表示从 1970 年 1 月 1 日午夜到 dateVal 中提供的日期之间的毫秒数。

我一直在尝试使用 BSF 断言 - javascript,但它不起作用:

if ((vars.put("my1",Date.parse(vars.get("db_created_date_1"))) - vars.put("my2",vars.get("insert_date")))  != 0) {
AssertionResult.setFailure(true);
AssertionResult.setFailureMessage("ERROR: The difference between db_created_date value (${db_created_date_1}) ${my1} and the dateTime (${insert_date}) ${my2} is too great.");
}

断言结果:断言错误:假断言失败:真断言失败消息:错误:db_created_date 值 (2013-11-11 16:22:53.863187) NaN 与 dateTime (2013-11-11 16:22:53.863187) NaN 之间的差异太大。

最佳答案

我不确定 Javascript,但您的 NaN 看起来很奇怪。正在关注Beanshell代码对我有用:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-DD HH:mm:ss");
long created = sdf.parse(vars.get("db_created_date_1")).getTime();
long insert = sdf.parse(vars.get("insert_date")).getTime();
long delta = Math.abs((created - insert));
if (delta > 20){
//ka-boom
}

关于javascript - JMeter BSF 断言 - 比较日期变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20107882/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com