{"id":21478474,"url":"https://github.com/ripe-tech/ripe-rainbow","last_synced_at":"2025-07-15T11:31:03.836Z","repository":{"id":35510747,"uuid":"190403379","full_name":"ripe-tech/ripe-rainbow","owner":"ripe-tech","description":"Automation test framework for the RIPE domain","archived":false,"fork":false,"pushed_at":"2023-05-24T12:09:03.000Z","size":709,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":12,"default_branch":"master","last_synced_at":"2023-05-24T13:28:11.611Z","etag":null,"topics":["automated","functional","selenium","testing"],"latest_commit_sha":null,"homepage":"https://tech.platforme.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ripe-tech.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-06-05T13:48:04.000Z","updated_at":"2023-05-24T13:28:11.612Z","dependencies_parsed_at":"2022-09-09T14:50:17.439Z","dependency_job_id":null,"html_url":"https://github.com/ripe-tech/ripe-rainbow","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ripe-tech%2Fripe-rainbow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ripe-tech%2Fripe-rainbow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ripe-tech%2Fripe-rainbow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ripe-tech%2Fripe-rainbow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ripe-tech","download_url":"https://codeload.github.com/ripe-tech/ripe-rainbow/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226033723,"owners_count":17563227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automated","functional","selenium","testing"],"created_at":"2024-11-23T11:18:25.836Z","updated_at":"2024-11-23T11:18:27.339Z","avatar_url":"https://github.com/ripe-tech.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1\u003e\u003ca href=\"https://tech.platforme.com\"\u003e\u003cimg src=\"res/logo.svg\" alt=\"RIPE Rainbow\" height=\"60\" style=\"height: 60px;\"\u003e\u003c/a\u003e\u003c/h1\u003e\n\n**Bringing happiness to the RIPE world through testing 🌈**\n\nRIPE Rainbow is a simple automation test framework for the RIPE world.\n\n## Installation\n\n```bash\npip install ripe-rainbow\n```\n\n## Execution\n\n```bash\nrainbow\n```\n\n## Configuration\n\n| Name                     | Type    | Default     | Description                                                                                                                                          |\n| ------------------------ | ------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |\n| **LEVEL**                | `str`   | `INFO`      | Controls the verbosity level of the attached logger.                                                                                                 |\n| **SILENT**               | `bool`  | `False`     | If the test execution should run under silent mode (no stdout from logs).                                                                            |\n| **FILTER**               | `str`   | `None`      | The filter regex to be used by some of the loaders.                                                                                                  |\n| **DRIVER**               | `str`   | `selenium`  | The driver to be used for the interactive mode.                                                                                                      |\n| **TIMEOUT**              | `int`   | `15`        | The timeout in seconds to be used by default for interactions under the interactive testing mode.                                                    |\n| **REPEAT**               | `int`   | `1`         | The number of times to repeat the execution of the tests.                                                                                            |\n| **TESTS_PATH**           | `str`   | `.`         | The base path to be used in the loading of the test cases.                                                                                           |\n| **PROVISION**            | `bool`  | `True`      | If the provision operations should be performed.                                                                                                     |\n| **STACKTRACES**          | `bool`  | `False`     | If \"stacktrace\" log should be stored on failure of tests.                                                                                            |\n| **STACKTRACES_PATH**     | `bool`  | `.`         | The base path to be used to save the stacktraces log.                                                                                                |\n| **SCREENSHOTS**          | `bool`  | `False`     | If screenshots should be save on failure of tests.                                                                                                   |\n| **SCREENSHOTS_PATH**     | `bool`  | `.`         | The base path to be used to save the screenshots.                                                                                                    |\n| **STORE_LOGS**           | `bool`  | `False`     | If the log files from the multiple logs should be store in case of test failure.                                                                     |\n| **LOGS_PATH**            | `bool`  | `.`         | The base path to be used to save the log files on failure.                                                                                           |\n| **SEL_SECURE**           | `bool`  | `False`     | If the [Selenium](https://www.seleniumhq.org) engine should be executed under a secure approach (should be slower).                                  |\n| **SEL_BROWSER**          | `str`   | `chrome`    | The browser engine that is going to be used by Selenium (eg: `chrome`, `firefox`).                                                                   |\n| **SEL_BROWSER_CACHE**    | `bool`  | `True`      | If the [Selenium](https://www.seleniumhq.org) driver should be with browser cache enabled.                                                           |\n| **SEL_FIX_PATH**         | `bool`  | `True`      | If the [Selenium](https://www.seleniumhq.org) driver should try to fix the environment path.                                                         |\n| **SEL_MAXIMIZED**        | `bool`  | `False`     | If the [Selenium](https://www.seleniumhq.org) driver should be started in \"maximized\" (window) mode.                                                 |\n| **SEL_HEADLESS**         | `bool`  | `False`     | If the [Selenium](https://www.seleniumhq.org) driver should be started in \"headless\" (window) mode.                                                  |\n| **SEL_DEVICE**           | `str`   | `None`      | If a specific device should be emulated by changing some internal settings (eg: user-agent in usage), possible values include: `iphone10`, `nexus5`  |\n| **SEL_WINDOW_SIZE**      | `str`   | `1920x1080` | Resolution (in pixels) that the [Selenium](https://www.seleniumhq.org) driver will use for the window.                                               |\n| **SEL_PIXEL_RATIO**      | `int`   | `1`         | The pixel ratio that the [Selenium](https://www.seleniumhq.org) driver will use, should be used mostly for device testing.                           |\n| **SEL_MOBILE_EMULATION** | `bool`  | `False`     | If the [Selenium](https://www.seleniumhq.org) driver should use the mobile emulation mode (available for Chrome).                                    |\n| **SEL_SERVICE_ARGS**     | `list`  | `[]`        | List of command line args to be passed to the driver service that interacts with the browser.                                                        |\n| **SEL_POLL_FREQUENCY**   | `float` | `None`      | The frequency (in seconds) to run the [busy waiting](https://en.wikipedia.org/wiki/Busy_waiting) polling operation on the Selenium `wait` operation. |\n| **RIPE_ID_USERNAME**     | `str`   | `None`      | The username to be used for the RIPE ID authentication.                                                                                              |\n| **RIPE_ID_PASSWORD**     | `str`   | `None`      | The password to be used for the RIPE ID authentication.                                                                                              |\n\n| Name                     | Type  | Default                 | Description                                                                                                               |\n| ------------------------ | ----- | ----------------------- | ------------------------------------------------------------------------------------------------------------------------- |\n| **RIPE_SUFFIX**          | `str` | `None`                  | If defined the RIPE product URLs are suffixed with this value (eg: `sbx` implies `https://ripe-pulse-sbx.platforme.com`). |\n| **RIPE_CORE_URL**        | `str` | `http://localhost:8080` | The base URL to the RIPE Core instance to be used for tests.                                                              |\n| **CORE_URL**             | `str` | `http://localhost:8080` | Same as `RIPE_CORE_URL`.                                                                                                  |\n| **RIPE_CORE_USERNAME**   | `str` | `root`                  | The username of an admin user to be used to access RIPE Core, it is also used in the provision operation.                 |\n| **CORE_USERNAME**        | `str` | `root`                  | Same as `RIPE_CORE_USERNAME`.                                                                                             |\n| **RIPE_CORE_PASSWORD**   | `str` | `root`                  | The password of an admin user to be used to access RIPE Core, it is also used in the provision operation.                 |\n| **CORE_PASSWORD**        | `str` | `root`                  | Same as `RIPE_CORE_PASSWORD`.                                                                                             |\n| **RIPE_RETAIL_URL**      | `str` | `http://localhost:8080` | The base URL to the RIPE Retail instance to be used for tests.                                                            |\n| **RETAIL_URL**           | `str` | `http://localhost:8080` | Same as `RIPE_RETAIL_URL`.                                                                                                |\n| **RIPE_RETAIL_USERNAME** | `str` | `root`                  | The username of an admin user to be used to access RIPE Retail, it is also used in the provision operation.               |\n| **RETAIL_USERNAME**      | `str` | `root`                  | Same as `RIPE_RETAIL_USERNAME`.                                                                                           |\n| **RIPE_RETAIL_PASSWORD** | `str` | `root`                  | The password of an admin user to be used to access RIPE Retail, it is also used in the provision operation.               |\n| **RETAIL_PASSWORD**      | `str` | `root`                  | Same as `RIPE_RETAIL_PASSWORD`.                                                                                           |\n| **RETAIL_URL**           | `str` | `http://localhost:8080` | Same as `RIPE_RETAIL_URL`.                                                                                                |\n| **RIPE_PULSE_URL**       | `str` | `http://localhost:3000` | The base URL to the RIPE Pulse instance to be used for tests.                                                             |\n| **PULSE_URL**            | `str` | `http://localhost:3000` | Same as `RIPE_PULSE_URL`.                                                                                                 |\n| **RIPE_COPPER_URL**      | `str` | `http://localhost:3000` | The base URL to the RIPE Copper instance to be used for tests.                                                            |\n| **COPPER_URL**           | `str` | `http://localhost:3000` | Same as `RIPE_COPPER_URL`.                                                                                                |\n| **RIPE_UTIL_VUE_URL**    | `str` | `http://localhost:3000` | The base URL to the RIPE Util Vue instance to be used for tests.                                                          |\n| **UTIL_VUE_URL**         | `str` | `http://localhost:3000` | Same as `RIPE_UTIL_VUE_URL`.                                                                                              |\n| **RIPE_WHITE_URL**       | `str` | `http://localhost:3000` | The base URL to the RIPE White instance to be used for tests.                                                             |\n| **WHITE_URL**            | `str` | `http://localhost:3000` | Same as `RIPE_WHITE_URL`.                                                                                                 |\n\n## License\n\nRIPE Rainbow is currently licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/).\n\n## Build Automation\n\n[![Build Status](https://app.travis-ci.com/ripe-tech/ripe-rainbow.svg?branch=master)](https://travis-ci.com/github/ripe-tech/ripe-rainbow)\n[![Build Status GitHub](https://github.com/ripe-tech/ripe-rainbow/workflows/Main%20Workflow/badge.svg)](https://github.com/ripe-tech/ripe-rainbow/actions)\n[![Coverage Status](https://coveralls.io/repos/ripe-tech/ripe-rainbow/badge.svg?branch=master)](https://coveralls.io/r/ripe-tech/ripe-rainbow?branch=master)\n[![PyPi Status](https://img.shields.io/pypi/v/ripe-rainbow.svg)](https://pypi.python.org/pypi/ripe-rainbow)\n[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://www.apache.org/licenses/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fripe-tech%2Fripe-rainbow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fripe-tech%2Fripe-rainbow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fripe-tech%2Fripe-rainbow/lists"}