用casperjs检查网页中的js错误

https://coderwall.com/p/uzaaaw

 

I recently needed to make reorganize javascript files on a huge Rails app. I wanted to be sure that I had not broken javascript dependancies with the reorganization, so I needed to crawl the site for js errors each time I restructured the load strategy for js.

I ended up using CasperJs to accomplish this. It was pretty easy.

First install Casper

brew install casperjs

This is what my script ended up looking like

var casper = require('casper').create();
var errors = [];

// log into the site first
casper.start('http://localhost:3000', function() {
  this.fill('form[action="/session"]',
  {
  'login[email]': 'username',
  'login[password]': 'password'
  }, true);
});

// add as many pages as you would like...
casper.thenOpen('http:localhost:3000/accounts/1/products');

casper.on("page.error", function(msg, trace) {
  this.echo("Error:    " + msg, "ERROR");
  this.echo("file:     " + trace[0].file, "WARNING");
  this.echo("line:     " + trace[0].line, "WARNING");
  this.echo("function: " + trace[0]["function"], "WARNING");
  errors.push(msg);
});

casper.run(function() {
  if (errors.length > 0) {
    this.echo(errors.length + ' Javascript errors found', "WARNING");
  } else {
    this.echo(errors.length + ' Javascript errors found', "INFO");
  }
  casper.exit();
});

Then run the script, in my case I called it "check_for_errors.js"

 casperjs check_for_errors.js

The script will output any errros found on the pages you hit.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值