ODS-CI is a framework to test Red Hat Open Data Science and its upstream project, Open Data Hub.
Linux distribution that supports Selenium automation of a chromium web browser using ChromeDriver
- chromedriver binaries can be downloaded from https://chromedriver.chromium.org/downloads. The chromedriver version must match the installed version of chromium/google-chrome
Poetry installed and added to your $PATH
-
Create a variables file for all of the global test values
# Create the initial test variables from the example template variables file cp test-variables.yml.example test-variables.yml
-
Edit the test variables file to include information required for this test run. You will need to add info required for test execution:
- URLs based on the test case you are executing.
- OpenShift Console.
- Open Data Hub Dashboard.
- JupyterHub.
- OpenShift Console.
- Test user credentials.
- Browser webdriver to use for testing.
- URLs based on the test case you are executing.
-
Run this script that will create the virtual environment, install the required packages and kickoff the Robot test suite.
# Running all the tests
sh ods_ci/run_robot_test.sh
# Running Smoke test suite via tag
sh ods_ci/run_robot_test.sh --include Smoke
# Running a specific test via tag
sh ods_ci/run_robot_test.sh --include ODS-XYZ
# Running tests in Open Data Hub:
# You need to set accordingly the PRODUCT, APPLICATIONS_NAMESPACE, MONITORING_NAMESPACE,
# OPERATOR_NAMESPACE and NOTEBOOKS_NAMESPACE in test-variables.yaml (or pass them as parameters
# when launching the tests) and overwrite some local variables used in the test suites
# adding --variablefile ./ods_ci/test-variables-odh-overwrite.yml
sh ods_ci/run_robot_test.sh \
--test-variable PRODUCT:ODH \
--test-variable APPLICATIONS_NAMESPACE:opendatahub \
--test-variable MONITORING_NAMESPACE:opendatahub \
--test-variable OPERATOR_NAMESPACE:openshift-operators \
--test-variable NOTEBOOKS_NAMESPACE:opendatahub \
--extra-robot-args '--variablefile ./ods_ci/test-variables-odh-overwrite.yml' \
--include OpenDataHub
- This run_robot_test.sh is a wrapper for creating the python virtual environment and running the Robot Framework CLI.
- The wrapper script has several arguments and you can find details in the dedicated document file. See run_args.md
- As alternative, you can run any of the test cases by creating the python virual environment, install the packages in poetry.lock and running the
robot
command directly
See CONTRIBUTING.md
See build README on how you can build and use a container to run ODS-CI automation in OpenShift.
This project is open sourced under MIT License.