groovy - 十进制值的 GPath 测试
问题描述
在 Java 中使用 Rest Assured 来测试一些 API。尝试使用 GPath 返回一个值。
为什么这行得通?
int i = response.path("Result.find{it.Amount>293.50 && it.Amount<293.52 && it.CreatedDate=='10/26/2018'}.Id");
但这不是吗?
int i = response.path("Result.find{it.Amount==293.51 && it.CreatedDate=='10/26/2018'}.Id");
GPath 对十进制值有什么奇怪的地方吗?我是 GPath 的新手,并尝试过研究,但找不到任何结论。
解决方案
一位非常聪明的同事为我找到了答案。在这里发布以帮助那些试图弄清楚的人。
为了测试双精度值,它应该是:
int i = response.path("Result.find{it.Amount.toDouble()==293.51 && it.CreatedDate=='10/26/2018'}.Id");
推荐阅读
- javascript - 获取贝塞尔曲线长度一半的坐标
- wpf - 如何为从视图模型打开的对话框设置所有者?
- authentication - Keycloak - 如何允许在没有注册的情况下链接帐户
- orm - 我应该在哪里找到 Odoo 11 中的模型“sale.order”代码
- r - 当内部列表包含向量时,列表到数据框的列表
- angular - 角度 6 中 throw 语句上无法访问的代码
- java - 即使用户提供了重复的标头,如何读取 @RequestHeader 注释的单个标头
- c++ - 使用 mlpack 执行 MNIST 示例
- node.js - 为什么 NodeJS 是单线程的?
- php - PHP preg_split 使用分隔符作为数组键