cucumber - 空手道测试框架中是否提供数值比较?
问题描述
我经历了空手道框架的各种验证和断言。我没有找到任何功能来比较数值作为响应。下面是一些例子。
- 1.00 和 1.0 应该相等
- 1 和 1.00 相等
现在只有字符串比较,所以上面的值不相等,因为它们不同的是字符串格式。
解决方案
当然,如果您尝试比较两个字符串,它会有所不同!空手道很好地处理数字,看起来你没有正确阅读文档或示例。
* def a = 1
* def b = 1.0
* match a == b
如果您的 JSON 响应以字符串形式出现,并且您真的想将它们作为数字进行比较,则需要转换它们。请参阅此处的文档:https ://github.com/intuit/karate#floats-and-integers
* def a = 1
* def b = '1.0'
* match a == b * 1
* match a == ~~b
推荐阅读
- java - 获取 CtClass 超类名称或 CtClass 超类实例
- python - 保存具有当前日期和时间的 csv
- sharepoint - 将共享点搜索 API 结果限制在某些地理位置
- mongodb - Mongoexport“错误解析 URI”错误 - MONGODB
- c# - 在 UserControl 中处理来自主窗体的事件
- three.js - Three.js 在 OBJ(缓冲几何)的每个顶点(属性)上放置一个粒子
- c# - 如何验证rabbitmq是否安装在windows上?
- reactjs - 如何在 nextjs 中实现与服务器端渲染反应的错误边界?
- c# - System.Data.SqlClient.SqlException: 'Incorrect syntax near '2'.'
- google-apps-script - 使用应用程序脚本在谷歌表格中透视或转置数据