Uso del depurador de línea de comandos de Truffle

Estoy escribiendo un contrato en solidez, en el que falla un caso de prueba. Quiero recorrer paso a paso el código para encontrar lo que va mal. Estoy usando trufa para el desarrollo. Esto es lo que hago después de hacer cambios en el contrato.

truffle develop
compile
test ./test/NameOfMyTestCaseFile.sol

Esto devuelve un error en un caso de prueba particular.

El manual en DEPURACIÓN DE SUS CONTRATOS , dice:

truffle debug <transaction hash>

No veo ningún resultado de hash de transacción en mi consola. ¿Cómo uso el depurador para recorrer el código?

Respuestas (1)

Puede usar Ganache y Remix para obtener hashes de transacciones para transacciones específicas. Para usar Ganache, vaya a su archivo truffle.js e incluya una referencia a él dentro de module.exports:

module.exports = {
// See <http://truffleframework.com/docs/advanced/configuration>
// to customize your Truffle configuration!
    networks: {
        development: {
            host: "127.0.0.1",
            port: 7545,
            network_id: "*"
        }
    }
};

En Remix, ejecútelo con una opción de entorno de proveedor Web3 y, si usa Ganache, el punto final es http://127.0.0.1:7545 . Luego puede usar truffle o Remix para depurar su código. ¡Espero que esto ayude!

Gracias por tu respuesta. ¿Esto requiere estar en línea? No estoy escribiendo ningún código de producción. ¡Esta es una tarea que estoy tratando de depurar! ¿No puedo hacer esto sin conexión?
Soy nuevo en este ambiente. ¿Podría compartir más detalles?
No, esto le permite ejecutar una cadena de bloques completamente privada con cuentas ficticias para que pueda probar su funcionalidad. Puede descargar ganache aquí: truffleframework.com/ganache . Remix es un IDE en línea para contratos inteligentes de solidez. Cuando modifica su archivo truffle.js, esencialmente le está diciendo que apunte hacia las cuentas configuradas por Ganache. Luego, al configurar Remix para señalarlo también, todo se sincroniza para trabajar con las cuentas ficticias. Remix es un IDE y le permite compilar, ejecutar y probar sus contratos inteligentes sin tener que configurar un front-end.
Si está probando la funcionalidad de los contratos inteligentes y escribiendo casos de prueba para eso, puede usar remix ide con la VM de JavaScript y luego escribir sus archivos de prueba y usar truffle para confirmar que pasan. Puede encontrar más información sobre Remix en su documentación: remix.readthedocs.io/en/latest/run_tab.html#run-setup