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.7 (aaa: 0.6.0, mccabe: 0.6.1, pycodestyle: 2.5.0, pyflakes: 2.1.1) CPython 3.6.7 on Linux
The aaa: 0.6.0
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, 3.6 and 3.7.