关闭HttpUnit对JS的检测

前段时间做一个项目时用HttpUnit提交数据信息,发现HttpUnit对JS的支持不够强大,或者说对JS太过严格。只要其中有点不对就会报错,而且如果有JS动态操作HTML内容那么肯定会有或多或少的问题出现,甚至会有异常。这样就进不了网站。
产生的错误原因可能是:一、JS文件编码格式的原因,很多JS文件并不是写在网页内而是引入,如果JS文件格式不是以UTF-8编码格式编写,HttpUnit解释时肯定会报错,可能是因为HttpUnit解释时是按照UTF-8格式解释的吧。如果就写在网页内可能网页编码格式也不是UTF-8。二、众所周知,很多时候我们写出来的JS,在IE下可能正常而在FF下可能就不正常了,这也可能引起HttpUnit解释时出现异常。
如果你去测试获取很多网页会发现,国内的网站获取时更多可能会报错,像CSDN,新浪等,而国外的网站报错的机率少一些。
解决的办法就是去掉HttpUnit对JS正确性的检测,写上如下语句:
HttpUnitOptions.setExceptionsThrownOnScriptError(false);
我英文不好文档也看不懂,我所理解的是:设置成FALSE时即不检测JS的正常性,TRUE时按照HttpUnit的严格准备来检测JS,如果JS不正确则报错。千万不要认为设置成false时就不能使用JS了,其实是可以使用的,这个我已经测试过了。
以上愚见,错误之处望高手多多指点~-_-

你可能感兴趣的:(html,IE)