我正在通过 Karate API 调用网络服务。执行服务时,我收到预期的 HTTP 状态 204。但是,当我记录响应时,我得到空白。
下面是我的网络服务调用、响应和日志输出
result = karate.call('ExecuteWebService.feature', [urlToExecute]);
karate.log("Response is " + result.response); #Expecting that code displays HTTP status here
Run Code Online (Sandbox Code Playgroud)
我知道我得到了正确的呼叫响应,因为我的日志显示以下内容
HH.mm.ss.mil [main] DEBUG com.intuit.karate -
1 < 204
1 < Date: Fri, Rest of date portion
1 < X-Application-Context: App Context Data
Run Code Online (Sandbox Code Playgroud)
但是 karate.log 不显示状态代码。我需要状态代码,以便我可以根据我的预期值断言状态,从而通过/失败测试
HH.mm.ss.mil [main] DEBUG com.intuit.karate - response time in milliseconds: 431
HH.mm.ss.mil [main] INFO com.intuit.karate - [print]
HH.mm.ss.mil [main] INFO com.intuit.karate - Response is
Run Code Online (Sandbox Code Playgroud)
您能否就如何从 karate.call 结果中提取 HTTP 状态提出建议,以便我可以断言响应?
这听起来像是初步问题,但我无法找到解决方法.我不想使用eval().以下是我的代码
var inputValue = 75;
var functionName = 'Math.Sin';
alert (functionName(inputValue));
Run Code Online (Sandbox Code Playgroud)
我的目的是计算functionName(inputValue)的数学值.functionName和inputValue都存储在字符串中(当前设置ID是这样设计的,我不能改变它).functionName和inputValue是变量,它们的内容将根据上下文而改变.
我可以得到关于如何计算价值的建议吗?