Iroh brings dynamic code analysis to JavaScript

Open source testing tool collects runtime data to reveal how JavaScript code behaves during execution

Iroh brings dynamic code analysis to JavaScript
Thinkstock

Static analysis tools reveal potential bugs by spotting common coding mistakes. But you never really know what your code will do until you run it. An open source tool called Iroh.js, currently in beta development, allows JavaScript developers to perform dynamic code analysis to see exactly how their code behaves at execution.

Iroh enables developers to record code flow in real time. It also can intercept runtime information and manipulate program behavior on the fly. Runtime values such as parameters or variables can be captured while code is running. “You can, for example, collect type information and even manipulate the running program because of the access to all runtime data,” developer Felix Maier said. 

Available on GitHub, Iroh patches code to record what is happening without changing the original program. Developers can add listeners and then track activity. Iroh also keeps track of the call stack, for viewing code flow, but cannot record what is happening inside native calls, external functions, or unpatched functions.

Iroh has been tested with jQuery. Full ECMAScript 5 support is on the roadmap, with a subset of the more-recent ES6 specification already backed.

Copyright © 2017 IDG Communications, Inc.