Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
569 views
in Technique[技术] by (71.8m points)

cucumber - Is there numeric value comparison available in Karate testing framework?

I gone through various validation and Assertion of karate framework. I did not found any functionality to compare numeric values in response. Below are some examples.

  • 1.00 and 1.0 should be equal
  • 1 and 1.00 are equal

Right now there is only string comparison, so above values are giving as not equal as they are different is string format.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

Of course if you try to compare two strings, it will be different ! Karate handles numbers perfectly well, looks like you haven't read the documentation or examples properly.

* def a = 1
* def b = 1.0
* match a == b

If your JSON responses are coming as strings, and you really want to compare them as numbers, you need to convert them. Refer to the docs here: https://github.com/intuit/karate#floats-and-integers

* def a = 1
* def b = '1.0'
* match a == b * 1
* match a == ~~b

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...