容错性测试是检查软件在异常条件下自身是否具有防护性的措施或某种灾难性恢复的手段。当系统出错时,能否在指定时间间隔内修正错误并重新启动系统。容错性测试包括两个方面:
· 输入异常数据或进行异常操作,以检验系统的保护性。如果系统的容错性好,系统只给出提示或内部消化掉,而不会导致系统出错甚至崩溃。
· 灾难恢复性测试。通过各种手段,让软件强制性地发生故障,然后验证系统已保存的用户数据是否丢失,系统和数据是否能尽快恢复。
对于自动恢复需验证重新初始化、检查点、数据恢复和重新启动等机制的正确性;对于人工干预的恢复系统,还需估测平均修复时间,确定其是否在可接受的范围内。容错性好的软件能确保系统不发生无法意料的事故。
从容错性测试的概念可以看出,当软件出现故障时如何进行故障的转移与恢复有用的数据是十分重要的。
1故障转移与数据恢复
故障转移是确保测试对象在出现故障时能成功完成故障的转移,并能从导致意外数据损失或数据完整性破坏的各种硬件、软件和网络故障中恢复。数据恢复可确保:对于必须持续运行的系统,一旦发生故障,备用系统将不失时机地“顶替”发生故障的系统,以避免丢失任何数据或事务。容错测试是一种对抗性的测试过程。在这种测试中,将把应用程序或系统置于(模拟的)异常条件下,以产生故障。例如设备输入/输出(I,o)故障或无效的数据库指针和关键字等。然后调用恢复进程并监测和检查应用程序和系统,核实系统和数据已得到了正确的恢复。
2测试目标
确保恢复进程将数据库、应用程序和系统正确地恢复到预期的已知状态。测试中将包
括以下各种情况:
· 客户机断电、服务器断电。
· 通过嗣络服务器产生的通信中断或控制器被中断。
· 断电或与控制器的通信中断周期未完成(数据过滤进程被中断,数据同步进程被
中断)。
· 数据库指针或关键字无效,数据库中的数据元素无效或遭到破坏。
3测试范围
应该使用为功能和、Ik务周期测试创建的测试来创建一系列的事务。一旦达到预期的测试起点,就应该分别执行或模拟以下操作:
· 往软盘保存时,不插入软盘,或将软盘加写保护。
· 不接打印机,但进行打印操作。
· 客户机断电和服务器断电。
· 网络通信中断,如可以断开通信线路的连接,关闭网络服务器或路由器的电源。
· 控制器被巾断、断电或与控制器的通信中断,模拟与一个或多个控制器及设备的通信,或实际取消这种通信。
文章来源于领测软件测试网 https://www.ltesting.net/