Skip to content
This repository has been archived by the owner on Feb 26, 2024. It is now read-only.

Log EVM Stack and Opcodes directly to a file #504

Closed
Stefan-Driessen opened this issue Oct 4, 2019 · 1 comment
Closed

Log EVM Stack and Opcodes directly to a file #504

Stefan-Driessen opened this issue Oct 4, 2019 · 1 comment

Comments

@Stefan-Driessen
Copy link

For branch coverage analysis it would be really useful to easily access the what the stack looks like at the moment a predicate is evaluated (e.g. the values that are on the stack when an EQ opcode is consumed). Right now, I access this information by using web3's debug.getTransactionTrace, but as I understand, this involves rerunning the same transaction again which is inefficient.

Desired Behavior

An option to log the EVM's behaviour is added to Ganache's initialisation settings.

Context

I am writing a genetic algorithm for automated test case generation tool for Solidity smart contracts, this involves evaluating how close tests are to covering specific branches. The biggest bottleneck for my algorithm is this evaluation step so I would like to directly extract the values from a log of the EVM.

Environment

Ganache CLI v6.4.3 (ganache-core: 2.5.5) in combination with web3 3.5.2

@davidmurdoch davidmurdoch transferred this issue from trufflesuite/ganache-ui Nov 7, 2019
@haltman-at
Copy link
Contributor

This could also be solved by #464. We're going to close this for now since #464 is planned, and the problem can be solved that way.

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

No branches or pull requests

3 participants