RetroFed Forums
Your home away from modern life.
How SQLite Is Tested
Post Reply
AuthorMessage
ruffsl
programming.dev

ruffsl@programming.dev
Joined: 2023-06-09
Posted:   Subject: How SQLite Is Tested Quote

As of version 3.42.0 (2023-05-16), the SQLite library consists of approximately 155.8 KSLOC of C code. (KSLOC means thousands of "Source Lines Of Code" or, in other words, lines of code excluding blank lines and comments.) By comparison, the project has 590 times as much test code and test scripts - 92053.1 KSLOC.

  • Four independently developed test harnesses
  • 100% branch test coverage in an as-deployed configuration
  • Millions and millions of test cases
  • Out-of-memory tests
  • I/O error tests
  • Crash and power loss tests
  • Fuzz tests
  • Boundary value tests
  • Disabled optimization tests
  • Regression tests
  • Malformed database tests
  • Extensive use of assert() and run-time checks
  • Valgrind analysis
  • Undefined behavior checks
  • Checklists

Related discussions:

  • https://news.ycombinator.com/item?id=29460240
    • https://news.ycombinator.com/item?id=18685748
  • https://stackoverflow.com/q/2556594
1   Original
Post Reply
Back to top