robotframework-mitmlibrary


Namerobotframework-mitmlibrary JSON
Version 0.1.6 PyPI version JSON
download
home_pagehttps://github.com/MobyNL/robotframework-mitmlibrary
SummaryWrapper for mitmproxy with Robot Framework
upload_time2024-02-28 18:16:43
maintainer
docs_urlNone
authorMark Moberts
requires_python
licenseMIT
keywords robotframework automation testautomation testing mitm maninthemiddle
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Robot Framework MITM Library
============================

.. figure:: https://robotframework.org/img/RF.svg
   :alt: Robot Framework Logo

   Robot Framework Logo

Keyword
-------

`Keyword
documentation <https://mobynl.github.io/robotframework-mitmlibrary/MitmLibraryKeywords.html>`__

Overview
--------

The Robot Framework MITM Library is a custom library for `Robot
Framework <https://robotframework.org/>`__ that enables integration with
the Python package `mitm <https://github.com/mitmproxy/mitmproxy>`__.
This library allows you to automate and test scenarios involving
Man-in-the-Middle (MITM) proxy functionality within your Robot Framework
test suites.

If you need help, have suggestions or want to discuss anything, feel
free to contact through the `slack
channel <https://robotframework.slack.com/archives/C06M2J3J8AC>`__.

Features
--------

-  Interact with MITM proxy using Robot Framework keywords.
-  Manipulate network traffic for testing purposes.
-  Easily simulate different network conditions and responses.
-  Integrate MITM proxy capabilities into your existing Robot Framework
   tests.

Installation
------------

1. Install Robot Framework (if not already installed):
2. Install mitm library using pip:

::

   pip install robotframework-mitmlibrary

Usage
-----

1. Import the MITM Library in your Robot Framework test suite:

.. code:: robotframework

   *** Settings ***
   Library       MitmLibrary

2. Use the available keywords to interact with the MITM proxy and
   manipulate network traffic as needed:

.. code:: robotframework

   *** Settings ***
   Library       MitmLibrary

   *** Test Cases ***
   Block and Delay Websites
       Start Mitm Proxy

       # Block requests to Robot Framework website
       Add To Blocklist    robotframework.org

       # Delay requests to Google
       Add Response Delay  GoogleDelay   https://www.google.com  5  # Delay for 5 seconds

       # Perform tests that involve network traffic manipulation
       # ...

       Stop Mitm Proxy

Why use Mitm?
~~~~~~~~~~~~~

Mitm allows manipulation on single browser instance, by using a proxy.
It does not require you to set up stubs or mocks that might influence
the entire application at once, also resulting in stubbed/mocked
behaviour while manual testing.

Examples where Mitm is useful: - When running in parallel, if you do not
want your other instances to be influenced. - Manipulate the response of
a request to see how the front end handles it - When stubs or mocks are
not available or their behaviour is not sufficient for your testing
needs. - When you want to have full control as tester, without
dependency on a developer

Mitm Certificates
~~~~~~~~~~~~~~~~~

To test with SSL verification, or use a browser without ignoring
certificates, you will need to set up the certificates related to mitm.
Follow the guide on the `Mitm
website <https://docs.mitmproxy.org/stable/concepts-certificates/>`__

Documentation
-------------

For detailed information on the available keywords and usage examples,
please refer to the `Keyword
Documentation <https://mobynl.github.io/robotframework-mitmlibrary/MitmLibraryKeywords.html>`__

Contributing
------------

Contributions are welcome! If you encounter any issues, have suggestions
for improvements, or would like to add new features, feel free to open
an issue or submit a pull request.

License
-------

This project is licensed under the MIT License.

Note: This project is not officially affiliated with or endorsed by the
mitmproxy project or robotframework.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/MobyNL/robotframework-mitmlibrary",
    "name": "robotframework-mitmlibrary",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "robotframework,automation,testautomation,testing,mitm,maninthemiddle",
    "author": "Mark Moberts",
    "author_email": "markmoberts@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/cb/b5/039d5f37ce71fdb47b91cb4dae96a85cc2d9356f4a578e53922a0ebf0a57/robotframework-mitmlibrary-0.1.6.tar.gz",
    "platform": null,
    "description": "Robot Framework MITM Library\r\n============================\r\n\r\n.. figure:: https://robotframework.org/img/RF.svg\r\n   :alt: Robot Framework Logo\r\n\r\n   Robot Framework Logo\r\n\r\nKeyword\r\n-------\r\n\r\n`Keyword\r\ndocumentation <https://mobynl.github.io/robotframework-mitmlibrary/MitmLibraryKeywords.html>`__\r\n\r\nOverview\r\n--------\r\n\r\nThe Robot Framework MITM Library is a custom library for `Robot\r\nFramework <https://robotframework.org/>`__ that enables integration with\r\nthe Python package `mitm <https://github.com/mitmproxy/mitmproxy>`__.\r\nThis library allows you to automate and test scenarios involving\r\nMan-in-the-Middle (MITM) proxy functionality within your Robot Framework\r\ntest suites.\r\n\r\nIf you need help, have suggestions or want to discuss anything, feel\r\nfree to contact through the `slack\r\nchannel <https://robotframework.slack.com/archives/C06M2J3J8AC>`__.\r\n\r\nFeatures\r\n--------\r\n\r\n-  Interact with MITM proxy using Robot Framework keywords.\r\n-  Manipulate network traffic for testing purposes.\r\n-  Easily simulate different network conditions and responses.\r\n-  Integrate MITM proxy capabilities into your existing Robot Framework\r\n   tests.\r\n\r\nInstallation\r\n------------\r\n\r\n1. Install Robot Framework (if not already installed):\r\n2. Install mitm library using pip:\r\n\r\n::\r\n\r\n   pip install robotframework-mitmlibrary\r\n\r\nUsage\r\n-----\r\n\r\n1. Import the MITM Library in your Robot Framework test suite:\r\n\r\n.. code:: robotframework\r\n\r\n   *** Settings ***\r\n   Library       MitmLibrary\r\n\r\n2. Use the available keywords to interact with the MITM proxy and\r\n   manipulate network traffic as needed:\r\n\r\n.. code:: robotframework\r\n\r\n   *** Settings ***\r\n   Library       MitmLibrary\r\n\r\n   *** Test Cases ***\r\n   Block and Delay Websites\r\n       Start Mitm Proxy\r\n\r\n       # Block requests to Robot Framework website\r\n       Add To Blocklist    robotframework.org\r\n\r\n       # Delay requests to Google\r\n       Add Response Delay  GoogleDelay   https://www.google.com  5  # Delay for 5 seconds\r\n\r\n       # Perform tests that involve network traffic manipulation\r\n       # ...\r\n\r\n       Stop Mitm Proxy\r\n\r\nWhy use Mitm?\r\n~~~~~~~~~~~~~\r\n\r\nMitm allows manipulation on single browser instance, by using a proxy.\r\nIt does not require you to set up stubs or mocks that might influence\r\nthe entire application at once, also resulting in stubbed/mocked\r\nbehaviour while manual testing.\r\n\r\nExamples where Mitm is useful: - When running in parallel, if you do not\r\nwant your other instances to be influenced. - Manipulate the response of\r\na request to see how the front end handles it - When stubs or mocks are\r\nnot available or their behaviour is not sufficient for your testing\r\nneeds. - When you want to have full control as tester, without\r\ndependency on a developer\r\n\r\nMitm Certificates\r\n~~~~~~~~~~~~~~~~~\r\n\r\nTo test with SSL verification, or use a browser without ignoring\r\ncertificates, you will need to set up the certificates related to mitm.\r\nFollow the guide on the `Mitm\r\nwebsite <https://docs.mitmproxy.org/stable/concepts-certificates/>`__\r\n\r\nDocumentation\r\n-------------\r\n\r\nFor detailed information on the available keywords and usage examples,\r\nplease refer to the `Keyword\r\nDocumentation <https://mobynl.github.io/robotframework-mitmlibrary/MitmLibraryKeywords.html>`__\r\n\r\nContributing\r\n------------\r\n\r\nContributions are welcome! If you encounter any issues, have suggestions\r\nfor improvements, or would like to add new features, feel free to open\r\nan issue or submit a pull request.\r\n\r\nLicense\r\n-------\r\n\r\nThis project is licensed under the MIT License.\r\n\r\nNote: This project is not officially affiliated with or endorsed by the\r\nmitmproxy project or robotframework.\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Wrapper for mitmproxy with Robot Framework",
    "version": "0.1.6",
    "project_urls": {
        "Download": "https://github.com/MobyNL/robotframework-mitmlibrary/archive/refs/tags/0.1.5.tar.gz",
        "Homepage": "https://github.com/MobyNL/robotframework-mitmlibrary",
        "Keyword documentation": "https://mobynl.github.io/robotframework-mitmlibrary/MitmLibraryKeywords.html",
        "Slack Channel": "https://robotframework.slack.com/archives/C06M2J3J8AC"
    },
    "split_keywords": [
        "robotframework",
        "automation",
        "testautomation",
        "testing",
        "mitm",
        "maninthemiddle"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cbb5039d5f37ce71fdb47b91cb4dae96a85cc2d9356f4a578e53922a0ebf0a57",
                "md5": "f434f2cf4c3e50f4d5522b55035936f2",
                "sha256": "cddcbcb997ec976642c994518cfd4eaf557213532847c90612d549c67071ae4f"
            },
            "downloads": -1,
            "filename": "robotframework-mitmlibrary-0.1.6.tar.gz",
            "has_sig": false,
            "md5_digest": "f434f2cf4c3e50f4d5522b55035936f2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 8127,
            "upload_time": "2024-02-28T18:16:43",
            "upload_time_iso_8601": "2024-02-28T18:16:43.381669Z",
            "url": "https://files.pythonhosted.org/packages/cb/b5/039d5f37ce71fdb47b91cb4dae96a85cc2d9356f4a578e53922a0ebf0a57/robotframework-mitmlibrary-0.1.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-28 18:16:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "MobyNL",
    "github_project": "robotframework-mitmlibrary",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "robotframework-mitmlibrary"
}
        
Elapsed time: 0.23292s