Flake8-AAA¶
A linter for Python tests.
Pytest and unittest styles supported.
Tests are linted against the Arrange Act Assert pattern.
TL;DR following the AAA pattern means tests look like this:
def test(): """ __docstring__ """ # ARRANGE: set up of the system under test (SUT) # ACT: perform a single action on the SUT # ASSERT: check that the SUT changed as expected
Provides a Flake8 interface to automatically lint test files as part of your Flake8 run.
Provides a command line interface for custom (non-Flake8) usage and debugging.
Integration with Flake8¶
Given that you already have Flake8 installed in the same environment, check
that Flake8-AAA was installed correctly by asking flake8
for its version
signature:
$ flake8 --version
3.7.6 (aaa: 0.5.1, mccabe: 0.6.1, pycodestyle: 2.5.0, pyflakes: 2.1.0) CPython 3.5.2 on Linux
The (aaa: 0.5.1, ...
part of that output tells you flake8
found this
plugin. Now you can run flake8
as usual against your project and Flake8-AAA
will lint your tests via its plugin:
$ flake8
Resources¶
Tested on Pythons 3.5 and 3.6.