Webpagetest 2.11 contains a bug in chrome extension that prevents the setDOMElement command from working: The tab id isn’t found and no event to search for the dom element is fired:
- In wpt.commands.CommandRunner.prototype.doSetDOMElements (file commands.js) is checked if g_tabid is set before firing setDOMElements request).
- g_tabid is set via the constructor of CommandRunner (wpt.commands.CommandRunner in commands.js)
- Method wpt.commands.CommandRunner.prototype.doSetDOMElements isn’t called by an instance of CommandRunner (it’s called directly at the event onBeforeNavigate in commands.js)
→ g_tabid isn’t initalized because namespaces restrict its domain
Example Script:
setDOMElement id=location
navigate https://www.webpagetest.org
Result (using Chrome): http://www.webpagetest.org/result/130724_QJ_N3C/
Possible solution:
- Move definition of g_tabid (var g_tabid = 0) from background.js to command.js (above goog.require(‘wpt.logging’))
- Another solution would be creating an instance of CommandRunner before calling method wpt.commands.CommandRunner.prototype.doSetDOMElements