Flexible test automation with Python
-
Documentation: https://nox.readthedocs.io
-
Source Code: https://github.com/wntrblm/nox
nox is a command-line tool that automates testing in multiple Python environments, similar to tox. Unlike tox, Nox uses a standard Python file for configuration:
import nox
@nox.session
def tests(session: nox.Session) -> None:
session.install("pytest")
session.run("pytest")
@nox.session
def lint(session: nox.Session) -> None:
session.install("flake8")
session.run("flake8", "--import-order-style", "google")Nox is designed to be installed globally (not in a project virtual environment), the recommended way of doing this is via pipx, a tool designed to install python CLI programs whilst keeping them separate from your global or system python.
To install Nox with pipx:
pipx install noxYou can also use pip in your global python:
python3 -m pip install noxYou may want to user the user-site to avoid messing with your Global python install:
python3 -m pip install --user noxnox -l/--listnoxnox -s/--session testCheckout the docs for more! 🎉
Nox is an open source project and welcomes contributions of all kinds, checkout the contributing guide for help on how to help us out!
All contributors must follow the code of conduct and be nice to one another! 😃