βOn Mon, Jan 19, 2015 at 12:36 PM, Joshua Cranmer π§ <pidgeo...@gmail.com> wrote:
> Getting good code coverage (line and branch coverage) ultimately requires > fine-grained instrumentation (ideally bytecode-level) not presented by the > current Debugger. > βI think you can get fine-grained enough data with the existing Debugger API by doing the following: * Adding all existing globals as debuggees: `Debugger.prototype. addAllGlobalsAsDebuggees` * Adding new globals as debuggees: have your Debugger's onNewGlobal hook to always add the new global as a debuggee. * For each `Debugger.Script` (on initialization via `Debugger.prototype.findScripts` and on new scripts in the future via the `onNewScript` hook): *** Use `Debugger.Script.prototype.getAllOffsets`β to get all byte code offsets which are entry points to each line in the script *** Set a breakpoint on each of those offsets which, when hit, records that the offset's line was executed _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform