extensiveautomation-plugin-web


Nameextensiveautomation-plugin-web JSON
Version 1.4.0 PyPI version JSON
download
home_pagehttps://www.extensiveautomation.org/
SummaryWEB plugin for extensiveautomation server
upload_time2023-08-18 08:49:38
maintainer
docs_urlNone
authorDenis MACHARD
requires_python
license
keywords extensiveautomation automation testautomation testing plugin
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # WEB plugin for ExtensiveAutomation server

This plugin enable to interact with remote web server through the HTTP protocol.
This plugin is based on the `curl` command.

## Table of contents
* [Installing from pypi](#installing-from-pypi)
* [Installing from source](#installing-from-source)
* [About actions](#about-actions)
    * [http/curl.yml](#httpcurlyml)
* [About workflows](#about-workflows)
    * [http/httpbin.yml](#httphttpbinyml)
    * [http/jsonplaceholder.yml](#httpjsonplaceholderyml)
    
## Installing from pypi

1. Run the following command

        pip install extensiveautomation_plugin_web

2. Execute the following command to take in account this new plugin

        ./extensiveautomation --reload
        
3. Samples are deployed on data storage
   
## Installing from source

1. Clone the following repository 

        git clone https://github.com/ExtensiveAutomation/extensiveautomation-plugin-web.git
        cd extensiveautomation-plugin-web/src/ea/
        
2. Copy the folder `sutadapters` in the source code server and overwrite-it

        cp -rf sutadapters/ /<install_path_project>/src/ea/
        
3. Copy the folder `var` in the source code server and overwrite-it

        cp -rf var/ /<install_path_project>/src/ea/
        
4. Finally execute the following command to install depandencies

        cd /<install_path_project>/src/
        python3 extensiveautomation.py --install-adapter WEB
        python3 extensiveautomation.py --reload

## About actions

### http/curl.yml

Send http requests and analysing responses.

Parameter(s):
- agent (text): agent name

- curl-body (text): http request body

- curl-headers (text): additional headers for the request

- curl-hosts (text): remote address

- curl-proxy (text): proxy url 

- curl-method (text): http method

- curl-options (text): additional options for curl

- response-body-json (dict): expected json in http response with jsonpath expression

- response-body-text (text): expected string in http response

- response-body-xml (text): expected xml in http response with xpath expression

- response-body-xmlns (text): namespaces 

- response-code (integer): reponse code expected

- response-headers (text): list of expected headers in response

- response-phrase (text): response phrase expected

- response-version (text): http version expected in response

## About workflows

### http/httpbin.yml

This worflow show how to use the `curl` action and 
how to extract value from json response.

1. Reuse curl action

```yaml
- description: Get my origin IP
  file: Common:actions/http/curl.yml
```

2. Configure parameters

```yaml
- name: curl-hosts
 value: https://httpbin.org/ip
- name: response-body-json
 value: |
    origin -> [!CAPTURE:externalip:]
```

### http/jsonplaceholder.yml

This worflow show how to use the `curl` action and POST json data.

```yaml
- name: curl-hosts
 value: https://jsonplaceholder.typicode.com/posts
- name: curl-method
 value: POST
- name: curl-headers
 value: |
    Content-Type: application/json
- name: curl-body
 value:
  title: un exemple en français
  body: bonjour
  userId: 1
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://www.extensiveautomation.org/",
    "name": "extensiveautomation-plugin-web",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "extensiveautomation automation testautomation testing plugin",
    "author": "Denis MACHARD",
    "author_email": "d.machard@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/c1/fc/a61484059f4410b8ab501a82142b4ee5373daae982b5ca36e1a82a1255f1/extensiveautomation_plugin_web-1.4.0.tar.gz",
    "platform": "any",
    "description": "# WEB plugin for ExtensiveAutomation server\n\nThis plugin enable to interact with remote web server through the HTTP protocol.\nThis plugin is based on the `curl` command.\n\n## Table of contents\n* [Installing from pypi](#installing-from-pypi)\n* [Installing from source](#installing-from-source)\n* [About actions](#about-actions)\n    * [http/curl.yml](#httpcurlyml)\n* [About workflows](#about-workflows)\n    * [http/httpbin.yml](#httphttpbinyml)\n    * [http/jsonplaceholder.yml](#httpjsonplaceholderyml)\n    \n## Installing from pypi\n\n1. Run the following command\n\n        pip install extensiveautomation_plugin_web\n\n2. Execute the following command to take in account this new plugin\n\n        ./extensiveautomation --reload\n        \n3. Samples are deployed on data storage\n   \n## Installing from source\n\n1. Clone the following repository \n\n        git clone https://github.com/ExtensiveAutomation/extensiveautomation-plugin-web.git\n        cd extensiveautomation-plugin-web/src/ea/\n        \n2. Copy the folder `sutadapters` in the source code server and overwrite-it\n\n        cp -rf sutadapters/ /<install_path_project>/src/ea/\n        \n3. Copy the folder `var` in the source code server and overwrite-it\n\n        cp -rf var/ /<install_path_project>/src/ea/\n        \n4. Finally execute the following command to install depandencies\n\n        cd /<install_path_project>/src/\n        python3 extensiveautomation.py --install-adapter WEB\n        python3 extensiveautomation.py --reload\n\n## About actions\n\n### http/curl.yml\n\nSend http requests and analysing responses.\n\nParameter(s):\n- agent (text): agent name\n\n- curl-body (text): http request body\n\n- curl-headers (text): additional headers for the request\n\n- curl-hosts (text): remote address\n\n- curl-proxy (text): proxy url \n\n- curl-method (text): http method\n\n- curl-options (text): additional options for curl\n\n- response-body-json (dict): expected json in http response with jsonpath expression\n\n- response-body-text (text): expected string in http response\n\n- response-body-xml (text): expected xml in http response with xpath expression\n\n- response-body-xmlns (text): namespaces \n\n- response-code (integer): reponse code expected\n\n- response-headers (text): list of expected headers in response\n\n- response-phrase (text): response phrase expected\n\n- response-version (text): http version expected in response\n\n## About workflows\n\n### http/httpbin.yml\n\nThis worflow show how to use the `curl` action and \nhow to extract value from json response.\n\n1. Reuse curl action\n\n```yaml\n- description: Get my origin IP\n  file: Common:actions/http/curl.yml\n```\n\n2. Configure parameters\n\n```yaml\n- name: curl-hosts\n value: https://httpbin.org/ip\n- name: response-body-json\n value: |\n    origin -> [!CAPTURE:externalip:]\n```\n\n### http/jsonplaceholder.yml\n\nThis worflow show how to use the `curl` action and POST json data.\n\n```yaml\n- name: curl-hosts\n value: https://jsonplaceholder.typicode.com/posts\n- name: curl-method\n value: POST\n- name: curl-headers\n value: |\n    Content-Type: application/json\n- name: curl-body\n value:\n  title: un exemple en fran\u00e7ais\n  body: bonjour\n  userId: 1\n```\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "WEB plugin for extensiveautomation server",
    "version": "1.4.0",
    "project_urls": {
        "Homepage": "https://www.extensiveautomation.org/"
    },
    "split_keywords": [
        "extensiveautomation",
        "automation",
        "testautomation",
        "testing",
        "plugin"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c1fca61484059f4410b8ab501a82142b4ee5373daae982b5ca36e1a82a1255f1",
                "md5": "75de67394218ad20e8e59cce4aed5c1e",
                "sha256": "f36fa8cd8c732bfb032f6306bfa0e2b4b3defe5ec47bff5d60961c49665cbf62"
            },
            "downloads": -1,
            "filename": "extensiveautomation_plugin_web-1.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "75de67394218ad20e8e59cce4aed5c1e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 15234,
            "upload_time": "2023-08-18T08:49:38",
            "upload_time_iso_8601": "2023-08-18T08:49:38.897836Z",
            "url": "https://files.pythonhosted.org/packages/c1/fc/a61484059f4410b8ab501a82142b4ee5373daae982b5ca36e1a82a1255f1/extensiveautomation_plugin_web-1.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-18 08:49:38",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "extensiveautomation-plugin-web"
}
        
Elapsed time: 0.14261s