A Java Agent for monitoring and automating user interactions on any Java Swing application.
- 🏗️ Built with Java 1.8 and Maven.
- 🔗 Provides a REST API to record and replay Swing UI interactions.
- 🗂️ Saves interaction data in JSON files.
- 🚀 Deployable via JNLP (Java Web Start).
- ✅ Capture user interactions like clicks, text input, JTable selections, dropdown selections, and more.
- ✅ Supports components inside nested
JFrame,JDialog, and dynamic UI elements. - ✅ REST endpoints to start/stop recording and to automate playback.
- ✅ Persistence in JSON file system.
- ✅ Can be attached to any Java Swing application as a Java Agent.
- Java 1.8
- Maven
- Embedded HTTP server (
com.sun.net.httpserver)
git clone https://github.com/akumosstl/java_swing_monitoring.git
cd java_swing_monitoring
mvn clean packageThe JAR will be located in:
agent/target/agent.jarAttach the agent to any Swing app:
java -javaagent:path/to/agent.jar -jar applicationB.jar| Endpoint | Description |
|---|---|
/start-record |
Start recording user interactions |
/stop-record |
Stop recording and save data |
/automation |
Replay the recorded interactions |
- JSON file saved with all user interactions.
The project includes a JNLP descriptor to launch the agent remotely.
Contributions are welcome! Please read the Contributing Guide and Code of Conduct.
This project is licensed under the MIT License.
- 👤 Alisson Pedrina
GitHub Profile