Todo

Testing options after the app is built

Note - We may include some or all of the following tests depending on the app:

Unit Tests

What - Unit tests are a narrow scope, usually testing a single method/function. And input data can be simulated.
When - Should occur right after app is built.
How - Options:

  1. We can have a conventional folder like 'unit_tests' that the build_scripts/ can just run bash/python scripts there. 
  2. Possible to add unit testing information to the test-ioc/configure/CONFIG.yaml at main · ad-build-test/test-ioc (github.com), with a field specifying which test files to run

Integration Tests

What - Integration tests have a wide range scope. It can test multiple classes, or even multiple systems depending on who implements the tests. 
When - Depending on the context, if push to main or pull-request is merged to main, then ideally all tests are ran, but if a 'bs run build' was requested, then maybe just the unit tests are fine.
How - Options:

  1. We can have a conventional folder like 'integration_tests' that the build_scripts/ can just run bash/python scripts there. 
  2. Since this may involve external systems, we may want user to specify it on the CONFIG.yaml. like external databases, apis, other IOCs, etc.

Smoke Tests / Sanity check 

What - Smoke test is high-level testing making sure app works end-to-end.

When - Usually after all other tests are finished during a production environment. If this is done manually, like for a GUI, then those apps won't need to worry about this for the build system.


  • No labels