2016-05-05 10 views
0

Я пытаюсь сравнить значение элемента CUSTOMER в нижнем XML-формате. Я не могу найти свой тег, где присутствует значение CUSTOMER.Rest Assured: проверить значение xml для дочерних тегов

Как только мне удастся сравнить стоимость, мне нужно сравнить INVOICE, ITEM, PRODUCT и другие детали.

<resource xmlns:xlink="http://www.w3.org/1999/xlink"> 
    <CUSTOMERList xlink:href="http://thomas-bayer.com/sqlrest/CUSTOMER/">CUSTOMER</CUSTOMERList> 
    <INVOICEList xlink:href="http://thomas-bayer.com/sqlrest/INVOICE/">INVOICE</INVOICEList> 
    <ITEMList xlink:href="http://thomas-bayer.com/sqlrest/ITEM/">**ITEM**</ITEMList> 
    <PRODUCTList xlink:href="http://thomas-bayer.com/sqlrest/PRODUCT/">PRODUCT</PRODUCTList> 
</resource> 

Ниже мой код код Java:

RestAssured.baseURI = "http://thomas-bayer.com"; 
try { 
    RestAssured.given().parameter("CUSTOMERList") 
       .when().post("/sqlrest").then() 
       .body("resource.CUSTOMERList", Matchers.equalTo("CUSTOMER")); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 

Ошибка генерируется после выполнения кода:

java.lang.AssertionError: XML path resource.CUSTOMERList doesn't match. 
Expected: CUSTOMER 

ответ

2

Вам нужно добавить .text(), чтобы получить значение тега, как указано ниже:

.body("resource.CUSTOMERList.text()", 
    Matchers.equalTo("CUSTOMER")); 

 Смежные вопросы

  • Нет связанных вопросов^_^