软件可靠性测试是以能获得可用来评估软件可靠性的数据为目的的一种软件测试。随着软件技术的快速发展,计算机软件在现实生活的作用越来越大,和生活的融入度也越来越高,随着博弈仿真问题的规模和复杂度的提升,软件的可靠性问题也越来越突出。深入研究软件可靠性模型对于预测评估软件的可靠性具有十分重要的意义。
软件可靠性测试是指为了保证和验证软件的可靠性要求而对软件进行的测试。其采用的是按照软件运行剖面(对软件实际使用情况的统计规律的描述)对软件进行随机测试的测试方法。
软件可靠性测试的主要目的有哪些:
1. 用户权限限制。软件是否按功能模块划分用户权限,权限划
分是否合理,考察超级用户对各个用户的权限管理是否合理,
包括修改用户的登录资料等。
2. 用户和密码封闭性。软件对用户名和密码有无校验,有无保
护措施,尤其对密码有无屏蔽功能。
3. 系统对用户错误登录的次数限制。软件对用户错误登录有无
次数限制,一般做法是连续三次登录失败就退出系统。
4. 留痕功能。软件是否提供操作日志,比如某用户登录的时间,
查询、修改或删除的动作以及离开的时间等。
5. 屏蔽用户操作错误。考察对用户常见的误操作的提示和屏蔽
情况,例如可否有效避免日期的录入错误或写入无效的日期。
6. 错误提示的准确性。当用户操作错误时,能否有准确清晰的
提示,使用户知道造成错误的原因。例如当用户未输入完有
效信息时存盘,系统应当给出关于未输入项的提示。
7. 错误是否导致系统异常退出。考察软件运行的稳定性,当软
件发生一般错误或严重错误时,软件是否会自动退出。
8. 数据备份与恢复手段。主要针对有数据存储需要的软件,有
的软件依靠数据库操作系统本身的备份与恢复机制,这需要
用户具备一定的操作知识;好的软件会提供备份与恢复的操
作,不需要用户直接对数据库系统进行操作。
9. 输入数据有效性检查。当用户输入的数据有错时,软件应能
判断数据的有效性,避免无效数据的生成。
10. 异常情况的影响。在程序运行过程中进行掉电等试验,考查
数据和系统的受影响程度;若受损,是否提供补救工具,补
救的情况如何。
11. 网络故障对系统的影响。当网络中断连接时,是否会造成数
据的丢失。