XMPP Samlper uses XMPP Connection to obtain connection context, then it performs one of available XMPP actions. Action is selected in the UI from the list of available actions. To use the plugin properly, you need to have at least basic knowledge of XMPP protocol and its client-server interaction.
- Connect - every XMPP session must start with connecting to server
- Log In - log into service with username/password/resource
- Roster Actions - allows getting/adding/deleting items from roster
- Send Presence - send available/away status
- Send Message - send messages to individual and group recipients
- Send Raw XML - send raw XML packet to server
- Collect Incoming Packets - very important action, collects all asynchronous incoming packets from connection input queue
- Disconnect - finish XMPP session with this action
- Get Bookmarked Conferences (XEP-0048)
- Join Multi-User Chat (XEP-0045)
- Send File (XEP-0096)
- Service Discovery (XEP-0030)
Resource Consumption Notice
This plugin uses Smack API as underlying library. This library uses approach when every client can create two more threads for its functioning (sending and receiving). Users should keep that in mind and monitor factual count of the threads for JMeter process.
Yeah, just like that. You can implement your own action and put JAR with it under lib/ext, so XMPP sampler will detect it and display in the list of available actions in XMPP Sampler.
You'll need to inherit from class
com.blazemeter.jmeter.xmpp.actions.AbstractXMPPAction and implement all required methods. There are plenty of examples in existing actions' source code.