News for hackers. Stuff that matters.
Re:Go: Fuzzing Is Beta Ready by Milner08 on Friday June 04, 2021 @04:28AM (#27391730)
Reading about fuzz testing all I could think of was 'is this not property testing?'... That is strange. It sounds like both communities could learn a lot from each other unless there is something I am missing (there probably is..)
Re:Go: Fuzzing Is Beta Ready by masklinn on Friday June 04, 2021 @04:54AM (#27391838)
In my mind fuzz testing is external, backboxed, and often profile-guided, while proptesting is more structured, internal (language aware) but generally less guided or entirely unguided.

This here is closer to what I see as property testing than fuzzing, although it looks like they plan on coverage feedback (so guided generation).

Re:Go: Fuzzing Is Beta Ready by ahelwer on Friday June 04, 2021 @11:02AM (#27394275)
Property-based testing requires you to define the condition of success or failure (the "property" you're testing for) too, right? Whereas fuzzing just looks for crashes?
Re:Go: Fuzzing Is Beta Ready by masklinn on Friday June 04, 2021 @11:15AM (#27394417)
> Property-based testing requires you to define the condition of success or failure (the "property" you're testing for) too, right?

That property can be "does not crash".

And I'd say this is the structured / language-awareness part: with fuzzing you can't generally build an oracle.

And if you can it's of course trivial: just have a wrapper script check the result against the oracle, and trigger whatever the fuzzer looks for indicating "failure" whether it's a return code or a segfault or…

Re:Go: Fuzzing Is Beta Ready by Kototama on Friday June 04, 2021 @06:42AM (#27392310)
Fuzzing is more to ensure safety and property checking to ensure correctness IMHO. Both are related but not similar.
Re:Go: Fuzzing Is Beta Ready by bottled_poe on Friday June 04, 2021 @05:17AM (#27391930)
Surely the coverage of fuzz testing is a superset of property testing?
Re:Go: Fuzzing Is Beta Ready by amw-zero on Friday June 04, 2021 @06:55AM (#27392361)
Right. That’s the point - they are both conceptually the same thing, testing via automatically generated inputs.