2.2 修改并审定测试方案

  初步的测试方案是由项目承担方自己提出的,难免会有“扬长避短”的现象,他们可能会将软件的缺陷和弊端隐藏起来,有的用例可能说明不了问题,不能验证是否达到指标的要求,而有的用例又可能是多余的,这时需要测试方修改、审定测试方案了。测试人员一定要具有较高的理论水平和丰富的测试经验,结合合同的指标和测试方案的内容进行分析,看承担方提供的方案有什么问题,能不能满足测试要求,如果有问题的话要相应的修改方案或是增删用例。另外,承担方提供的方案往往注重功能的验证,而忽视了性能的验证,所以测试方尤其要注意性能方面的指标,严格控制测试过程,该增加背景流量的要增加,该加大攻击力度的要加大,这样才能测试出网络安全软件到底能不能起到应有的作用。

  对测试方案进行修改以后还应该把修改过的地方交给项目承担方负责人,双方协商确定后签字,以后的测试要完全按照议定的方案进行,不能随意更改。如果因为特殊原因在测试过程中需要改动的话,需要双方负责人签字才可。

  2.3 架设测试环境

  开始测试前要按照测试方案架设环境。因为是测试网络安全软件,所以需要模拟一个真实的网络环境,这可能用到路由器、交换机、集线器、防火墙等设备,有的测试只要使用局域网,而有的测试可能要连接英特网。有时候还要用到发送/监视网络流量的工具,像硬件有SmartBits,软件有Chariot、Sniffer等。根据测试方案里提供的拓扑图把所有的设备连接起来,然后分配IP地址、做好各种网络设置,安装所需软件。后测试一下网络是否按要求架设完毕,软硬件能否正常运行。一切绪之后可以开始正式测试了。

  2.4 测试和记录

  测试人员首先应该认真阅读项目合同和测试方案,熟悉软件的功能和操作。开始测试时,一个人负责主测,一至两个人协助(大型的测试可能要更多的人),一个人记录。因为网络相关的软件往往不是单机的,需要多台机器协作完成,所以各台主机之间的配合、操作顺序很重要。这要求测试时按照方案的内容,由主测人统一指挥下达操作指令,协助测试人员根据指令操作。记录人员则要详细记录每一个操作步骤、输入的参数、操作后出现的现象和结果以及其他各种数据。有时候为了记录的准确和直观,也为了提高数据的可信度,经常需要将计算机屏幕上的画面保存下来,留做证据以供写测试报告使用。测试者从屏幕截图并记下图片的名字,以便与测试记录的内容对应起来。

  测试的过程要求严格按照测试方案进行,客观、细致的记录测试结果,不能带有任何个人主观的东西。对于一些统计性的测试则应该多测几组数据,以免因为误差而影响了测试结果。如果在测试过程中遇到疑问或软件出现了方案中没有提及的问题,测试人员可以向在场的项目承担方技术人员询问,讨论解决办法。承担方人员可以解释和说明,但不允许对设备进行任何操作,动手操作只能由测试者来完成。

  2.5 分析并形成测试报告

  所有的测试用例都做完之后,主测人员把测试记录和保存的图片都收集起来,对照测试方案看看是否符合方案要求,数据是否完整、可靠。确认之后可以着手写测试报告了。测试报告的内容与测试方案有些相同的地方,它也要包括项目简介、验收指标、测试环境、测试用例,不同的是它要将测试过程的记录、测试结果数据写进去,并且要对得到的结果进行分析,看看是不是达到了验收指标的要求。分析主要从功能和性能两个方面入手,将测试用例的结果和验收指标对照,逐项给出结论:通过、不通过或者基本通过。后根据这些结论给出一个整体评价。

  测试报告是详细记录被测软件的功能、性能的文档,软件的表现如何都有实际的数据资料说明问题,主测人员也给出了相应的评价和意见。而软件终能不能合格,有没有达到合同的要求,还需要专家进行审议。专家是根据这份测试报告的内容进行分析,并向项目承担方提出质疑,项目承担方则需要对专家的问题给出合理的解释。所以测试报告非常重要,一定要本着对合同双方负责的态度真实的记录测试的结果,做出客观的评价。

  3、结束语

  本文对网络安全软件的验收测试方法和过程进行了简单的阐述,也是作者参与信息产业部信息安全与关防持续发展计划项目验收测试的一个经验总结。鉴于目前网络安全日益受到人们的重视,网络安全产品日新月异,因而对这些产品(包括硬件和软件)的测试认证的方法也将逐渐完善起来。