一般而言,你不能指望任何你没有定期进行测试的设备都能够随时保持正常工作。这一理论对于任何各种技术领域都是这样的,但是,定期的检测工作往往容易被忽视。你总不能期望您在两年前停在一个废旧仓库的汽车,从今天开始不经过检修就可以上路吧?就算真的能够直接上路的话,你无疑应该感到庆幸。但IT系统就不一样了。如果你没有进行相关的测试或维护系统工作,就不要指望其能够自动的进行故障转移。
测试工作是如此的重要,但其常常却因为那些永无止境的看似更重要的任务所推迟、积压。完全放弃测试工作显然是非常危险的,但如果其测试系统不能真正反映出系统在实际运行中的需要,也是非常危险的。本文中将为您介绍七大事宜,方便您的企业在测试进行参考借鉴,并帮助您确立对于您企业系统和程序的信心。
测试法则1:进行现实的测试
采取的第一个步骤是确保您的测试尽可能在接近真实世界的情况下进行。例如,如果你测试的是执行站点故障切换的能力,那么,请务必确保您所测试的站点是在一个绝对孤立的条件下,使其完全无法从主站点进行连接。这样,您可能会发现,你程序的某些部分(如密码或程序本身)是位于或依靠于主站点运行的。
做到这一点的最好办法是生产环境可以根据适当的目的被禁用的时候,进行分期测试。但很少有用户社区和管理程序支持这一理念。相反,你可能会需要投资一段时间在确保你绝对不依赖于基础设施的功能或服务的情况下,尝试相关的恢复测试。
测试法则2:考虑人的因素
同样,在你的测试过程中也会涉及到人为的因素,考虑到这一点也是至关重要的。确保了所有的系统都能够工作是一回事,但是人的因素呢?相关工作人员是否记得他们需要做什么工作?他们是否知道关键文件的存放位置,以及如何得到这些文件?他们对于相关的紧急是否有足够的认识,以及正确的反应,企业希望他们的反应是怎样的?
毕竟,你所测试的大多数东西都是需要应对突发事件的,其测试的往往是在没有执行相关系统程序的相关工作人员的反应状况。您将了解到你员工的响应时间,以及在没有指导的情况下的能力状况,最终,这些可能与您进行系统程序测试所想要了解的东西同样重要。
测试法则3:观察监测工具
如果你被允许执行一项中断诱发试验,请务必确保相关的评估信息是来自于监控和报警工具。它们所提供的数据对于您总结出正确的结论来指导你的员工是足够的吗?你是否能够调整或监控这些工具,使其更快或更容易的确定重大事故的根源?
以我的经验,相关测试的执行人员确定这个问题,然后决定如何采取相关的反应措施往往比执行任何恢复步骤所花费的必要时间更多。这样,质量监控和报警工具便可以在在诊断过程发挥很大的作用了。
最近的一次停电事故便引发了我对于利用真实世界的情况进行故障测试和监控工具配置不足的思考。在这种情况下,对网络硬件关键部分的故障通常是由初级设备中拔出次级设备,以观察次级设备是否能承担起主要作用的测试。因此,进行一些人工干预是必要的,监控系统也进行了测试。在测试过程中,监控系统检测到链路的损耗并进行正确的提醒,使得运营商认为一切运作良好。
当一个现实中的运行失败最终发生时,作为主要系统的路由邻接设备之间的连接失去了,遇到了软件缺陷,并发生运行失败,但设备之间的物理链路并没有问题。因此,不仅是次级系统无法进行相应的接管,同时,只负责监测物理链路的监测系统也没有提醒正确的操作。届时,要弄清楚到底发生了什么,无疑是浪费了不必要的时间。
测试法则4:确保使用您的文档的及时准确
当你在进行测试时,请确保你所使用的任何文件,包括您已经创建的文本文档或图表能够引导您完成整个测试过程。通常,诸如灾难恢复计划这样的文件一旦被创建,其便可以经常被拿出来进行审查,但其实几乎没有人真的会依靠该文件执行工作。除非你使用的是一个非常简单的环境,你的文件会定期维护,并及时准确的更新。但一个事件发生时,文件通常是相关人员第一个想到的项目内容。因此,请确保其能够帮助您完成测试任务。
测试法则5:注重对非核心工作人员的训练
即使您对于相关的系统非常了解,不需要创建相关的文档以备参考。想象一下当您本人不在的时候,某些并不熟悉系统的工作人员需要执行相关的程序时,应该怎么办?对于这些人来说,良好的文档是至关重要的。这样,对于相关系统问题并不熟练的团队成员也可以进行原发性的测试。请务必记住,你所进行的将不仅仅是测试系统,而且还包括对您的相关文件,以及你的团队成员在紧急情况下接替同事工作的测试准备。
测试法则6:吸取经验教训
关于测试,最重要的部分是你在测试完成之后做了什么工作。如果你发现了你系统中所存在的不足、或者你的文档、团队成员的某些欠缺,那么确保在今后的实际正常工作中不再发生任何的类似错误才是测试的关键。毕竟,测试的目的就是要在实际工作之前,了解到那些部分无法正常的运作。一切是否都运行良好,员工们是否都知道自己该怎么做,同时你的相关文档是否都被证明完全是及时更新的。不过,经过测试,我们中的大多数都会或多或少的发现实际工作中所存在的不足。某些系统需要修复,某些新的团队成员需要更多的训练,或者某些文将需要更新。
测试法则7:在修正了测试发现的缺陷后,重复测试
当你完成了整个测试过程,并确定了可能存在的任何弱点之后,可以重新再做一遍测试。如果你的测试没有发现任何问题,那么,可以在几个月后再次测试,但如果你已经发现了某些缺陷,那么再次进行测试可以帮助您确认对于之前发现的缺陷的修正工作是否是到位的,这对于解决你所遇到的问题是很重要的。
无论如何,请确保对你企业运行的系统留出尽可能多的时间来进行测试。只有测试才能确保你的业务能够正常启动和运行,所以你最好能够花费有限的时间来测试其可用性。相信我,当在正常运作过程中发生真正的运行失败时,你会感谢自己曾经做过测试,而您也会对自己需要系统怎么运行有着充分的了解。