我运行Ruby / RSpec + Selenium。在测试期间,JavaScript代码会将一些信息打印到浏览器控制台。我有兴趣从我的代码中获取该输出(在Ruby中)。是否有可能(即使有一些限制)?
当然,如果可能的话,首选的是与浏览器无关的方式。
谢谢!
答案 0 :(得分:5)
使用以下内容创建一个脚本文件,并在登录到控制台的任何其他JS之前将其包含在每个页面的顶部:
(function(old)
{
console.log = function(str){
//save the str in a hidden field on page
old.call(console,str);
}
})(console.log);
隐藏字段将包含可以发回服务器的所有日志数据。 对于其他控制台方法也可以这样做,例如错误等