一、测试基础概念:
单元测试的测试内容 | 模块接口测试 |
局部数据结构测试 | |
路径测试 | |
错误处理测试 | |
边界测试 | |
集成测试的测试内容 | 在把各个模块连接起来的时候,穿越接口的数据是否会丢失 |
一个模块的功能是否会对另一个模块的功能产生不利的影响 | |
各个子功能组合起来,能否达到预期要求的父功能 | |
全局数据结构是否有问题 | |
单个模块的误差累积起来,是否会放大,以至达到不能接受的程度 | |
系统测试的测试内容 | 在真实或模拟系统运行的环境下,检查完整的程序系统能否和系统(包括硬件、外设、网络和系统软件、支持平台等)正确配置、连接,并满足用户需求 |
验收测试的测试内容 | 按照项目任务书或合同、供需双方约定的验收依据文档进行的对整个系统的测试与评审,决定是否接受或拒收系统 |
系统:真模环境,检查程序,营外望软屏,陪练用户
验收:任务书、合同、验收依据,决定接受或拒收
二、性能测试基础
交易执行吞吐量:系统服务器每秒能够处理通过的交易数 交易执行响应时间:系统完成事务执行准备后所采集的时间戳和系统完成待执行事务后所采集的时间戳之间的时间间隔,是衡量特定类型应用事务性能的重要指标,表明用户执行一项操作大致需要多长时间 |
硬件中的瓶颈解决办法 | 添加CPU、磁盘或内存 | |
导致系统性能下降的因素 |
内存不足 数据库资源匮乏 网络速度低 硬件资源不足 应用程序架构存在缺陷 软硬件配置不恰当 |
|
CPU问题 | 1、使用更高级的CPU代替; 2、对于多CPU,考虑CPU之间的负载分配; 3、考虑在其他体系上设计系统,增加前置机、设置并行服务器等; 4、增加CPU个数; 5、提高CPU主频; 6、将web服务器与数据库服务器分开部署; 7、调整软件的设计与开发; |
|
带宽问题 | 1、增加带宽; 2、压缩传输数据; |
|
内存和高速缓存 | 1、内存优化(包括操作系统、数据库、应用程序的内存优化); 2、过多的分页与交换可能降低系统的性能; 3、内存分配也是影响系统性能的主要原因; 4、保证保留列表具有较大的邻接内存块; 5、调整数据库缓冲区大小是一个重要内容; 6、将最频繁使用的数据保存在存储区中; |
|
磁盘I/O资源问题 | 1、磁盘读写进度对数据库系统是至关重要的,数据库对象在物理设备上的合理分布能改善性能; 2、磁盘镜像会减慢磁盘写的速度; 3、通过把日志和数据库对象分布在独立的设备上,可以提高系统的性能; 4、把不同的数据库放置不同的硬盘上,可以提高读写速度; 5、把表放置一块硬盘上,把非簇的索引放置在另一块硬盘上,保证物理读写更快;
|
|
配置参数 | 1、包括操作系统和数据库的参数配置; 2、并行操作资源限制的参数(并发用户的数目、会话数); 3、影响资源开销的参数; 4、与I/O有关的参数; |
|
应用系统网络设置 | 1、可以通过数组接口来减少网络呼叫; 2、调整会话数据单元的缓冲区大小; 3、共享服务进程比专用服务进程提供更好的性能; |
|
数据库 | 服务器资源负载过重; 数据库设计不合理; 数据库单个事务处理响应时间长; 系统并发负载造成最终用户响应时间长 |
采用数据库集群策略; 配置正确; |
交易响应时间很长,远超系统性能的需求 | 表示耗费CPU的数据库操作(排序、执行sum、min、max、count)等较多; | 考虑是否有索引以及索引建立是否合理; 尽量使用简单的表链接、水平分割大表格等方法降低; |
内存页交换速率指偶尔走高 | 表明当时有线程竞争内存 | |
内存页交换速率值持续很高 | 内存可能是瓶颈 也可能是内存访问命中率低 |
|
CPU占用率的值持续超过95% | 表明瓶颈是CPU | 增加一个处理器或换一个更快的处理器 |
队列中的字节数超过磁盘的1.5~2倍 | 增加磁盘 | |
缓存点击率持续低于80% | 增加内存 | |
随着并发用户数的递增,交易执行成功率降低 | 服务器端架构设计不合理; 服务器端参数设置不合理; 软件系统实现存在问题; |
三、特定测试
平台非功能测试 | 性能测试、负载测试、压力测试、并发测试、配置测试、可靠性测试、容量测试、失效恢复测试、链接速度测试等 |
XSS测试 | 任何字段包含HTML,如<HTML>,或任何脚本如<SCRIPT> |
SQL注入测试 | 字段任何包含SQL功能符号测试是否使SQL改变为不符合设计意图即可,如包含‘OR、’--、‘OR’1‘等 |
基本路径测试 | 在程序框图基础上,通过分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例的方法 |
web应用中会遇到的测试 | |||
web应用设计 | 总体架构测试 | 1、采用瘦客户端或胖客户端是否适合需求; 2、确定web架构的组成部分是否满足需求; 3、服务器的配置及分布是否满足要求; |
|
客户端设计测试 | 功能设置测试 | 信息服务、办公自动化、Internet支持 | |
信息组织结构测试 | 线性结构设计、非线性结构设计、分层结构设计 | ||
页面设计测试 | 页面一致性、友好的用户界面和直观的导航系统、多种浏览器的兼容、建立页面文件的命名系统、合适的页面布局技术 | ||
服务器端设计测试 | 容量规划的测试 | 估算点击率、延迟、流量是否满足需求; web应用系统所需服务器的资源消耗; |
|
安全系统设计测试 |