Skip to content

hsorby/website-src

 
 

Repository files navigation

Selenium tests

libCellML Website Source

This repository is the source code for the libCellML website. There are two branches staging and production. The staging branch is the source of the staging.libcellml.org website. The production branch is the source of the libcellml.org website. The staging branch is for proposing new changes and all external pull requests should use this branch as the base. The production branch should only be updated through pull requests from the staging branch, or occassionally through hotfix branches.

Continuous Deployment

When a pull request is merged into either staging or production GitHub actions builds and deploys a new website.

Pull requests

All external pull requests should use staging as the base. Pull requests targetting staging are only given a light review, this is only really to check for malicious intent. Once a staging pull request has been merged care needs to be taken to test the website for breakages.

Testing

We have started adding tests using Selenium. The tests are run through Python using the Python package unittest. To run the tests create a Python virtual environment and execute the following commands:

  pip3 install selenium webdriver-manager
  python3 tests/selenium/install_driver.py
  python3 tests/selenium/run_all_tests.py

These commands assume the virtual environment is active, and that the commands are being executed from the root directory of the website source.

The tests do not cover all the functionality of the website, at this time. It is unlikely that the tests will pick up regressions in the website. Because of this, we should manually check the functionality of the website for breakages before promotion to production after the tests have run.

About

This website is developed using Vue 3 and Vite. Checkout script setup docs to learn more on Vue 3 and Vite.

Recommended IDE Setup

About

The source for the test website of libCellML

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C++ 43.0%
  • Python 38.2%
  • JavaScript 7.9%
  • CSS 4.7%
  • Vue 4.2%
  • CMake 1.2%
  • Other 0.8%