Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add fuzz testing #115

Closed
tmatth opened this issue Mar 7, 2018 · 2 comments · Fixed by #1632
Closed

Add fuzz testing #115

tmatth opened this issue Mar 7, 2018 · 2 comments · Fixed by #1632
Labels
enhancement new to multimedia Good for someone that has little multimedia knowledge tests

Comments

@tmatth
Copy link
Member

tmatth commented Mar 7, 2018

Fuzzing raw input is generally easier, but fuzzing the decisions would be more useful (but probably more involved/intrusive).

Some potentially helpful links:

https://github.com/pingcap/fail-rs
https://rust-fuzz.github.io/book/introduction.html
https://github.com/BurntSushi/quickcheck
https://github.com/altsysrq/proptest

and might as well add this link from @lu-zero for posterity:
https://doc.rust-lang.org/std/num/struct.Wrapping.html

@tmatth tmatth changed the title Fuzz testing Add fuzz testing Mar 7, 2018
@lu-zero
Copy link
Collaborator

lu-zero commented Mar 7, 2018

fail-rs let us leverage failpoints to force decisions that would be hard to trigger by simple input fuzzing.

proptest and quickcheck can simulate fuzzing effectively, while cargo-fuzz is sort of easy to access the functionalities offered by LLVM libFuzzer.

@lu-zero
Copy link
Collaborator

lu-zero commented Aug 1, 2018

Currently the decode/integration tests use random inputs, we can possibly expand them using cargo-fuzz.

@lu-zero lu-zero added the new to multimedia Good for someone that has little multimedia knowledge label Aug 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement new to multimedia Good for someone that has little multimedia knowledge tests
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants