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、注册表信息、日志信息、防火墙信息、安装路径、安装程序等拷贝回来,撰写文档。