我无法从resultDesc中找到文本:
given().config(RestAssured.config().xmlConfig(xmlConfig().with().namespaceAware(false)))
.log().all()
.body(requestAsString)
.when().post("/services/SubscribeMgrService")
.then().log().all()
.assertThat().statusCode(200)
// .body("ChangeOptionalOfferResultMsg/ResultHeader/ResultCode",equalTo("102023093"));
// .body("ns2:ResultCode",equalTo("102023093"));
.body("/soapenv:Envelope/soapenv:Body/ns4:ChangeOptionalOfferResultMsg/ResultHeader/ns2:ResultCode",equalTo("102023093"));
我已经尝试了与命名空间,但我一直得到:
XML path /soapenv:Envelope/soapenv:Body/ns4:ChangeOptionalOfferResultMsg/ResultHeader/ns2:ResultCode doesn't match.
Expected: 102023093
Actual: <ChangeOptionalOffer161102010133The current request is duplicate with the earlier request that was received and was processed.020220215154146nullnullnullnullnull>
实际反应是:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns4:ChangeOptionalOfferResultMsg xmlns:ns7="http://www.amdocs.com/wsdl/bss/acctcredit" xmlns:ns6="http://www.amdocs.com/wsdl/bss/query" xmlns:ns5="http://www.amdocs.com/wsdl/bss/newsubscriber" xmlns:ns4="http://www.amdocs.com/wsdl/bss/subscribemgr" xmlns:ns3="http://www.amdocs.com/wsdl/bss/subscribe" xmlns:ns2="http://www.amdocs.com/wsdl/bss/shared">
<ResultHeader>
<ns2:CommandId>ChangeOptionalOffer</ns2:CommandId>
<ns2:Version>1</ns2:Version>
<ns2:TransactionId>6</ns2:TransactionId>
<ns2:SequenceId>1</ns2:SequenceId>
<ns2:ResultCode>102010133</ns2:ResultCode>
<ns2:ResultDesc>The current request is duplicate with the earlier request that was received and was processed.</ns2:ResultDesc>
<ns2:OrderId>0</ns2:OrderId>
<ns2:OperationTime>20220215154146</ns2:OperationTime>
<ns2:Reserve1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<ns2:Reserve2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<ns2:Reserve3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<ns2:TenantId xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
<ns2:Language xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
</ResultHeader>
</ns4:ChangeOptionalOfferResultMsg>
</soapenv:Body>
</soapenv:Envelope>
我尝试过一些链接:https://github.com/rest-assured/rest-assured/wiki/Usage#xml-名称空间
是的,下面的内容可能有用,但我真的很感激能够理解手头的这个问题吗?
https://stackoverflow.com/questions/28298851/finding-all-xml-nodes-with-rest-assureds-xmlpath
我忘了在之后声明NS。namespaceAware(true)
bit
.declareNamespace("soapenv","http://schemas.xmlsoap.org/soap/envelope/")
感谢:
https://stackoverflow.com/questions/55434178/how-to-validate-specific-node-from-soap-xml-response-with-several-namespaces-usi
我的JSON响应如下所示: 我正在尝试提取成功消息和数据。但是,我的控制台输出保持为null。 提取响应后,我的代码将使用Rest Assured接收空响应: 我对成功和数据的响应均为空
我是新来的,请放心。我尝试了下面的代码来获得响应 这是json响应 如何计算id或列表的大小。帮助我。
我使用的是junit4提供的restassured。在我的测试方法中,我在mongodb中创建了一个对象,当我运行测试时,它也成功地持久化了。但是我需要存储创建的id,所以我尝试获取响应体。但是< code>response.getBody()。asString()为空。 当我从外部调用restendpoint时,它会返回带有相关字段的响应体,因此rest API没有问题。 如果上述问题没有答案,
我如何用放心(2.4.0)检查响应json是否为空列表? 给定响应(带有标头),我尝试了:
有什么方法可以按顺序验证响应吗? 我可以通过以下方式获得特定的id值 当我做这样的事情时,我会得到所有的id 需要验证结果是否符合DESC/ASC订单
假设我调用了一个RESTful服务,它在响应体中返回这个 我只需要得到映射键为' en '的值 所以我期望过滤后的结果会像这样 [“Reason1 英文翻译”、“Reason2 英文翻译”] 或 {"Reason1英文翻译","Reason2英文翻译"} 我已经尝试了下一个代码,但仍未完成 然后它返回 [{en=Reason1英文翻译,es=Reason2西班牙文翻译},{en=Reason2英文