A GitHub Action that automatically tests Jupyter notebooks from top to bottom using nbmake and pytest.
nbmake-action is a GitHub Action that automatically tests Jupyter notebooks by running them from top to bottom. It integrates with pytest via the nbmake package to catch execution errors and ensure notebook reliability in CI/CD pipelines. The tool helps maintain the quality of scientific and technical documentation by automating notebook validation.
Scientists and developers who write documentation or code in Jupyter notebooks and want to automatically test them after every commit using GitHub Actions.
Developers choose nbmake-action for its simplicity and seamless integration with GitHub workflows, providing an easy way to automate notebook testing without complex setup. It offers a straightforward alternative to manually configuring nbmake directly, though advanced users may prefer the flexibility of the underlying package.
GitHub Action for testing notebooks
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Offers a simple YAML configuration for quickly adding notebook testing to GitHub workflows, as demonstrated in the Quick Start example with minimal setup steps.
Executes notebooks sequentially from top to bottom to catch runtime errors, ensuring scientific documentation remains reliable after every commit.
Allows specifying directories and glob patterns to test specific notebooks, using parameters like 'path' and 'notebooks' for precise control.
Integrates with the nbmake package via pytest, enabling compatibility with existing testing setups and tools for consistent validation.
As noted in the README, users with GitHub Actions experience might prefer nbmake directly for more control over configurations, making this action less adaptable for advanced needs.
The action is exclusive to GitHub Actions, so it cannot be used with other CI/CD systems, limiting its applicability in diverse development environments.
Being a wrapper around nbmake, updates or new features from the underlying package might not be immediately available, causing delays in bug fixes or enhancements.