A ReadyAPI plugin is a single JAR file containing all the plugin functionality and all needed third-party libraries.
Functionality
Functionally, a plugin can contain any combination of the following:
Actions
Actions are features used by an application user. Typically, they are accessed through menus and toolbars.
Listeners
Listeners wait for events to occur and perform their function at that time.
Factories
Factories add general functionality to a testing project environment. This includes objects in a user interface, testing objects in a project, and any specific behavior you may want in your projects.
UI Objects
User interface objects include Editors, for example, to edit requests and responses, and Inspectors that display information, e.g., about messages.
Testing Objects
Testing objects, such as test steps and assertions, are another typical case where a plugin might be of interest.
Behavior
Any specific behavior in your API that needs special handling may also be a good case for developing a plugin.