悬而未决的问题
提出:
昨天客户那边说有些机器上程序不能继续执行了,而且不能提示错误出来,
分析:
当时我就考虑:
如果aspx出错了,也会跳转到出错页面,
如果javascrip脚本出错了,也会弹出出错信息。
我苦苦跟踪了很久,发现错误还是在于Javascrip脚本。
执行到这样一句话,它不能做下去:
datFile = fso.OpenTextFile(filename,ForWriting);
调试这条语句,显示"权限不够",查看文件属性,只读,恍然大悟。
改文件属性为正常,程序可以正常。
解决:
加上
var tempfile = fso.GetFile(filename);
if(tempfile.Attributes==33) tempfile.Attributes=32;
在OpenTextFile之前,果然解决。
悬而未决:
这个bug属于常识性的,文件只读情况下,怎么可写呢?暂不去追究写这段代码的人个人技术上的问题,大处着想:仅仅说写程序,谁能说自己毫无bug,编出十全十美的程序呢?
程序已经上线很久,对于客户的影响很大。大的问题,往往根源于很小的bug,如大楼中的白蚁。
怎样能编出少bug的程序呢?除了编程人员的经验,细心之外,怎么能有效的预防?
是去读代码,分析代码,还是单元测试,或者加大测试力度呢?