This project allows to run several test cases on the Efabless Repository project. Those tests cover several features:
In order to execute the integration test, you need to clone this repository:
git clone git@vault.efabless.com:web-app/integration-tests.git
Create a virtual environment, you can use pycharm.
Then install the project requirements using this command:
pip install -r requirements.txt
In order to run test cases below users should be configured in the environment
Corporate user login details should added env_config.yaml file
corporate: username, password, id, public ssh key
mailsurp: api_key, inbox_id, username, password, id, public ssh key
test_user: username, password, id (user ssh key should not be configured)
To add your own auth credentials, add "private_element.yaml" to the resources/element folder (this is in .gitignore), and also add "--variable AUTH:private" to your command when you run it.
In order to run the full test suite, execute this command:
robot --include functional -L TRACE --variable ENV:local -d result testcases
In order to run test cases for particular module, execute this command:
robot --include functional -L TRACE --variable ENV:local -d result testcases\module_name
In order to run a single test case within a particular module, execute this command (you need the period at the end):
robot -L TRACE --listener RobotStackTracer --variable ENV:local --variable AUTH:corporate -d result -t "Collaborators Create New Issue" .
When executing command above, if getting this error:
Importing library 'SeleniumLibrary' failed: ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with LibreSSL 2.8.3.
...try running this command (source https://stackoverflow.com/questions/76187256/importerror-urllib3-v2-0-only-supports-openssl-1-1-1-currently-the-ssl-modu )
pip install urllib3==1.26.6
When executing tests, if getting this error:
Importing library 'robot.libraries.Dialogs' failed: ModuleNotFoundError: No module named 'tkinter'
...try running this command
sudo apt-get install python3-tk
The integration tests are using Robot framework in order to exercise the Efabless Repository. In order to get familiar to the framework, we strongly suggest to read this tutorial and the framework website.
The current project is structured in different directories:
To have an initial single test, please use this command and verify that the system is working as expected: sh
robot -L TRACE --variable ENV:local --variable AUTH:linkedin -d result --test "Verify user able to search any public project by name" testcases/
EF_PWM32
Community
Efabless
16nm
Altis
Oscillator and Clocking
Free
Uncertified
Characterized