CI/CD for Research Software with GitLab CI
This lesson covers the implementation of CI/CD pipelines in research software projects, focusing on automating tests, builds, and deployments using GitLab CI.
Prerequisites
Unit Testing and TDD in PythonTopic
Testing, code review, continuous integration, and automation that keep software correct and maintainable.
Related standard: RSE Competencies (F1000Research)
This lesson covers the implementation of CI/CD pipelines in research software projects, focusing on automating tests, builds, and deployments using GitLab CI.
Prerequisites
Unit Testing and TDD in PythonThis lesson covers how to set up continuous integration and continuous delivery pipelines for automated testing and deployment in software projects.
Prerequisites
Testing and Test-Driven DevelopmentThis lesson teaches best practices for conducting and participating in code reviews, emphasizing clear communication and collaborative problem solving.
This lesson covers best practices for building Python packages, focusing on scientific software. It explains how to structure packages, write tests, manage dependencies, and distribute packages via PyPI.
This course provides an overview of key skills for Research Software Engineers, including software design, version control with Git, testing with pytest, and project management.
This lesson covers how to write tests for your code, understand test-driven development, and use testing frameworks like pytest in Python.
This lesson covers how to write and run unit tests in Python, including an introduction to test-driven development (TDD) and its benefits.