性能测试怎么测?

临近2018双11了,最近工作最重要的核心内容就是性能测试。但是我司的性能测试虽然摸索出了自己的一套方式,但是仍然有很多不足或者说比较模糊的地方,在这里还是反思一下。

1、没有性能指标。

性能指标是性能测试最基本的一个需求,性能测试的基准要求。性能测试要做到什么程度,性能调优要调成什么样子,性能指标就是最好的刻度线。性能指标的确定确实也是最让人头痛的事情。现在我司的性能指标还处于“多少并发,服务器只要不死。”这样的初级阶段,参考的还是往次618或者双11的性能数据,并且在其基础上略做调整。

这样的做法无疑是非常粗犷的做法,因为一年以来,或者半年以来,我们自己的系统无疑已经做了天翻地覆的改变,并且业务的要求也是年年岁岁花相似,岁岁年年人不同。看似相似的要求,其实都有了本质上的区别。

要确定性能指标,其实我们现在只能在现有的基准性能作为一个标杆,来围绕它做性能调优,以达到我们自己的业务要求。预估流量其实是一个看得见摸不着的事情。每年激烈的双十一,都会出人意料。比如去年双十一预估有很大的量,结果大家都去天猫了,自己站上没什么流量。要是按往常的预估,今年可能会很惨,因为今年价格战打得特别厉害。

2、业务场景又多又复杂

因为测试环境不匹配的问题,造成日常性能测试的确实。单独项目的性能测试有所缺失就造成了临近双十一时候做性能测试特别着急,时间特别短,但是要压测的场景特别多。做取舍的时候又特别麻烦,什么都觉得都是重点,都觉得要测一下心里才有底,其实有的业务根本不会有太大的流量。

业务场景态度怎么解决呢?我觉得只能平时在测业务的时候就加入性能测试,要把集中的测试分散到日常的业务功能测试中,才能有效地避免集中测试带来的仓促,以及能有更多的时间进行性能调优。

这方面京东和淘宝做得比较好,因为他们是把一年作为性能调优的周期,京东618的结束就是下一个618的开始,所有的工作都是围绕下一个618来进行,这无疑是从战略上就已经决定了日常工作的统筹规划。虽说我们这种小厂做不到,但是越早提前就越能清晰知道自己的业务需求和业务场景的性能需求。更能准确的评估性能指标。

3、通宵测试

电商公司嘛,平时白天要保证用户的正常使用,只能通宵在人少的时候进行性能测试。这听起来好像是很有道理。但是无疑增加了参与人员的工作负担,这段时间运维、测试、开发、产品都要配合通宵加班,白天另外一波人又不知道晚上的具体情况,要么等昨晚那一波人回来上班的时候问清楚,要么自己全程跟进。真的很辛苦,而且低效。

怎么办?预发布环境啊和生产环境匹配啊。预发布环境匹配生产环境,随时能用于性能测试,这是一个最简单粗暴有效的做法。投入虽大,但是收益其实是很高的,能够分担双十一集中测试的风险,又能让本就捉襟见肘的人员有一个灵活的调动。这个账,其实是能算清楚的。

去年的时候,阿里已经做到了无人值守的性能测试,今年能够做到无人值守的发版。确实已经把我们这种小厂远远甩在了身后。

END.

你可能感兴趣的:(性能测试怎么测?)