Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 空手道-Runner.runFeature()的响应中缺少双引号_Java_Karate - Fatal编程技术网

Java 空手道-Runner.runFeature()的响应中缺少双引号

Java 空手道-Runner.runFeature()的响应中缺少双引号,java,karate,Java,Karate,我试图在Runner.runFeature()执行后在java中获得响应,但是从一些实体中删除了双引号 名为的功能文件正在读取外部json文件。 然后动态地改变空手道中的值并制作帖子 在输出中,我看到文件有双引号。 但是在执行之后,当我在响应映射中看到时,一些对象上的双引号被删除 初始json文件(sample.json): 功能文件,读取外部json文件: * def entityCreate = read('..//utils/sample.json') Scenario:P

我试图在Runner.runFeature()执行后在java中获得响应,但是从一些实体中删除了双引号

名为的功能文件正在读取外部json文件。 然后动态地改变空手道中的值并制作帖子

在输出中,我看到文件有双引号。 但是在执行之后,当我在响应映射中看到时,一些对象上的双引号被删除

初始json文件(sample.json):

功能文件,读取外部json文件:

    * def entityCreate = read('..//utils/sample.json')


  Scenario:Post
  ------------------------------------------------------------------------------------------------------------

  Creating unique BusinessPartner
    Given url uri
    And request entityCreate
    When method post
    Then status 201 
从JAVA类调用功能文件:

  Map<String, Object> resultCreate = Runner.runFeature(getClass(), "/../odata/businesspartner/businessPartnerCreateTest.feature", null, true);
结果:

{d={ChangeRequestType=AAA, AdditionalInformation=bla, RequestReason=test BP creation, BusinessPartner={BPCategory=2, Description=BLA, CentralData={Name1=NYJKPEFB0818GR4, Name2=NYJKPEFB0818GR4, NameOrg1=LM60Q9ZBBXM4SHXWNJZK, NameOrg2=LM60Q9ZBBXM4SHXWNJZK}, TaxNumbers=[{"TaxNumberCategory":"ABC","TaxNumberProperty":"123"}], IdentificationNumbers=[{"IdentificationType":"ABC","IDNumber":"1234"}], BankDetails=[{"BankdetailsID":"0001","BankNumber":"210","BankAccount":"12345","BankCountry":"DE","BankAccountName":"Hardcoded bank account"}], Addresses=[{"AddressType":"1","PhysicalAddresses":[{"HouseNumber":"40","City":"Berlin","PostalCode":"1333","CountryKey":"DE","Street":"BLA"}]}]}}}
有些已移除,有些保留


感谢您的帮助,我迷路了,很可能犯了愚蠢的错误。

很可能您正在打印字符串连接,在幕后JSON可能很好:


否则,无法从您提供的内容中辨别。也许你应该遵循这个过程:

我添加了更多细节-我希望这能解释得更多一些…@PePe-nope这对我来说太复杂了:我尝试尽可能地最小化-看起来Runner正在解析这个特定的JSON结构并删除它“从中。请求是正确创建的,等等。我试图抓住JAVA的请求,但我总是让它“损坏”。或者以错误的方式解析它
entityCreate=[type:MAP,value:{ChangeRequestType=AAA,AdditionalInformation=bla RequestReason=出于测试目的,BusinessPartner={BPCategory=2,Description=bla,CentralData={Name1=test API,NameOrg1=Organization},Address=[{“AddressType”:“1”,“PhysicalAddresses”:[{“CountryKey”:“DE”}]}}]}}]
对象映射中的值。我可以把请求的纯文本/字符串传递给Java吗?好的,我回答自己-我想昨天晚了。我刚刚使用了*string=entityCreate-haha.@Peter Thomas-在将值重写为原始字符串后,我可以复制有效负载吗?
 System.out.println(resultCreate.get("entityCreate").toString());
{d={ChangeRequestType=AAA, AdditionalInformation=bla, RequestReason=test BP creation, BusinessPartner={BPCategory=2, Description=BLA, CentralData={Name1=NYJKPEFB0818GR4, Name2=NYJKPEFB0818GR4, NameOrg1=LM60Q9ZBBXM4SHXWNJZK, NameOrg2=LM60Q9ZBBXM4SHXWNJZK}, TaxNumbers=[{"TaxNumberCategory":"ABC","TaxNumberProperty":"123"}], IdentificationNumbers=[{"IdentificationType":"ABC","IDNumber":"1234"}], BankDetails=[{"BankdetailsID":"0001","BankNumber":"210","BankAccount":"12345","BankCountry":"DE","BankAccountName":"Hardcoded bank account"}], Addresses=[{"AddressType":"1","PhysicalAddresses":[{"HouseNumber":"40","City":"Berlin","PostalCode":"1333","CountryKey":"DE","Street":"BLA"}]}]}}}