Skip to content

Testing

Daniel L. Young, Ph.D edited this page May 27, 2020 · 6 revisions

Software Quality Assurance (SQA) requirements

Background

The EPA Quality Program provides requirements for conducting quality management activities for all environmental data collection and environmental technology programs performed by or for the Agency. The primary goal of the program is to ensure the Agency’s environmental decisions are supported by data of known and documented quality. The program covers the implementation of the EPA Information Quality Guidelines. NRMRL LMMD has taken additional steps to further implement the Scientific Integrity Policy at EPA for software design, development, implementation, and evaluation. We believe we are promoting a culture of scientific integrity by increasing transparency, supporting robust science, and encouraging professional development in the areas of software configuration management.

Checking code quality

PyLint is used as the primary tool for style guide enforcement. The PyLint plugin for PyCharm is the implementation of PyLint used. All main module files are assessed against PEP 8 standards and modified for compliance excepting valid reasons for non-compliance, before incorporation into a release version.

Validation

In the core stewi module, the processed and stored inventory data that are used to feed the primary function data calls, like stewi.getInventory(), have been validated against national totals. The validation tests, validation set metadata, and validation results can all be found in the stewi/output/validation folder. Unless all validation results are within an acceptable margin of error, the inventory source data are not included in a release version of StEWI.