pyjt


Namepyjt JSON
Version 0.6.0 PyPI version JSON
download
home_page
Summarytest automation for java UI applications from python
upload_time2023-08-07 14:40:50
maintainer
docs_urlNone
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"
}
        
Elapsed time: 0.23765s