3. 测试用例与测试数据
 
  确定了测试计划后,可以针对测试计划中确定的需要测试的指标设计测试用例了。同样,设计的测试用例也需要向客户解释清楚并得到客户的认可。一般来说,客户比较关注的“这个测试用例怎么能说明系统达到了性能指标?”和“我怎么检验你的测试结果?”,因此需要通过会议或是其他方式与客户尽可能地沟通,在本项目的测试中,我们在第一轮测试中出现了因为与客户沟通不够出现的问题,其实在测试用例执行之前,我们已经和客户进行了测试用例的确认,但在执行过程中,用户表示希望能看到更详细的中间结果,导致我们只能重新修改了部分测试工具和测试环境,导致测试执行未能按计划完成。第一轮测试完成后,我们再次和用户对测试用例进行了详细的审核,包括每个用例的详细输入、输出,以及如何验证输出。
 
  从已确定的测试指标产生测试用例没有单一的法则,这个是测试设计员(Test Designer)的基本功了,在这里不进行描述。
 
  关于测试用例的书写格式在51cmm和其他很多网站上都有讨论,我个人的感觉是不必要太多拘泥于测试用例的书写方式,一般只要测试用例描述清楚了测试步骤、输入、预期输
用例编号 XXXX_NFT_PT_XX 用例对应功能点  
用例类型 性能 用例优先级  
用例简要描述 XXXXXXX
用例依赖关系 用例依赖用例  
用例创建人   用例执行时间  
用例执行先决条件
1. 使用一台采集服务器作测试用;
2. 已通过模拟程序产生每秒300条告警的告警数据;
3. 所有告警产生和呈现时间记录在本地日志文件中。
检测方法
1. 由网元模拟程序产生特定告警(T1);
2. 告警被上层应用呈现的时间由上层应用记录(T2);
3. 计算T2-T1,结果小于5秒;
修改记录      
〔修改人〕 (修改时间) (修改内容)  
用例描述
步骤 操作 输入数据 预期输出
1 用户启动主界面,进入告警监控界面    
2 产生一个特定告警(便于识别),发送至系统 XXXX(特定告警的详细内容) 特定告警的发送时间记录在文件XXXX中
3 在告警监控界面上查看特定告警   观察到特定告警出现的时间(记录在文件XXXX中)和告警实际发生时间相差不超过5秒
测试结果描述:
测试时间:   测试结论:   签名:

  从本测试用例中可以看到,测试用例已经详细定义了用例执行的先决条件、测试输入和输出,以很直观的方式给出了测试用例的各个要素。
 
  设计测试用例的过程中,同时需要关注的是测试数据的产生和维护。
 
  在上一个测试用例的例子中,“特定告警的详细内容”是一个被选择的测试数据,如何选择具体的测试数据需要根据测试的具体需求而定,没有统一的法则。但在设计测试用例时,一定要明确每个用例的数据需求并将这种需求综合起来,并形成对测试环境的测试数据的维护策略,以便在测试用例执行时能顺利进行。
 
  一般而言,我们可以考虑初始测试数据的需求、考虑测试用例之间的依赖关系、记录每个用例对数据的要求,然后终确定需要哪些测试数据和如何维护测试数据。
 
  4. 测试环境与测试工具
 
  制定了合理的测试计划、设计了满足需要的测试用例之后,我们可以开始着手准备测试环境和考虑如何在测试中运用测试工具了。
 
  4.1. 测试环境
 
  测试环境的部署和维护是一件需要详细策划的事情,部署了合理的测试环境是测试达到目标效果的前提条件。一般来说,在考虑部署和维护测试环境时,需要考虑以下内容:
 
  测试网络环境
 
  性能测试一般都是在一个网络中进行,可能是一个单独的局域网,也可能是和生产环境相同的网络,不管实际的情况如何,我们都必须评估网络状况是否会对我们的测试产生影响,也是说,要保证网络环境能够较好地模拟实际网络环境(包括网络状况、负载等)。当然,在我们的本次测试中,由于网络状况对我们的测试结果没有什么影响,我们的测试是在一个接近生产环境的100M局域网中进行。