Agent2Agent (A2A) is an open protocol enabling communication and interoperability between opaque agentic applications. Parasoft SOAtest is well-suited for testing A2A with its built-in JSON processing tools, LLM integration, and extensions for a wide array of underlying transports.
The following example illustrates how to create an A2A test scenario in SOAtest:
/.well-known/agent-card.json.
${AGENT_CARD} for the resource.url property to a custom column named BASE_URL./root/url[1]/text()

JRPC_REQUEST_ID and A2A_MESSAGE_ID.JRPC_REQUEST_ID.A2A_MESSAGE_ID.1234567890abcdef for both.
${BASE_URL}.
{
"id" : "${JRPC_REQUEST_ID}",
"jsonrpc" : "2.0",
"method" : "message/send",
"params" : {
"message" : {
"kind" : "message",
"messageId" : "${A2A_MESSAGE_ID}",
"parts" : [
{
"kind" : "text",
"text" : "<your prompt here>"
}
],
"role" : "user"
}
}
} |

/root/error and configure it so that Occurrences of element must be == expected value: [Fixed] 0. This will fail the tests if there are any errors./root/result/status/state/string() and configure it with Expected Value: [Fixed] completed. This will fail if the A2A server cannot complete the task, such as if more user input is required.
RESULT_TEXT./root/result[1]/artifacts[1]/item[1]/parts[1]/item[1]/text[1]/text()

RESULT_TEXT.