| Name | pyjt JSON |
| Version |
0.6.0
JSON |
| download |
| home_page | |
| Summary | test automation for java UI applications from python |
| upload_time | 2023-08-07 14:40:50 |
| maintainer | |
| docs_url | None |
| author | |
| requires_python | >=3.7 |
| license | |
| keywords |
|
| VCS |
 |
| bugtrack_url |
|
| requirements |
No requirements were recorded.
|
| Travis-CI |
No Travis.
|
| coveralls test coverage |
No coveralls.
|
# pyjt - test java UI applications from python
pyjt supports you testing java UI applications from python.
Features:
- Thread safe call of java ui components
- Advanced locators to find ui compoments within the component tree
- Simulate real user interactions by mouse and keyboard
This library makes use of **jpype** as the interface to the java
virtual machine. It basicaly consists of helper functions to
control the application from a test automation perspective.
## Quickstart
- Install pyjt
pip3 install pyjt
- Start testing your app
import pyjt
pyjt.start()
from javax.swing import JButton
# start your java application here, in this case, we start
# a hello world application located in HelloWorld.java
pyjt.start(classpath="myapp/")
pyjt.run("HelloWorld")
# find the frame window titled "Hello World"
frame = pyjt.FrameFinder.find(title="Hello World")
# Locate and click a button on the frame
frame.locate(JButton, text="Ok").click()
# Locate and fill text to an text field
frame.find_by_xpath('//JTextField[@name="textfield1"]').fill("John Smith")
# Close the frame (application)
frame.close()
## Further documentation
Check the [documentation on rtfd.io](https://pyjt.readthedocs.io/en/latest/)
Raw data
{
"_id": null,
"home_page": "",
"name": "pyjt",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "",
"keywords": "",
"author": "",
"author_email": "Claudio Klingler <ck@realtime-projects.com>",
"download_url": "https://files.pythonhosted.org/packages/b8/ef/fe177db65e3242e95d5d6fb3f6914cb14eb2cdce3b97a13bada6786af508/pyjt-0.6.0.tar.gz",
"platform": null,
"description": "# pyjt - test java UI applications from python\n\npyjt supports you testing java UI applications from python.\n\nFeatures:\n\n- Thread safe call of java ui components\n- Advanced locators to find ui compoments within the component tree\n- Simulate real user interactions by mouse and keyboard\n\nThis library makes use of **jpype** as the interface to the java\nvirtual machine. It basicaly consists of helper functions to\ncontrol the application from a test automation perspective.\n\n## Quickstart\n\n- Install pyjt\n\n pip3 install pyjt\n\n- Start testing your app\n\n import pyjt\n\n pyjt.start()\n \n from javax.swing import JButton\n\n # start your java application here, in this case, we start\n # a hello world application located in HelloWorld.java\n pyjt.start(classpath=\"myapp/\")\n pyjt.run(\"HelloWorld\")\n\n # find the frame window titled \"Hello World\"\n frame = pyjt.FrameFinder.find(title=\"Hello World\")\n\n # Locate and click a button on the frame\n frame.locate(JButton, text=\"Ok\").click()\n\n # Locate and fill text to an text field\n frame.find_by_xpath('//JTextField[@name=\"textfield1\"]').fill(\"John Smith\")\n\n # Close the frame (application)\n frame.close()\n\n## Further documentation\n\nCheck the [documentation on rtfd.io](https://pyjt.readthedocs.io/en/latest/)\n",
"bugtrack_url": null,
"license": "",
"summary": "test automation for java UI applications from python",
"version": "0.6.0",
"project_urls": {
"Bug Tracker": "https://github.com/realtimeprojects/pyjt/issues",
"Documentation": "https://pyjt.readthedocs.io/en/latest/",
"Homepage": "https://github.com/realtimeprojects/pyjt",
"Releases": "https://github.com/realtimeprojects/pyjt/blob/master/RELEASES.md"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e02f132ed5ef8913fc02817422dbc03693f1b3122caa1a4269c024707c382489",
"md5": "f757274b881751c2bc1551bd94385337",
"sha256": "e775a6ae509df649a16e753bd045350541cb41c97fa970ca39c3747d98209f79"
},
"downloads": -1,
"filename": "pyjt-0.6.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f757274b881751c2bc1551bd94385337",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 12514,
"upload_time": "2023-08-07T14:40:49",
"upload_time_iso_8601": "2023-08-07T14:40:49.872025Z",
"url": "https://files.pythonhosted.org/packages/e0/2f/132ed5ef8913fc02817422dbc03693f1b3122caa1a4269c024707c382489/pyjt-0.6.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b8effe177db65e3242e95d5d6fb3f6914cb14eb2cdce3b97a13bada6786af508",
"md5": "21ffb3244c968396077f1b4ed09b1384",
"sha256": "988d6b173a843702281e4988f6e2cb3ee96a8a05ebfa9e557c64fabbf78a5aa2"
},
"downloads": -1,
"filename": "pyjt-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "21ffb3244c968396077f1b4ed09b1384",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 12001,
"upload_time": "2023-08-07T14:40:50",
"upload_time_iso_8601": "2023-08-07T14:40:50.839084Z",
"url": "https://files.pythonhosted.org/packages/b8/ef/fe177db65e3242e95d5d6fb3f6914cb14eb2cdce3b97a13bada6786af508/pyjt-0.6.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-07 14:40:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "realtimeprojects",
"github_project": "pyjt",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "pyjt"
}