To connect ReadyAPI directly to your broker (Artemis) you do need to give ReadyAPI the Artemis client JARs and configure a JMS Request (JNDI or direct).
What to do (Artemis)
1. Put the Artemis client libs where ReadyAPI can load them.
Two supported ways:
* Manual: drop the Artemis client JARs into `<ReadyAPI>/bin/ext`, then restart ReadyAPI. (This is the simplest.)
> Use Artemis client jars, not “ActiveMQ Classic” 5.x. Artemis’ JMS classes and JNDI factory are different.
Version note: ReadyAPI 3.61+ switched from `javax.jms` to `jakarta.jms`. Match your Artemis client to that namespace:
* ReadyAPI ≤ 3.60 → use javax.jms Artemis client
* ReadyAPI ≥ 3.61 → use jakarta.jms Artemis client
If you mix these, you’ll get `ClassNotFoundException`/`NoSuchMethodError` at runtime.
https://support.smartbear.com/readyapi/docs/en/test-apis-with-readyapi/jms-support.html
2. Configure the JMS Request in ReadyAPI. You can do either:
A) JNDI style (typical)
* Initial Context Factory:
`org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory`
https://docs.redhat.com/en/documentation/red_hat_amq_core_protocol_jms/7.11/html/using_amq_core_protocol_jms/configuration
* Provider URL: your broker URL, e.g. `tcp://broker-host:61616`
* JNDI entries (example):
connectionFactory.ConnectionFactory=tcp://broker-host:61616
queue.MY.QUEUE=MY.QUEUE
topic.MY.TOPIC=MY.TOPIC
Then choose `ConnectionFactory` and `MY.QUEUE` in the step. (Names are your bindings.)
B) Direct (no JNDI)
ReadyAPI can connect straight to the provider if the client classes are present; use the “manual configuration” path and select Artemis’ connection factory (e.g., `org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory`) and set the broker URL.
3. Restart ReadyAPI so it picks up the libs, then create a JMS Request test step and send.
Common pitfalls we see
* Wrong client family: Using ActiveMQ 5.x (`org.apache.activemq.ActiveMQConnectionFactory`) for Artemis. Won’t work—use Artemis libs.
* Namespace mismatch: ReadyAPI 3.61+ expects jakarta.jms; older Artemis (javax) jars won’t load. And vice versa on ≤3.60.
* HermesJMS confusion: Hermes was removed years ago; use ReadyAPI’s built-in JMS or the connector plugin—don’t try to wire Hermes/JMSToolBox into ReadyAPI.
TL;DR mapping for your case (Artemis)
* Ignore JMSToolBox’s folder. Copy the Artemis client jars into `<ReadyAPI>/bin/ext`
* In the JMS Request, set Initial Context Factory to `org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory`, Provider URL to `tcp://…:61616`, and bind your queues via JNDI entries (or go direct with the Artemis connection factory).
* Make sure your Artemis client matches ReadyAPI’s javax/jakarta JMS version.