获取MD5 hasmap进行比较
Getting MD5 hasmap for comparison
我正在尝试使用空手道获取字符串的 MD5 哈希值以进行比较。
我创建了一个 common.feature,内容如下:
特点: 跨
的常用使用方法
背景:
def getMDhash = function(pdfFile){return DigestUtils.md5Hex(pdfFile).toUpperCase()}
场景:示例,使用另一个特征文件调用它:
- 特征:全部计算
场景:反复试验
call read('common.feature')
def final = getMDhash('my first attempt')
print final
我已经添加了:
import org.apache.commons.codec.digest.*;
在 *test.java 文件中。
但是,我在执行时仍然遇到这个错误:
Scenario: trial and error Time elapsed: 0.019 sec <<< ERROR!
java.lang.RuntimeException: javascript evaluation failed: getMDhash('my first attempt')
at com.intuit.karate.ScriptBindings.eval(ScriptBindings.java:115)
at com.intuit.karate.ScriptBindings.updateBindingsAndEval(ScriptBindings.java:103)
at com.intuit.karate.ScriptBindings.evalInNashorn(ScriptBindings.java:88)
at com.intuit.karate.Script.evalJsExpression(Script.java:362)
at com.intuit.karate.Script.evalKarateExpression(Script.java:284)
at com.intuit.karate.Script.evalKarateExpression(Script.java:170)
at com.intuit.karate.Script.assign(Script.java:598)
at com.intuit.karate.Script.assign(Script.java:524)
at com.intuit.karate.StepDefs.def(StepDefs.java:305)
at ?.* def final = getMDhash('my first attempt')(testSuite/users/dummy.feature:7)
Caused by: javax.script.ScriptException: ReferenceError: "DigestUtils" is not defined in at line number 1
at jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:470)
at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:454)
at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:406)
at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:402)
at jdk.nashorn.api.scripting.NashornScriptEngine.eval(NashornScriptEngine.java:155)
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:233)
at com.intuit.karate.ScriptBindings.eval(ScriptBindings.java:108)
at com.intuit.karate.ScriptBindings.updateBindingsAndEval(ScriptBindings.java:103)
at com.intuit.karate.ScriptBindings.evalInNashorn(ScriptBindings.java:88)
at com.intuit.karate.Script.evalJsExpression(Script.java:362)
at com.intuit.karate.Script.evalKarateExpression(Script.java:284)
at com.intuit.karate.Script.evalKarateExpression(Script.java:170)
您似乎缺少 DigestUtils
的负载。尝试:
* def getMDhash = function(pdfFile){ var DigestUtils = Java.type('replace.me.DigestUtils'); return DigestUtils.md5Hex(pdfFile).toUpperCase(); }
有关类似示例,请参阅文档的这一部分:https://github.com/intuit/karate#http-basic-authentication-example
我正在尝试使用空手道获取字符串的 MD5 哈希值以进行比较。
我创建了一个 common.feature,内容如下:
特点: 跨
的常用使用方法
背景:
def getMDhash = function(pdfFile){return DigestUtils.md5Hex(pdfFile).toUpperCase()}
场景:示例,使用另一个特征文件调用它:
- 特征:全部计算
场景:反复试验
call read('common.feature') def final = getMDhash('my first attempt') print final
我已经添加了:
import org.apache.commons.codec.digest.*;
在 *test.java 文件中。
但是,我在执行时仍然遇到这个错误:
Scenario: trial and error Time elapsed: 0.019 sec <<< ERROR! java.lang.RuntimeException: javascript evaluation failed: getMDhash('my first attempt') at com.intuit.karate.ScriptBindings.eval(ScriptBindings.java:115) at com.intuit.karate.ScriptBindings.updateBindingsAndEval(ScriptBindings.java:103) at com.intuit.karate.ScriptBindings.evalInNashorn(ScriptBindings.java:88) at com.intuit.karate.Script.evalJsExpression(Script.java:362) at com.intuit.karate.Script.evalKarateExpression(Script.java:284) at com.intuit.karate.Script.evalKarateExpression(Script.java:170) at com.intuit.karate.Script.assign(Script.java:598) at com.intuit.karate.Script.assign(Script.java:524) at com.intuit.karate.StepDefs.def(StepDefs.java:305) at ?.* def final = getMDhash('my first attempt')(testSuite/users/dummy.feature:7) Caused by: javax.script.ScriptException: ReferenceError: "DigestUtils" is not defined in at line number 1 at jdk.nashorn.api.scripting.NashornScriptEngine.throwAsScriptException(NashornScriptEngine.java:470) at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:454) at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:406) at jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:402) at jdk.nashorn.api.scripting.NashornScriptEngine.eval(NashornScriptEngine.java:155) at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:233) at com.intuit.karate.ScriptBindings.eval(ScriptBindings.java:108) at com.intuit.karate.ScriptBindings.updateBindingsAndEval(ScriptBindings.java:103) at com.intuit.karate.ScriptBindings.evalInNashorn(ScriptBindings.java:88) at com.intuit.karate.Script.evalJsExpression(Script.java:362) at com.intuit.karate.Script.evalKarateExpression(Script.java:284) at com.intuit.karate.Script.evalKarateExpression(Script.java:170)
您似乎缺少 DigestUtils
的负载。尝试:
* def getMDhash = function(pdfFile){ var DigestUtils = Java.type('replace.me.DigestUtils'); return DigestUtils.md5Hex(pdfFile).toUpperCase(); }
有关类似示例,请参阅文档的这一部分:https://github.com/intuit/karate#http-basic-authentication-example