网站建站 外贸,h5网页设计报告,如何提高一个网站,沙井网站建设公司早期的性能测试更关注后端服务的处理能力。 一个用户去访问一个页面的请求过程#xff0c;如上图。
数据传输时间 当你从浏览器输入网址#xff0c;敲下回车#xff0c;开始...
真实的用户场景请不要忽视数据传输时间#xff0c;想想你给远方的朋友写信#xff0c;信件需…早期的性能测试更关注后端服务的处理能力。 一个用户去访问一个页面的请求过程如上图。
数据传输时间 当你从浏览器输入网址敲下回车开始...
真实的用户场景请不要忽视数据传输时间想想你给远方的朋友写信信件需要经过不同的交通运输工具送到朋友手上当你的朋友写好了信再次通过不同的交通工具送到你的手上。
性能测试过程中的请求与响应过程也类似当我们发送一个请求到服务器接收到这个请求需要时间系统处理完后将处理结果返回给我们也需要时间。
客户端处理时间 从我们的浏览器得到响应数据开始...
真实的用户场景不要忽略客户端的处理时间你拿到信是不是就知道内容了当然不是你得拆开信封把信的内容读一篇吧。
我们的浏览器也是如些浏览器拿到的只有一些HTML、JS、CSS、图片... 的资源更底层当然是二进制数据需要花费时间把他们渲染成我们想要的网页。
系统处理时间 从当系统得到请求后开始...
这是我们的性能测试主要关心的时间当系统得到请求后需要对请求进行处理可能需要查询数据库服务也可能需要调用其它的服务最终生成处理结果并返回给客户端。
然而我们在LoadRunner、JMeter进行性能测试的时候是没有客户端处理时间的你当然可以同时开100个网页可以用多线程Selenium实现访问某网站试试这没对服务器产生多少压力先把自己的电脑搞挂了。
网络传输时间往往也很难模拟真实的场景因为你网站的用户来可能来自世界各地我们总不能在世界各地都搞一个客户端就算可以我们通过什么方式让他们“同时”发请求给服务器呢
各位读者我们约定明天早上8点一起出发去北京全聚德买一只烤鸭把全聚德搞断货这可能吗虽然我们的出发时间是一样的但因为距离不一样到达时间肯定不一样根本对全聚德够不成并发压力嘛。所以我们的性能测试都是放到局域网进行的就是为了尽量降低传输时间模拟并发。
理解了这些我们知道我们所做的性能测试是无法模拟真实的情况网络的传输时间太过复杂客户端处理时间取决于用户的设备。我们能做的就是尽量保证服务器端的处理时间以及在一定的时间可以支撑的并发量。 随着技术的发展越来越多的系统开始做前后端分离。后端服务只提供接口前端在不同的设备上以不同的方式展示。 在这样的架构下我们的性能测试也划分为后端性能和前端性能。
后端性能其实就是接口性能。我们更多的时候不再设计模拟用户场景而是针对单个或一组关联接口进行性能测试这其实一定程度降低了测试的难度。 其实不管是否为前后端分离的架构大多时候他们走的都是HTTP协议。如果是前后端不分离当你发送一个请求时它会返回一堆数据HTML、JS、CSS、图片、音视频...等如果是前后端分离的架构那么后端API返回的数据就单纯的多了一般为JSON格式的数据。 显然只做后端性能是不够的当用户看到一个页面时不单单只有后端返回的接口数据。 这是我在访问一个页面时候得到的所有数据。在你的后端服务没有达到最大并发的前提下那么影响用户体验的就两方面一个是请求的个数另一个是请求的文件大小。
这其实很好理解你在群里来喊了一声请大家吃饭结果稀稀拉拉来了100多人从前一天晚上喝到第二下午你肯定受不了而且其中还有几个哥们特能喝“一直喝”就是不倒你是不是更受不了了。 如果只来了三、五个好友大家随意小酌几杯各自回家不是很好
所以减少请求的个数比如有些JS文件可以做合并减少请求的大小比如有些图片做压缩处理。做好这两点自然用户体验就会好很多前端性能其实不需要通过“并发”来测试的。
上图为性能一款App使用的性能指标这里的侧重点在于App拿到接口数据之后如何更快的把页面渲染出来以及在渲染的过程中对硬件资源的消耗情况还有用户在不同页面的切换的流畅度。
谁让手机硬件一直跟不上App的需求所以我们才需要关心App对移动设备的CPU、内存、FPS、耗电、流量的使用情况。
总结
感谢每一个认真阅读我文章的人
作为一位过来人也是希望大家少走一些弯路如果你不想再体验一次学习时找不到资料没人解答问题坚持几天便放弃的感受的话在这里我给大家分享一些自动化测试的学习资源希望能给你前进的路上带来帮助 软件测试面试文档
我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。