To ease development of tests that work with Astropy, the
astropy.tests.helper module provides some utility functions to make
tests that use Astropy conventions or classes easier to work with. e.g.,
functions to test for near-equality of Quantity objects.

The functionality here is not exhaustive, because much of the useful tools
are either in the standard library, py.test, or numpy.testing. This
module contains primarily functionality specific to the astropy core package
or packages that follow the Astropy package template.

Turn all DeprecationWarnings (which indicate deprecated uses of Python itself or Numpy, but not within Astropy, where we use our own deprecation warning class) into exceptions so that we find out about them early.

The TestRunner class is used to generate the
astropy.test function, the test function generates a set of command line
arguments to pytest. The arguments to pytest are defined in the
run_tests method, the arguments to
run_tests and their respective logic are defined in methods of
TestRunner decorated with the
keyword decorator. For an example of this see
TestRunnerBase. This design makes it easy for
packages to add or remove keyword arguments to their test runners, or define a
whole new set of arguments by subclassing from
TestRunnerBase.