- 数据访问层:实现对数据的访问功能,如增加、删除、修改、查询数据。
- 业务逻辑层:实现业务的具体逻辑功能,如学生入学、退学、成绩管理等。
- 页面显示层:将业务功能在浏览器上显示出来,如分页显示学生信息等。
数据访问层:
1. 常出现的问题可能是数据库字段长度不正确,导致保存的数据被截断或提示错误。
2. 写入的数据正确性。
3. 还常会出现开发人员数据库操作时对表名和字段名书写错误导致功能失效。
4. 部分功能在需要确保一切都没有问题时才完成更改,这时需要涉及到对事务处理的正确性。
5. 对数据库层的exception处理。
6. 数据库设计不合理导致性能问题,如数据库完整性设计不合理,垃圾数据累积导致性能下降,索引的设计等。
业务逻辑层:
1. 需求制定时的漏洞,不够严密,导致开发的代码有业务需求方面错误。之前有个经历就是一个不懂软件的老板最初在制定需求时,没有删除数据的功能,但是后来需要增加删除数据功能,可是未经过需求评审,开发完成后,提交测试,对基础数据删除后,引用该数据的模块都无法正常工作;
2. 业务逻辑和流程与需求不符合,归结为开发人员对需求的理解不透彻;
3. 其他一些需求没有达到要求,如安全,提示信息的标准,性能等;
4. 编码错误。主要包括局部数据结构错误(变量初始化,地址溢出等等),边界条件错误,模块接口错误,代码独立路径错误,异常处理不恰当等等,这就涉及到详细的单元测试和集成测试了;
5. 软件设计构架导致的错误,如缓存机制等等,需要从性能和时效性两方面着手考虑,否则提交的数据不能被及时看到。
页面显示层:1. 前端JS错误,如长度或格式校验错误等等;
2. 本地化错误,如用户使用习惯不同导致的错误,多语言翻译错误等;
3. 页面展示,如内容显示不全,显示错误,界面颜色不匹配;
4. 易用性不好,如页面导航错误,提示语不友好,不易学等;
5. 兼容性错误,如分辨率兼容,浏览器兼容,键盘以及OS的兼容问题。
在平时的测试工作中,也经常会遇到除此之外的问题,如配置类的错误,包括web服务器的配置,网站config的配置等。这些均会影响到软件的可用性。