Given a beam propagation algorithm, whether it is a commercial implementation or some other in-house or research
implementation, it is not trivial to determine whether it is suitable either for a wide range of applications or even for a
specific application. In this paper, we describe a range of tests with "known" results; these can be used to exercise beam
propagation algorithms and assess their robustness and accuracy. Three different categories of such tests are discussed.
One category is tests of self-consistency. Such tests often rely on symmetry to make guarantees about some aspect of
the resulting field. While passing such tests does not guarantee correct results in detail, they can nonetheless point
towards problems with an algorithm when they fail, and build confidence when they pass. Another category of tests
compares the complex field to values that have been experimentally measured. While the experimental data is not
always known in precisely, and the experimental setup might not always be accessible, these tests can provide
reasonable quantitative comparisons that can also point towards problems with the algorithm. The final category of tests
discussed is those for which the propagated complex field can be computed independently. The test systems for this
category tend to be relatively simple, such as diffraction through apertures in free space or in the pupil of an ideal
imaging system. Despite their relative simplicity, there are a number of advantages to these tests. For example, they can
provide quantitative measures of accuracy. These tests also allow one to develop an understanding of how the execution
time (or similarly, memory usage) scales as the region-of-interest over which one desires the field is changed.