Fuzz testing for SurrealDB: using randomised input to find bugs before users do
Blog post from SurrealDB
Fuzz testing was implemented in the lead-up to SurrealDB 3.0 to enhance stability and performance by discovering bugs through randomized input before users encounter them. This method, which complements unit and integration tests, aims to identify edge cases by feeding semi-random data into the code to observe failure modes. While fuzz testing has been around, its practicality increased after Google's OSS-Fuzz launch in 2016, a response to the Heartbleed vulnerability in OpenSSL. SurrealDB incorporated fuzz testing due to significant structural changes, utilizing tools in Rust to run fuzz tests locally and in CI. This approach highlighted defects in SurrealQL formatting, parser edge cases, and executor issues, proving effective at catching issues that standard tests might miss. Although it hasn't replaced existing language tests or integration suites, fuzz testing has contributed to identifying and fixing a range of parser and formatting defects before the 3.0 release, with continuous coverage provided by OSS-Fuzz post-merge.
| Trend | Post Mentions | Total Month Mentions | Posts | Companies | MoM |
|---|---|---|---|---|---|
| AI Agents | 1 | 6,005 | 1,359 | 264 | +22% |
Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.