3aTesting第二期性能测试沙龙ppt
- 格式:pdf
- 大小:163.76 KB
- 文档页数:19
3aTesting 第二期性能测试沙龙kernzhang3at e s t i ng沙龙主题•性能测试学习进阶•性能测试脚本编写•性能测试分析----内存篇3at e s t i ng性能测试学习进阶1、初步掌握性能测试方法3、掌握性能测试方法学寻求知识的广度2、实践并寻求知识盲点4、寻求知识点的精度开发转入测试或者系统管理转入到测试人员3at e s t i ng1、借助成熟工具进行性能测试感性认识寻求知识的广度4、实践并借助外在寻求知识盲点没有开发与系统经验的测试人员2、掌握性能测试方法2、掌握高级性能测试方法与知识精度3、补充开发与系统基础知识3at e s t i ng性能测试人员常见的几个问题•把掌握应用测试工具的熟练度作为性能测试掌握的主要衡量指标•无法发现问题,实际问题就在你的身边•遇到问题,无从下手。
只能被动的寻求帮助。
而且问题很难描述清楚3at e s t i ng性能测试脚本编写•脚本编写方法–测试工具实现自动脚本生成的工作原理–手工编写性能测试脚本的方法•数据库脚本编写演示3at e s t i ng测试工具自动形成脚本的原理•为什么性能测试工具需要选择“协议”•如何去选择工具所提供的协议•脚本形成的过程3at e s t i ng测试工具自动形成脚本的原理端口的监听端口的监听原始数据的采采集原始数据的采采集选择正确的格式解析数数据选择正确的格式解析数数据3at e s t i ng手工编写叫测试脚本•不存在数据采集过程,主要关注在请求发送和数据处理过程中•主要采用多进程或者多线程的策略去完成多用户操作的模拟•采取信号机制完成多用户同时执行某一个操作•。
3at e s t i ng数据库脚本编写实例讲解u 链接数据库u 从publisher 表中获取所有的pub_id u 然后任意去一个idu 使用这个id 到titles 对应的书籍总数u 判别是否与期望值相符,相符执行下一个操作否则事务失败u 如何去掉客户端执行时间3at e s t i ng内存分析经常会有很多同行会问一个类似的问题:测试场景执行结束了,产生了很多的图表,我怎么根据这些图表进行性能分析阿?3at e s t i ng内存分析•一个很有意思的内存现象•内存的工作原理•Working set 工作方式以及working set 的值获取•内存指标分析3at e s t i ng实例演示l 一个有意思的内存分配和回收方法l 一个内存泄露图表3at e s t i ng内存分配方法虚拟内存你的内存空间开始是空在你的地址里面夹在代码和静态数据Code Static DataEXE程序加载你程序里面涉及到的动态链接库的代码和静态数据Code Static Data DLLsCode Static Data Code Static Data通过VirtualAlloc 分配的动态数据动态分配Dynamic Data Dynamic Data Dynamic DataHeap操作系统中涉及到的数据比如说:页表System Data System Data System DataOS Support3at e s t i n gWorking Set物理内存虚拟内存硬盘操作系统管理着所有应用的working set 大小Working SetSize1.5 Meg 0K500K1 Meg 操作系统通过2个属性控制着页面的分配法则wsMax and wsMinwsMinwsMax wsCur ’s 代表着现在应用的内存使用情况wsCur 如果内存充足,出现页错误WSCur 允许超过阀值页面错误wsCur 3at e s t i ng实例演示获取进程的working Set Max 与Min 值3at e s t i ng物理内存物理内存缓存缓存虚拟内存虚拟内存没有找到所需数据软页错误没有找到所需数据硬页错误Page fault /secPrivate Bytes Bytes in all heaps Virtual Bytes3at e s t i ng根据图表,我们定位出来了应用程序内存出现泄露,但是我们怎么能够挖掘出来到底是什么地方出现内存泄露呢?实例演示3at e s t i ng答疑•3atesting 10月份性能测试培训北京、上海火爆展开中•3atesting---中国第一个免费测试视频社区3atesting。
3aTesting 第二期性能测试沙龙
kernzhang
3a
t e s t i n
g
沙龙主题
•性能测试学习进阶•性能测试脚本编写
•性能测试分析----内存篇
3a
t e s t i n
g
性能测试学习进阶
1、初步掌握性能测试
方法
3、掌握性能测试方法学
寻求知识的广度
2、实践并寻求知
识盲点
4、寻求知识点的
精度
开发转入测试或者系统管理转入到测试人员
3a
t e s t i n
g
1、借助成熟工具进行性能测试感性
认识
寻求知识的广度
4、实践并借助外在寻求知识盲点
没有开发与系统经验的测试人员
2、掌握性能测试
方法
2、掌握高级性能测试方法与知识精度
3、补充开发与系统
基础知识
3a
t e s t i n
g
性能测试人员常见的几个问题
•把掌握应用测试工具的熟练度作为性能测试掌握的主要衡量指标
•无法发现问题,实际问题就在你的身边•遇到问题,无从下手。
只能被动的寻求帮助。
而且问题很难描述清楚
3a
t e s t i n
g
性能测试脚本编写
•脚本编写方法
–测试工具实现自动脚本生成的工作原理–手工编写性能测试脚本的方法
•数据库脚本编写演示
3a
t e s t i n
g
测试工具自动形成脚本的原理
•为什么性能测试工具需要选择“协议”
•如何去选择工具所提供的协议•脚本形成的过程
3a
t e s t i n
g
测试工具自动形成脚本的原理
端口的监听
端口的监听原始数据的采采集
原始数据的采采集选择正确的格式解析数数据
选择正确的格式解析数数据3a
t e s t i n
g
手工编写叫测试脚本
•不存在数据采集过程,主要关注在请求发送和数据处理过程中
•主要采用多进程或者多线程的策略去完成多用户操作的模拟
•采取信号机制完成多用户同时执行某一个操作
•。
3a
t e s t i n
g
数据库脚本编写
实例讲解
u 链接数据库
u 从publisher 表中获取所有的pub_id u 然后任意去一个id
u 使用这个id 到titles 对应的书籍总数
u 判别是否与期望值相符,相符执行下一个操作否则事务失败
u 如何去掉客户端执行时间
3a
t e s t i n
g
内存分析
经常会有很多同行会问一个类似的问题:测试场景执行结束了,产生了很多的图表,我怎么根据这些图表进行性能分析阿?
3a
t e s t i n
g
内存分析
•一个很有意思的内存现象•内存的工作原理
•Working set 工作方式以及working set 的值获取
•内存指标分析
3a
t e s t i n
g
实例演示
l 一个有意思的内存分配和回收方法l 一个内存泄露图表
3a
t e s t i n
g
内存分配方法
虚拟内存
你的内存空间开始是空在你的地址里面夹在代码和静态数据Code Static Data
EXE
程序
加载你程序里面涉及到的动态链接库的代码和静态数据
Code Static Data DLLs
Code Static Data Code Static Data
通过VirtualAlloc 分配的动态数据动态分配
Dynamic Data Dynamic Data Dynamic Data
Heap
操作系统中涉及到的数据比如说:页表System Data System Data System Data
OS Support
3a
t e s t i n g
Working Set
物理内存
虚拟内存
硬盘
操作系统管理着所有应用的working set 大小Working Set
Size
1.5 Meg 0K
500K
1 Meg 操作系统通过2个属性控制着页面的分配法则wsMax and wsMin
wsMin
wsMax wsCur ’s 代表着现在应用的内存使用情况wsCur 如果内存充足,出现页错误WSCur 允许超过阀值页面错误
wsCur 3a
t e s t i n
g
实例演示
获取进程的working Set Max 与Min 值
3a
t e s t i n
g
物理内存物理内存缓存缓存虚拟内存
虚拟内存没有找到所需数据
软页错误
没有找到所需数据硬页错误
Page fault /sec
Private Bytes Bytes in all heaps Virtual Bytes
3a
t e s t i n
g
根据图表,我们定位出来了应用程序内存出现泄露,但是我们怎么能够挖掘出来到底是什么地方出现内存泄露呢?
实例演示
3a
t e s t i n
g
答疑
•3atesting 10月份性能测试培训
北京、上海火爆展开中
•3atesting---中国第一个免费测试
视频社区
3
a
t
e
s
t
i
n
g。