Я работаю над процессом мыла, связанного с помощью балерины. В этом мне нужно написать модульный тест для подтверждения ответа от серверной службы axis2.
Я попробовал следующую опцию, чтобы сделать утверждение:
1. Пытался преобразовать ответ мыла в xml и утверждать с ожидаемым резонансом, но похоже, что балерина в настоящее время не поддерживает утверждение с полезными нагрузками xml.
Я устал следующий фрагмент кода, чтобы проверить утверждение.
import ballerina/io;
import ballerina/test;
import wso2/soap;
import ballerina/http;
endpoint http:Client clientEP {
url:"http://localhost:9091"
};
@test:Config
function testAssertion() {
io:println("This function is testing the xml assertion\n");
xml a1 = xml `<book><name>Sample1</name></book>`;
xml a2 = xml `<book><name>Sample2</name></book>`;
test:assertEquals(a1, a2, msg = "Assertion failed");
}
Получен следующий тест.
Compiling tests seran/consuming_a_soap_service:0.0.1
Running tests
seran/consuming_a_soap_service:0.0.1
This function is testing the xml assertion
[pass] testAssertion
1 passing
0 failing
0 skipped
2. Пытался конвертировать xml в json и утверждать
Пространства имен верхнего уровня наследуются в дочерние элементы, что приводит к сбою теста, даже несмотря на то, что полезные данные xml в ответе и ожидаемом ответе совпадают. Я запутался с этим поведением. Я использую тот же xml из ответа, что и ожидаемая полезная нагрузка, и преобразовываю как в json, так и в asserting, но тест все равно не проходит.
3. Пытался перебрать полезную нагрузку xml и утверждать только содержимое.
это не очень хороший подход, так как мы не утверждаем формат ответа xml.
Как я могу продолжить этот модульный тест?