Skip to content

Scientific feature testing

Scientific feature testing (SFT) verifies that EMOD features are functioning as expected. That is, they are requirements-based tests of model features that are quantitatively verified. They are implemented as a Python post-processing script named dtk_post_process.py.

All of the files can be found in the Regression directory of the EMOD_ GitHub repository.

Run locally

If you are running locally without access to an HPC, do one the following depending on your operating system:

Run on Windows using regression_test.py

  1. In the Regression directory, edit the regression_test.cfg file to list the directories where you want the simulations to be run and output saved.

  2. Make a file listing all of the SFTs you want to run, using one of the files in Regression\<sim>_science.json as an example.

  3. From the Regression directory in a command prompt window, run the following, adding --scons if you built the Eradication.exe using SCons:

    1
    python regression_test.py my_sfts.json --local
    
    • Enter python regression_test.py --help for a list of all arguments you can use with the testing script.

Run on Windows using run_test.cmd

  1. Generate a single config.json file from a base file and the parameter_overrides.json that contains (see software-configuration-overlay for instructions).

  2. Navigate to the directory that contains your config.json file and other test files.

    • Verify in the config.json file that the paths to the demographics and other additional input files are correct.
  3. In a command prompt window, enter the following, substituting your path to the testing script as necessary:

    1
            ../../run_test.cmd
    

Run on CentOS using run_test.sh

  1. Generate a single config.json file from a base file and the parameter_overrides.json that contains (see software-configuration-overlay for instructions).

  2. Navigate to the directory that contains your config.json file and other test files.

    • Verify in the config.json file that the paths to the demographics and other additional input files are correct.
  3. In a command prompt window, enter the following, substituting your path to the testing script as necessary:

    1
            ../../run_test.sh