On Mon, Jan 11, 2016 at 9:28 PM, Damian Gryski wrote:

I had mentioned a while ago on Twitter how interesting it would be to use
a bunch of the major bigint libraries to cross-check eachother. A
combination of fuzzing (to generate inputs with good coverage) and
verifying the results match between Go, gmp, OpenSSL, etc...

A classic use of 'testing/quick' !

In QuickCheck-like libraries a common method is to write a simple,
slow-but-correct variant of an advanced algorithm and then use samples from
a "good" random input distribution to cover a more advanced algorithm and
check for similarity in output. But if you have several systems, you can
match them against each other as well.

A more ambitious project merges the idea of profile-guided-fuzzing as in
Vyukov's go-fuzz of AFL fame by generating inputs which makes the coverage
in the profile better. An even more ambitious solution attaches a SMT
solver, such as Z3, to the fuzzer in order to quickly define input classes
and kill redundant cases from the test space. This is known as 'concolic
testing' (concolic being a Jabberwockyification of concrete and symbolic).

There is a C tool called CUTE for concolic testing of C, IIRC.


You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Search Discussions

Discussion Posts


Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 5 of 5 | next ›
Discussion Overview
groupgolang-nuts @
postedJan 11, '16 at 5:03p
activeJan 12, '16 at 1:23p



site design / logo © 2021 Grokbase