1、需求讨论,测试角度关注的问题:

  (1)系统架构、开发方法、人员安排、实现过程、开发周期

  (2)产品应用范围、面向的用户及用户人数、产品要实现的功能、使用的数据类型

  (3)开发环境:开发工具版本、数据库版本、操作系统版本

  (4)运行环境:硬件平台、操作系统、支撑环境(数据库版本、IE版本)、相关组件、服务

  (5)安全要求:产品权限、数据库权限、部署的服务器信息、防火墙信息、要放开的端口号

  (6)性能需求:系统支持的并发数量、响应时间、数据库中数据容量、占用的系统CPU、磁盘空间、传输速度、网络带宽等。

  2、需求分析

  (1)画出整体系统的(网络)拓扑图

  (2)根据不同角色身份进行分析,画出系统流程图:用户角度、安装人员角度、维护人员角度

  (3)从数据库角度进行深入分析:数据层、业务层、表现层

  (4)系统包含的功能模块/子系统列表,画出各模块的流程图,各模块间的关系及衔接接口

  (5)安全级别是否达标、对性能需求进行分析

  3、测试准备工作

  (1)环境准备:开发环境、测试环境、用户机干净环境虚拟机、复杂环境虚拟机(IE不同版本、操作系统不同版本、防火墙不同、数据库版本不同)

  (2)数据准备:正式数据、不自洽数据

  (3)书写测试功能点

  (4)根据需求分析结果和测试功能点,制定测试策略、测试方法、测试周期、人员安排。

  4、测试开始

  (1)测试用例书写:根据八大测试用例方法书写:等价类划分方法、边界值分析方法、错误推测方法、因果图方法、判定表驱动分析方法、正交实验设计方法、功能图分析方法、场景设计方法

  (2)编写测试使用的sql语句、编写自动化测试脚本

  (3)功能测试:可借助测试工具,例如:Xenu、Cookie Editor、QTP

  (4)白盒测试:代码走读、静态结构分析法、逻辑覆盖法、基本路径测试法,工具:NUnit。详读web.config等配置文件,辅助理解程序整体结构,检查之前的测试点是否完善。

  (5)数据库测试:数据备份与恢复测试、故障转移和恢复测试、数据迁移数据操作测试(包括不同版本数据库间的迁移、跨数据库类型迁移,例如SQL迁移到Oracle)。

  (6)数据库压力测试:

  ● 通过数据库连接数的变化,测试是否有连接泄露的现象

  ● 是否有数据表锁死等现象

  (7)性能测试:连接速度测试、负载测试、压力测试,工具loadrunner

  (8)安全性测试:建立整体的威胁模型,测试溢出漏洞、信息泄漏、错误处理、SQL 注入、身份验证和授权错误、XSS攻击。可用工具:

  ● Paros proxy (http://www.parosproxy.org),用于截获HTTP 通信数据

  ● Fiddler (http://www.fiddlertool.com/fiddler),用于截获HTTP 通信数据

  ● TamperIE (http://www.bayden.com/dl/TamperIESetup.exe),用于修改GET 和POST

  (9)兼容性测试:利用之前准备的不同环境,测试产品兼容性及支持环境

  (10)安装测试:不同环境、安装过程不同选项、不同路径

  (11)参数测试:书写可配置参数的意义及语法说明文档,并进行测试

  5、测试结束:

  (1)测试总结:bug情况、系统稳定性、使用方便度、遗留待解决改进的问题

  (2)功能点测试报告

  (3)性能测试报告

  (4)环境要求文档:操作系统的版本(包括企业版、标准版等)、位数;数据库的版本(包括企业版、标准版等)、位数;.Framework版本;不支持的环境

  (5)使用手册:系统常见故障分析及排除说明、错误信息编码说明

  (6)部署文档:包含FAQ的内容以及截图

  (7)维护文档:系统目录结构说明、系统启动进程说明、数据备份说明

  (8)外出安装前的检查文档

  6、外出安装注意事项:

  (1)设计若安装出现问题的紧急预案

  (2)安装前检查环境(待写一个环境检查的小工具)

  (3)根据事先写的检查文档一项项打勾、安装后对每一模块进行测试验证

  (4)安装结束后,将IIS、WEB.CONFING、注册表信息、日志信息、防火墙信息、安装路径、安装程序等拷贝回来,撰写文档。