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

Feature request: some visibility into passing tests call sequences #534

Closed
moodysalem opened this issue Oct 26, 2020 · 4 comments
Closed

Comments

@moodysalem
Copy link

In writing echidna tests, it's hard to know whether your properties are passing because the code is good, or if you are not getting coverage of the bad test cases, e.g. need to increase test gas limit

It would be great to be able to pass a parameter, e.g. --samples 100 and get 100 random examples of calls printed along with the test results for successful cases to have some visibility into the coverage that echidna is getting

@ggrieco-tob
Copy link
Member

We are already working in coverage support and it works!. Check PR #516. To enable printing of covered code, you should use format: text and coverage: true in your .yaml file. The only issue is that we are blocked by this issue crytic/crytic-compile#112. The coverage won't print correctly if your source code uses more than one file (but you can flatten the contracts using slither --flatten).

@moodysalem
Copy link
Author

This is great! Even with code coverage though, the inputs and the call order matters. Does this feature only print line level coverage? Or also show some information about the inputs?

@ggrieco-tob
Copy link
Member

So far this code only prints covered lines. You could, in teory, take a look to the corpusDir directory, but there is no easy way to check which input correspond to each line. We could easily print if the information per line, at least we want to signal the user if the line is covered in a revert or not but perhaps we could add more. Please let us know what you need.

@ggrieco-tob
Copy link
Member

ggrieco-tob commented Mar 22, 2022

Printing coverage already works fine. I will close this, open another issue if you need some more specific feature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants