3 ms·
I think humans are probably still better (a) *when they write tests and (b) when they know how to. Neither is true for a lot of programmers but might happen if
by nickpsecurity 2y ago
I think humans are probably still better (a) *when they write tests and (b) when they know how to. Neither is true for a lot of programmers but might happen if automated cheaply.
I also think traditional tools are better for this. The test, generation methods include path-based, combinatorial, concolic, and adaptive fuzzing. Fire and forget tools that do each one, suppressing duplicates, would be helpful.
What would be easier to train developers on are contracts (or annotations). Then, add test generation either from those or aided by static analysis that leverages them. Then, software that analyzes the code, annotates what it can, and then asks the user to fill in the holes. The LLM’s could turn their answers into formal contracts or specs.
That’s how I see it happening. Maybe add patch generation into that, too. At least two tools that predate LLM’s already find errors and suggest fixes.