首页 > 代码库 > 性能测试和数据分析的一点总结
性能测试和数据分析的一点总结
最近几周在忙性能测试和数据分析的一些工作,同步进行着。总结了几条经验和感悟,简单记录一下:
- 给你数据的人,比数据本身更重要
主要基于两点考虑,a. 给定的数据是否真实——相当一部分的给定数据给定时就已经为了达到某种目的而凑数,比如大部分政府部门和国企都会阶段性的找会计做黑账;b.给定的数据不具备普遍性——比如政府的大多数官方统计;
- 莫要忽视零概率事件
大学时数学专业的概率论几乎都是满分,现在为止却只记住了一句话,零概率事件不等于不发生;
- 随机事件可以积累
一个分子在一段时间的随时运动后,总是会和原点偏离一段距离。如果考虑更多随机的因素,一个很小的选择和事件会决定一个人的一生,比如砸到牛顿的苹果;
马尔可夫的多个定理里面,这个是我体验最深的;
- 测试工作的根本目的是对项目和产品有行为的指导作用
作为一名测试工作者,如果工作的产出不能指导项目行为,那就是失败;
比如一个网站的流量忽然增加了10倍,那么测试人员应该清楚网站的性能还能顶得住多少流量,假如扩充的话,需要多少什么样的服务器,需要多少。如果测试人员不能指导这些工作,那么无论用什么测试工具,给出多漂亮的测试报表,所谓的性能测试都是无意义的!
- 对你的数据持怀疑态度,比如异常数据和脏数据
对待任何数据,都要像对待开发一样,绝对不要相信;
- 折中的艺术
开发如此,测试如此,项目管理也如此,当然,人员的管理更是如此,尤其在中国;
- 性能测试的精髓是场景和拓扑的设计
性能测试的关键是可以分析的场景,没有可以分析的场景,其他都是面谈;
- 没人能够精确的回放事件
工作中最重要的两个体现就是:a. 记录好操作的每个步骤 b. 任何讨论和扯皮都要留下证据
任何函数都可以微分,但却不是都能积分回去的,原因很简单:山地自行车比赛枪声开始了,运动员骑着定级的山地车,过山坡,过水沟,过灌木,过飞石,到达终点后被告知,枪走火了,刚才的不算;你他妈倒着原路返回一个试试!
- 万事皆有原因
任何规律都有其原因,但是却并不一定被找到。
一个同事刚做了一系列试验来证明qps和rt的关系,他们表现的非但不是反比关系,甚至没有啥关系。qps对cpu的依赖可能更多一些,而rt受io的应该应该会更多;实际拓扑和影响因素会有很多,但我享受这个过程。
- 测试人员的所有相关工作中,最容易的是写代码
最后这条留给测试的新手们
性能测试和数据分析的一点总结