代码改变世界

机房收费系统测试

2011-11-06 16:49  javaspring  阅读(213)  评论(0编辑  收藏  举报

昨天晚上找了崔成龙帮忙把新写完的机房收费系统测试了一遍.因为有第一次的经验,这次比上次错误少多了.不过还是测出了一些问题.
 
1、学生基本信息维护功能中,点击DataGridView列标题可以排序,导致获取行信息不对称。
解决:搜索MSDN找到DataGridView,在它的事件说明中,发现列标题的单击事件,可以在这个事件中处理信息不对称的
问题。
 
2、基本数据合理性判断,例如最小充值金额不能大于最大充值金额,不能小于0,准备时间不能大于单位计费时间等等
解决:根据基本常识,在相应的方法中加入判断即可。
 
3、查询学生信息,缺少一个查不到信息的判断,否则导致相应的更新信息文本框获取出错
解决:加上判断即可
 
4、用户信息管理,采用直接通过DataGridView更新数据库中的数据,用户级别缺少合法性判断。导致更改用户级别,重新登陆出问题。其他列如果数据不合法,则弹出系统默认错误信息,比较唬人。
解决:尝试使这一列变成下拉框,只准选,不准输入,没有成功,暂时把这一列设为只读。重写DataError事件,写自己的数据不合法提示信息。
 
5、DataGridView表格末尾有空行,如果选中空行,点强制下机,没有意义。
解决:把DataGridView的属性允许添加新行设为否
 
6、在XP和Win7上测试,发现日期格式不兼容,同样用“/”format以后,一个存入数据库分隔符是“-”,一个是“/”
解决:统一使用“-”format
 
7、打包时,没有将.NET环境打进去,导致安装时提示下载.net framework安装,浪费时间。
解决:重新打包,在部署文件-属性-系统必备中,加入本机环境。
 
还有一些细节问题都已经解决:
8、报表加一个刷新,因为可以获取最新结账信息
9、结账表格的字体
10、查询正在上机有组合框控件没有判断空值
11、DTP日期控件可以设定最小值和最大值,防止选择日期太离谱
12、一些控件的大小,是否整齐,字体不合适等
13、密码中防止输入空格
 
这次采用面向对象编写,基本上没有什么大的逻辑错误,因为调错相对前一次的设计要容易,整个架构在那里摆着,而且很熟悉,所以很少出现牵一发,动全身的情况。细节上的问题仍然不少,我觉得这个就是素质的问题,比方说判断数据输入合法性,这就是最基本的素质。顺手把注释加上,这些也是素质的体现。如果有一个良好的习惯,很多细节问题完全可以规避。