Exhaustive Test Suite - oils-for-unix/oils GitHub Wiki

Exhaustive test suites (i.e. nearly 100% test coverage) make a lot of hard problems easy.

  • type checking: like I'm doing with ASDL. You can have a very strict type system, but have it be dynamically checked. It's trivial to implement and helps program correctness a lot.

  • buffer overflow detection and security testing: ASAN

  • performance testing. Microbenchmarks, etc.

  • better code structure due to fearless refactoring