性能测试_测试点性能 - CSDN
性能测试 订阅
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。 展开全文
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
信息
属    性
软件术语
外文名
performance testing
中文名
性能测试
性能测试内容
性能测试在软件的质量保证中起着重要的作用,它包括的测试内容丰富多样。中国软件评测中心将性能测试概括为三个方面:应用在客户端性能的测试、应用在网络上性能的测试和应用在服务器端性能的测试。通常情况下,三方面有效、合理的结合,可以达到对系统性能全面的分析和瓶颈的预测。应用在客户端性能测试的目的是考察客户端应用的性能,测试的入口是客户端。它主要包括并发性能测试、疲劳强度测试、大数据量测试和速度测试等,其中并发性能 测试是重点。并发性能测试是重点并发性能测试的过程是一个负载测试和压力测试的过程,即逐渐增加负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析交易执行指标和资源监控指标来确定系统并发性能的过程。负载测试(Load Testing)是确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统组成部分的相应输出项,例如通过量、响应时间、CPU负载、内存使用等来决定系统的性能。负载测试是一个分析软件应用程序和支撑架构、模拟真实环境的使用,从而来确定能够接收的性能过程。压力测试(Stress Testing)是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。并发性能测试的目的主要体现在三个方面:以真实的业务为依据,选择有代表性的、关键的业务操作设计测试案例,以评价系统的当前性能;当扩展应用程序的功能或者新的应用程序将要被部署时,负载测试会帮助确定系统是否还能够处理期望的用户负载,以预测系统的未来性能;通过模拟成百上千个用户,重复执行和运行测试,可以确认性能瓶颈并优化和调整应用,目的在于寻找到瓶颈问题。当一家企业自己组织力量或委托软件公司代为开发一套应用系统的时候,尤其是以后在生产环境中实际使用起来,用户往往会产生疑问,这套系统能不能承受大量的并发用户同时访问? 这类问题最常见于采用联机事务处理(OLTP)方式数据库应用、Web浏览和视频点播等系统。这种问题的解决要借助于科学的软件测试手段和先进的测试工具。举例说明:电信计费软件众所周知,每月20日左右是市话交费的高峰期,全市几千个收费网点同时启动。收费过程一般分为两步,首先要根据用户提出的电话号码来查询出其当月产生费用,然后收取现金并将此用户修改为已交费状态。一个用户看起来简单的两个步骤,但当成百上千的终端,同时执行这样的操作时,情况就大不一样了,如此众多的交易同时发生,对应用程序本身、操作系统、中心数据库服务器、中间件服务器、网络设备的承受力都是一个严峻的考验。决策者不可能在发生问题后才考虑系统的承受力,预见软件的并发承受力,这是在软件测试阶段就应该解决的问题。大多数公司企业需要支持成百上千名用户,各类应用环境以及由不同供 应商提供的元件组装起来的复杂产品,难以预知的用户负载和愈来愈复杂的应用程序,使公司担忧会发生投放性能差、用户遭受反应慢、系统失灵等问题。其结果就是导致公司收益的损失。如何模拟实际情况呢? 找若干台电脑和同样数目的操作人员在同一时刻进行操作,然后拿秒表记录下反应时间? 这样的手工作坊式的测试方法不切实际,且无法捕捉程序内部变化情况,这样就需要压力测试工具的辅助。测试的基本策略是自动负载测试,通过在一台或几台PC机上模拟成百或上千的虚拟用户同时执行业务的情景,对应用程序进行测试,同时记录下每一事务处理的时间、中间件服务器峰值数据、数据库状态等。通过可重复的、真实的测试能够彻底地度量应用的可扩展性和性能,确定问题所在以及优化系统性能。预先知道了系统的承受力,就为最终用户规划整个运行环境的配置提供了有力的依据。并发性能测试前的准备工作测试环境:配置测试环境是测试实施的一个重要阶段,测试环境的适合与否会严重影响测试结果的真实性和正确性。测试环境包括硬件环境和软件环境,硬件环境指测试必需的服务器、客户端、网络连接设备以及打印机/扫描仪等辅助硬件设备所构成的环境;软件环境指被测软件运行时的操作系统、数据库及其他应用软件构成的环境。一个充分准备好的测试环境有三个优点:一个稳定、可重复的测试环境,能够保证测试结果的正确;保证达到测试执行的技术需求;保证得到正确的、可重复的以及易理解的测试结果。测试工具:并发性能测试是在客户端执行的黑盒测试,一般不采用手工方式,而是利用工具采用自动化方式进行。成熟的并发性能测试工具有很多,选择的依据主要是测试需求和性能价格比。著名的并发性能测试工具有QALoad、LoadRunner、Benchmark Factory和Webstress等。这些测试工具都是自动化负载测试工具,通过可重复的、真实的测试,能够彻底地度量应用的可扩展性和性能,可以在整个开发生命周期、跨越多种平台、自动执行测试任务,可以模拟成百上千的用户并发执行关键业务而完成对应用程序的测试。测试数据:在初始的测试环境中需要输入一些适当的测试数据,目的是识别数据状态并且验证用于测试的测试案例,在正式的测试开始以前对测试案例进行调试,将正式测试开始时的错误降到最低。在测试进行到关键过程环节时,非常有必要进行数据状态的备份。制造初始数据意味着将合适的数据存储下来,需要的时候恢复它,初始数据提供了一个基线用来评估测试执行的结果。在测试正式执行时,还需要准备业务测试数据,比如测试并发查询业务,那么要求对应的数据库和表中有相当的数据量以及数据的种类应能覆盖全部业务。模拟真实环境测试,有些软件,特别是面向大众的商品化软件,在测试时常常需要考察在真实环境中的表现。如测试杀毒软件的扫描速度时,硬盘上布置的不同类型文件的比例要尽量接近真实环境,这样测试出来的数据才有实际意义。并发性能测试的种类与指标并发性能测试的种类取决于并发性能测试工具监控的对象,以QALoad自动化负载测试工具为例。软件针对各种测试目标提供了DB2、DCOM、ODBC、ORACLE、NETLoad、Corba、QARun、SAP、SQLServer、Sybase、Telnet、TUXEDO、UNIFACE、WinSock、WWW、Java Script等不同的监控对象,支持Windows和UNIX测试环境。最关键的仍然是测试过程中对监控对象的灵活应用,例如三层结构的运行模式广泛使用,对中间件的并发性能测试作为问题被提到议事日程上来,许多系统都采用了国产中间件,选择Java Script监控对象,手工编写脚本,可以达到测试目的。采用自动化负载测试工具执行的并发性能测试,基本遵循的测试过程有:测试需求与测试内容,测试案例制定,测试环境准备,测试脚本录制、编写与调试,脚本分配、回放配置 与加载策略,测试执行跟踪,结果分析与定位问题所在,测试报告与测试评估。并发性能测试监控的对象不同,测试的主要指标也不相同,主要的测试指标包括交易处理性能指标和UNIX资源监控。其中,交易处理性能指标包括交易结果、每分钟交易数、交易响应时间(Min:最小服务器响应时间;Mean:平均服务器响应时间;Max:最大服务器响应时间;StdDev:事务处理服务器响应的偏差,值越大,偏差越大;Median:中值响应时间;90%:90%事务处理的服务器响应时间)、虚拟并发用户数。应用实例:“新华社多媒体数据库 V1.0”性能测试中国软件评测中心(CSTC)根据新华社技术局提出的《多媒体数据库(一期)性能测试需求》和GB/T 17544《软件包质量要求和测试》的国家标准,使用工业标准级负载测试工具对新华社使用的“新华社多媒体数据库 V1.0”进行了性能测试。性能测试的目的是模拟多用户并发访问新华社多媒体数据库,执行关键检索业务,分析系统性能。性能测试的重点是针对系统并发压力负载较大的主要检索业务,进行并发测试和疲劳测试,系统采用B/S运行模式。并发测试设计了特定时间段内分别在中文库、英文库、图片库中进行单检索词、多检索词以及变检索式、混合检索业务等并发测试案例。疲劳测试案例为在中文库中并发用户数200,进行测试周期约8小时的单检索词检索。在进行并发和疲劳测试的同时,监测的测试指标包括交易处理性能以及UNIX(Linux)、Oracle、Apache资源等。测试结论:在新华社机房测试环境和内网测试环境中,100M带宽情况下,针对规定的各并发测试案例,系统能够承受并发用户数为200的负载压力,最大交易数/分钟达到78.73,运行基本稳定,但随着负载压力增大,系统性能有所衰减。系统能够承受200并发用户数持续周期约8小时的疲劳压力,基本能够稳定运行。通过对系统UNIX(Linux)、Oracle和Apache资源的监控,系统资源能够满足上述并发和疲劳性能需求,且系统硬件资源尚有较大利用余地。当并发用户数超过200时,监控到HTTP 500、connect和超时错误,且Web服务器报内存溢出错误,系统应进一步提高性能,以支持更大并发用户数。建议进一步优化软件系统,充分利用硬件资源,缩短交易响应时间。疲劳强度与大数据量测试疲劳测试是采用系统稳定运行情况下能够支持的最大并发用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。疲劳强度测试可以采用工具自动化的方式进行测试,也可以手 工编写程序测试,其中后者占的比例较大。一般情况下以服务器能够正常稳定响应请求的最大并发用户数进行一定时间的疲劳测试,获取交易执行指标数据和系统资源监控数据。如出现错误导致测试不能成功执行,则及时调整测试指标,例如降低用户数、缩短测试周期等。还有一种情况的疲劳测试是对当前系统性能的评估,用系统正常业务情况下并发用户数为基础,进行一定时间的疲劳测试。大数据量测试可以分为两种类型:针对某些系统存储、传输、统计、查询等业务进行大数据量的独立数据量测试;与压力性能测试、负载性能测试、疲劳性能测试相结合的综合数据量测试方案。大数据量测试的关键是测试数据的准备,可以依靠工具准备测试数据。速度测试主要是针对关键有速度要求的业务进行手工测速度,可以在多次测试的基础上求平均值,可以和工具测得的响应时间等指标做对比分析。应用在网络上性能的测试重点是利用成熟先进的自动化技术进行网络应用性能监控、网络应用性能分析和网络预测。网络应用性能分析网络应用性能分析的目的是准确展示网络带宽、延迟、负载和TCP端口的变化是如何影响用户的响应时间的。利用网络应用性能分析工具,例如Application Expert,能够发现应用的瓶颈,我们可知应用在网络上运行时在每个阶段发生的应用行为,在应用线程级分析应用的问题。可以解决多种问题:客户端是否对数据库服务器运行了不必要的请求?当服务器从客户端接受了一个查询,应用服务器是否花费了不可接受的时间联系数据库服务器?在投产前预测应用的响应时间;利用Application Expert调整应用在广域网上的性能;Application Expert能够让你快速、容易地仿真应用性能,根据最终用户在不同网络配置环境下的响应时间,用户可以根据自己的条件决定应用投产的网络环境。网络应用性能监控在系统试运行之后,需要及时准确地了解网络上正在发生什么事情;什么应用在运行,如何运行;多少PC正在访问LAN或WAN;哪些应用程序导致系统瓶颈或资源竞争,这时网络应用性能监控以及网络资源管理对系统的正常稳定运行是非常关键的。利用网络应用性能监控工具,可以达到事半功倍的效果,在这方面我们可以提供的工具是Network Vantage。通俗地讲,它主要用来分析关键应用程序的性能,定位问题的根源是在客户端、服务器、应用程序还是网络。在大多数情况下用户较关心的问题还有哪些应用程序占用大量带宽,哪些用户产生了最大的网络流量,这个工具同样能满足要求。网络预测考虑到系统未来发展的扩展性,预测网络流量的变化、网络结构的变化对用户系统的影响非常重要。根据规划数据进行预测并及时提供网络性能预测数据。我们利用网络预测分析容量规划工具PREDICTOR可以作到:设置服务水平、完成日网络容量规划、离线测试网络、网络失效和容量极限分析、完成日常故障诊断、预测网络设备迁移和网络设备升级对整个网络的影响。从网络管理软件获取网络拓扑结构、从现有的流量监控软件获取流量信息(若没有这类软件可人工生成流量数据),这样可以得到现有网络的基本结构。在基本结构的基础上,可根据网络结构的变化、网络流量的变化生成报告和图表,说明这些变化是如何影响网络性能的。PREDICTOR提供如下信息:根据预测的结果帮助用户及时升级网络,避免因关键设备超过利用阀值导致系统性能下降;哪个网络设备需要升级,这样可减少网络延迟、避免网络瓶颈;根据预测的结果避免不必要的网络升级。对于应用在服务器上性能的测试,可以采用工具监控,也可以使用系统本身的监控命令,例如Tuxedo中可以使用Top命令监控资源使用情况。实施测试的目的是实现服务器 设备、服务器操作系统、数据库系统、应用在服务器上性能的全面监控,测试原理如下图。UNIX资源监控指标和描述监控指标 描述平均负载 系统正常状态下,最后60秒同步进程的平均个数冲突率 在以太网上监测到的每秒冲突数进程/线程交换率 进程和线程之间每秒交换次数CPU利用率 CPU占用率(%)磁盘交换率 磁盘交换速率接收包错误率 接收以太网数据包时每秒错误数包输入率 每秒输入的以太网数据包数目中断速率 CPU每秒处理的中断数输出包错误率 发送以太网数据包时每秒错误数包输入率 每秒输出的以太网数据包数目读入内存页速率 物理内存中每秒读入内存页的数目写出内存页速率 每秒从物理内存中写到页文件中的内存页数目或者从物理内存中删掉的内存页数目内存页交换速率 每秒写入内存页和从物理内存中读出页的个数进程入交换率 交换区输入的进程数目进程出交换率 交换区输出的进程数目系统CPU利用率 系统的CPU占用率(%)用户CPU利用率 用户模式下的CPU占用率(%)磁盘阻塞 磁盘每秒阻塞的字节数
收起全文
  • 原文转自:...相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工具之一。本文为JMeter性能测试完整入门篇,从Jmeter下载安装到编写一个完整...


    原文转自:https://blog.csdn.net/lovesoo/article/details/78579547

    Apache JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。相比Loadrunner而言,JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工具之一。

    本文为JMeter性能测试完整入门篇,从Jmeter下载安装到编写一个完整性能测试脚本、最终执行性能测试并分析性能测试结果。

    运行环境为Windows 10系统,JDK版本为1.8,JMeter版本为3.3。

    2. Jmeter安装

    2.1 JDK安装

    由于Jmeter是基于java开发,首先需要下载安装JDK (目前JMeter只支持到Java 8,尚不支持 Java 9) 
    1. 官网下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 
    2. 选择Java SE 8u151/ 8u152,点击JDK下载 
    这里写图片描述
    3. 安装下载的JDK 
    4. 配置系统环境变量

    2.2 JMeter安装

    1. 官网下载地址:http://jmeter.apache.org/download_jmeter.cgi
    2. 下载最新JMeter 3.3版本:apache-jmeter-3.3.zip 
      这里写图片描述
    3. 下载完成后解压zip包
    4. 启动JMeter 
      双击JMeter解压路径(apache-jmeter-3.3\bin)bin下面的jmeter.bat即可 
      这里写图片描述

    3. 测试实例

    我们选取最常见的百度搜索接口:

    3.1 接口地址

    http://www.baidu.com/s?ie=utf-8&wd=jmeter性能测试

    3.2 请求参数

    ie:编码方式,默认为utf-8 
    wd: 搜索词

    3.3 返回结果

    搜索结果,我们可以通过校验结果中是否含有搜索词wd来判断本次请求成功或失败。

    4. JMeter脚本编写

    4.1 添加线程组

    右键点击“测试计划” -> “添加” -> “Threads(Users)” -> “线程组” 
    这里写图片描述 
    这里可以配置线程组名称,线程数,准备时长(Ramp-Up Period(in seconds))循环次数,调度器等参数: 
    这里写图片描述 
    线程组参数详解: 
    1. 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。 
    2. Ramp-Up Period(in seconds)准备时长:设置的虚拟用户数需要多长时间全部启动。如果线程数为10,准备时长为2,那么需要2秒钟启动10个线程,也就是每秒钟启动5个线程。 
    3. 循环次数:每个线程发送请求的次数。如果线程数为10,循环次数为100,那么每个线程发送100次请求。总请求数为10*100=1000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。 
    4. Delay Thread creation until needed:直到需要时延迟线程的创建。 
    5. 调度器:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远) 
    持续时间(秒):测试持续时间,会覆盖结束时间 
    启动延迟(秒):测试延迟启动时间,会覆盖启动时间 
    启动时间:测试启动时间,启动延迟会覆盖它。当启动时间已过,手动只需测试时当前时间也会覆盖它。 
    结束时间:测试结束时间,持续时间会覆盖它。

    因为接口调试需要,我们暂时均使用默认设置,待后面真正执行性能测试时再回来配置。

    4.2 添加HTTP请求

    右键点击“线程组” -> “添加” -> “Sampler” -> “HTTP请求” 
    这里写图片描述 
    对于我们的接口http://www.baidu.com/s?ie=utf-8&wd=jmeter性能测试,可以参考下图填写: 
    这里写图片描述 
    Http请求主要参数详解:

    1. Web服务器 
      协议:向目标服务器发送HTTP请求协议,可以是HTTP或HTTPS,默认为HTTP 
      服务器名称或IP :HTTP请求发送的目标服务器名称或IP 
      端口号:目标服务器的端口号,默认值为80 
      2.Http请求 
      方法:发送HTTP请求的方法,可用方法包括GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE等。 
      路径:目标URL路径(URL中去掉服务器地址、端口及参数后剩余部分) 
      Content encoding :编码方式,默认为ISO-8859-1编码,这里配置为utf-8
    2. 同请求一起发送参数 
      在请求中发送的URL参数,用户可以将URL中所有参数设置在本表中,表中每行为一个参数(对应URL中的 name=value),注意参数传入中文时需要勾选“编码”

    4.3 添加察看结果树

    右键点击“线程组” -> “添加” -> “监听器” -> “察看结果树” 
    这里写图片描述 
    这时,我们运行Http请求,修改响应数据格式为“HTML Source Formatted”,可以看到本次搜索返回结果页面标题为”jmeter性能测试_百度搜索“。 
    这里写图片描述

    4.4 添加用户自定义变量

    我们可以添加用户自定义变量用以Http请求参数化,右键点击“线程组” -> “添加” -> “配置元件” -> “用户定义的变量”: 
    这里写图片描述 
    新增一个参数wd,存放搜索词: 
    这里写图片描述 
    并在Http请求中使用该参数,格式为:${wd} 
    这里写图片描述

    4.5 添加断言

    右键点击“HTTP请求” -> “添加”-> “断言” -> “响应断言” 
    这里写图片描述 
    我们校验返回的文本中是否包含搜索词,添加参数${wd}到要测试的模式中: 
    这里写图片描述

    4.6 添加断言结果

    右键点击“HTTP请求” -> “添加”-> “监听器” -> “断言结果” 
    这里写图片描述

    这时,我们再运行一次就可以看到断言结果成功或失败了 
    这里写图片描述

    4.7 添加聚合报告

    右键点击“线程组” -> “添加” -> “监听器” -> “聚合报告”,用以存放性能测试报告 
    这里写图片描述 
    这样,我们就完成了一个完整Http接口的JMeter性能测试脚本编写。

    5. 执行性能测试

    5.1 配置线程组

    点击线程组,配置本次性能测试相关参数:线程数,循环次数,持续时间等,这里我们配置并发用户数为10,持续时间为60s 
    这里写图片描述

    5.2 执行测试

    点击绿色小箭头按钮即可启动测试,测试之前需要点击小扫把按钮清除之前的调试结果。 
    这里写图片描述

    6. 分析测试报告

    待性能测试执行完成后,打开聚合报告可以看到: 
    这里写图片描述

    聚合报告参数详解: 
    1. Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值 
    2. #Samples:请求数——表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100 
    3. Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,以Transaction 为单位显示平均响应时间 
    4. Median:中位数,也就是 50% 用户的响应时间 
    5. 90% Line:90% 用户的响应时间 
    6. Min:最小响应时间 
    7. Max:最大响应时间 
    8. Error%:错误率——错误请求数/请求总数 
    9. Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数 
    10. KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec

    一般而言,性能测试中我们需要重点关注的数据有: #Samples 请求数,Average 平均响应时间,Min 最小响应时间,Max 最大响应时间,Error% 错误率及Throughput 吞吐量。

    7. 源码下载

    至此,我们使用JMeter完成了一个完整的Http接口性能测试流程,从脚本编写,执行到最终结果分析。

    完整的脚本源码下载链接: https://pan.baidu.com/s/1eS90cVo 密码: st15

    展开全文
  • 1、本课程针对JMETER软件性能测试八大组件:配置元件、前置处理器、定时器、sampler(采样器)、后 置处理器、断言、监听器以及逻辑控制器等内容全方位讲解。 2、参数化、badboy测试脚本开发以及...
  • Jmeter性能测试从入门到精通-全程实战 全程实战,每个知识点通过实际项目演练讲解 理论实践结合,既会做,又知道为什么这样做 讲解时同其他工具做对比,加深理解,了解区别 分享技巧,用起来事半功倍 从基础讲...
  • 如何做性能测试

    2018-02-20 14:42:01
    一、什么是性能测试 是不断的通过不同场景的系统表现去探究系统设计与资源消耗之间的平衡。 我们可以认为性能测试是:通过在测试环境下对系统或构件的性能进行探测,用以验证在生产环境下系统性能是否达到预估的...
    一、什么是性能测试
     是不断的通过不同场景的系统表现去探究系统设计与资源消耗之间的平衡。
     我们可以认为性能测试是:通过在测试环境下对系统或构件的性能进行探测,用以验证在生产环境下系统性能是否达到预估的性能需求,发现系统可能存在的性能瓶颈,进而改善优化并系统的性能,提高系统的可扩展性、稳定性。
     从上面的描述可以看出,性能测试的主要工作包括:获得预估的性能需求、搭建测试环境、执行测试、分析测试结果。其中,最为重要两个工作是确定测试的目的、方案,并对结果进行分析。    



    二、性能测试的目的

        (1)验证系统是否满足预期需求;
        (2)验证系统在高压下的表现;
        (3)验证系统是否能持续稳定的运行;
        (4)探测系统的瓶颈和产生瓶颈的原因;
        (5)探测系统设计与资源之间的最佳平衡,改善并优化系统的性能。



    三、如何做性能测试

    1. 负载测试:找到系统稳定时(或满足性能需求下)的最大吞吐量;(要有响应时间、成功率的限制,比如定义:99.9%的响应时间必需在1ms之内,平均响应时间在1ms以内,100%的请求成功)

    2. 稳定性(通过浸泡测试soak test):以系统稳定时的最大吞吐量(或满足性能需求时的最大吞吐量),长时间对系统进行测试,已检查系统是否稳定

    3. 压力测试:找到系统极限值,系统瓶颈(系统崩溃临界值)(要求:响应时间可以变慢,但系统不能崩溃;)

    (根据测试目的,选择是进行负载、压力、稳定性还是几种测试;)

    4. 并发有两个概念:
    1. 多个用户同时进行相同操作,访问同一接口——单个业务接口并发;
    2. 多个用户同时访问系统,但进行不同的操作,访问不同的接口——系统级并发;
    (在性能测试过程中,根据具体场景和业务选择合适的方案,一般第2种更符合实际场景。以上2种都需要进行测试;)

    5. 测试流程:确定测试目的与需求——根据需求与场景,梳理测试要点——根据测试目的,制定测试方案——准备测试环境与数据——测试执行(脚本或工具)——统计测试结果——分析结果——测试报告

    PS:
    1 .测试执行时,执行多次,取平均结果更为准确。
    2. 单机并发不够时,采用多机分布式并发;
    3. 测试过程,一定要尽可能模拟实际应用场景;


    四、性能测试关注的指标

    测试人员关注(单次业务相关指标):
    1. 并发用户数
    2. 响应时间:TP(百分比分布统计)
    3. 吞吐量:tps/qps
    4. 成功率
    5. 失败率

    开发人员关注(系统层面指标):
     1. Tomcat、数据库等;
     2. 容量:系统能承载的最大访问量是多少?系统最大的业务处理量是多少?
     3. 稳定性:是否支持7*24小时(一周)的业务访问?

    运维人员关注(硬件资源相关指标 ):
    1. 硬件资源消耗情况:CPU、内存、I/O读写速度、网络带宽等




    五、性能结果分析

    以下相关指标分析时需注意:
    1. 响应时间不要光看平均值,平均值不靠谱。要求最好定成:99.9%请求必须<1s,所有的平均响应时间必须<1s,这两个条件限制;
    2. 响应时间要和吞吐量TPS/QPS挂钩

         系统的性能如果只看吞吐量,不看响应时间是没有意义的。我的系统可以顶10万请求,但是响应时间已经到了5秒钟,这样的系统已经不可用了,这样的吞吐量也是没有意义的。
        我们知道,当并发量(吞吐量)上涨的时候,系统会变得越来越不稳定,响应时间的波动也会越来越大,响应时间也会变得越来越慢,而吞吐率也越来越上不去(如上图所示),包括CPU的使用率情况也会如此。所以,当系统变得不稳定的时候,吞吐量已经没有意义了。吞吐量有意义的时候仅当系统稳定的时候。
    所以,吞吐量的值必须有响应时间来卡。比如:TP99小于100ms的时候,系统可以承载的最大并发数是1000qps。这意味着,我们要不断的在不同的并发数上测试,以找到软件的最稳定时的最大吞吐量。

        3. 响应时间吞吐量要和成功率挂钩
            不难理解,如果请求可以并发10w,但是成功率只有40%,那也没什么用。
            性能测试的失败率的容忍应该是非常低的。对于一些关键系统,成功请求数必须在100%,一点都不能含糊。

        4. CPU、内存等硬件资源占比持续超过90%,说明性能存在瓶颈;
        5. 带宽波动起伏很大,说明带宽受限;

    展开全文
  • 性能测试总结

    2018-11-13 16:43:17
    最近在做性能测试的东西,网上内容纷杂,以下以个人之见做一些整理总结。 一、什么是性能测试性能测试、压力测试、负载测试是经常提到的三个概念,这三个名词的含义常常混淆,我们来看一下他们的概念解释: ...

     

    最近在做性能测试的东西,网上内容纷杂,以下以个人之见做一些整理总结。

    一、什么是性能测试?

    性能测试、压力测试、负载测试是经常提到的三个概念,这三个名词的含义常常混淆,我们来看一下他们的概念解释:

    负载测试

           系统正常工作时所能承受的最大负载,也可称为“容量测试”。模拟实际软件系统所承受的负载条件的系统负荷,通过不断加载(如逐渐增加模拟用户的数量)或其它加载方式来观察不同负载下系统的响应时间和数据吞吐量、系统占用的资源(如CPU、内存)等,以检验系统的行为和特性,以发现系统可能存在的性能瓶颈、内存泄漏、不能实时同步等问题。负载测试更多地体现了一种方法或一种技术。

     压力测试

            在什么极限情况下系统会崩溃,是否具有自我恢复性。在强负载(大数据量、大量并发用户等)下的测试,查看应用系统在峰值使用情况下操作行为,从而有效地发现系统的某项功能隐患、系统是否具有良好的容错能力和可恢复能力。压力测试分为高负载下的长时间(如24小时以上)的稳定性压力测试和极限负载情况下导致系统崩溃的破坏性压力测试。在高负载情况下来对系统的稳定性进行测试,更有效地发现系统稳定性的隐患和系统在负载峰值的条件下功能隐患等。

     性能测试

            为了获得系统在某种特定的条件下(特定的负载条件下)的性能指标数据。性能测试会在不同负载情况下进行。

     

           乍一看其实三者之间的区分不大,提炼一下可以总结为:负载测试是性能测试、压力测试所使用的一种方式方法。不同的是,压力测试的目的是为了看在怎样的条件下系统会崩溃以发现各个组件的不足,而性能测试的目的则是为了看不同负载情况下的系统表现,我认为可以说压力测试是一种极限的性能测试方式。

     

    不同的角色对于性能测试的理解是不一样的:

    对于用户而言

    对于开发者而言

    对于管理员而言

    而对于测试而言,性能是质量保证的一部分,需要从以上各个角度考虑。

    二、涉及的基础概念

          1. 响应时间

              从用户发送一个请求到用户接收到服务器返回的响应数据的时间就是响应时间。

          2. 吞吐量

              每秒系统处理的请求数量。吞吐量大表明系统单位时间能处理的请求数越多。

              TPS:Transactions Per Second,每秒事务数。它是软件测试结果的测量单位。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数。

              QPS:Queries Per Second,每秒查询率。它是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。

             区别及理解:

             a. TPS即每秒处理事务数,包括:”用户请求服务器”、”服务器自己的内部处理”、”服务器返回给用户”,这三个过程,每秒能够完成N个这三个过程,TPS也就是3;

             b. QPS基本类似于TPS,但是不同的是,对于一个页面的一次访问,形成一个TPS;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就可计入QPS之中。

             c. 一般的,评价系统性能均以每秒钟完成的技术交易的数量来衡量。系统整体处理能力取决于处理能力最低模块的TPS值。

             d. QPS对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。

          3. 错误率

              错误请求数量与总请求数量之比。负载增加,可能会出现请求处理不过来的情况,错误数量就会不断增加。

          4. 资源利用率

         定义:指的是对不同系统资源的使用程度,通常以占用最大值的百分比来衡量

         通常需要关注的服务器资源如下:

         a. CPU

    定义:中央处理器是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。CPU Load: 系统正在干活的多少的度量,队列长度。系统平均负载。

    标准:CPU指标主要指的CPU利用率,包括用户态(user)、系统态(sys)、等待态(wait)、空闲态(idle)。CPU 利用率要低于业界警戒值范围之内,即小于或者等于75%;CPU sys%小于或者等于30%, CPU wait%小于或者等于5%。单核CPU也需遵循上述指标要求。CPU Load要小于CPU 核数。

         b. 内存

    定义:与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。

    标准:现代的操作系统为了最大利用内存,在内存中存放了缓存,因此内存利用率100%并不代表内存有瓶颈,衡量系统内有有瓶颈主要靠SWAP(与虚拟内存交换)交换空间利用率,一般情况下,SWAP交换空间利用率要低于70%,太多的交换将会引起系统性能低下。

         c. 磁盘吞吐量

    定义:磁盘吞吐量是指在无磁盘故障的情况下单位时间内通过磁盘的数据量。

    标准:磁盘指标主要有每秒读写多少兆,磁盘繁忙率,磁盘队列数,平均服务时间,平均等待时间,空间利用率。其中磁盘繁忙率是直接反映磁盘是否有瓶颈的的重要依据,一般情况下,磁盘繁忙率要低于70%。

         d. 网络吞吐量

    定义:网络吞吐量是指在无网络故障的情况下单位时间内通过的网络的数据数量。单位为Byte/s。网络吞吐量指标用于衡量系统对于网络设备或链路传输能力的需求。当网络吞吐量指标接近网络设备或链路最大传输能力时,则需要考虑升级网络设备。

    标准:网络吞吐量指标主要有每秒有多少兆流量进出,一般情况下不能超过设备或链路最大传输能力的70%。

    三、常用工具

    1.JMeter

    之前用JMeter做压力测试的总结:JMeter压力测试

     

    线程组:用来设置并发的数量和模式。是用来模拟用户并发的组件。JMeter 的每个任务都是用线程来处理的。

    线程数:要并发的请求数量。

    Ramp-Up Period: 在多次时间内把这些并发的请求发送完,单位秒

    循环次数:这些并发一共要循环测试多少次

    调度器:

    启动时间:测试计划什么时候启动,启动延迟会覆盖它。当启动时间已过,手动运行脚本时当前时间也会覆盖它(但启动时间页面显示不会变)。

    结束时间:测试计划什么时候结束,持续时间会覆盖它。

    持续时间(秒):测试计划持续多长时间,会覆盖结束时间。

    启动延迟(秒):测试计划延迟多长时间启动,会覆盖启动时间。

    配置元件:

    CSV Data Set Config: 用来做参数化

    HTTP Cookie 管理器: 用来自动保存cookie

    HTTP信息头管理器:把http header中所有请求都用到且相同的属性设置在这里。

    HTTP请求默认值:把http request中所有请求都用到且相同的属性设置在这里。

    用户定义的变量:定义变量,并给出默认值。

    Sampler:

    HTTP请求:添加要测试发送给服务器的http请求。

    前置处理器:

    BeanShell PreProcessor:用java编写在http请求执行前一些参数的设置和修改

    后置处理器:

    BeanShell PostProcessor:用java编写在http请求执行后一些参数的设置和修改

    断言:

    设置检查当前Request返回的Response需要满足的标准,若不满足,则认为Request失败。

    监听器:用来查看测试的结果

    用表格察看结果:显示每个http request执行时间和状态

    察看结果树:显示每个http request执行的response和request信息

    聚合报告:显示整体测试的执行情况,平均值等。

    2. Apache ab

    Apache的ab命令模拟多线程并发请求,测试服务器负载压力。 ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载。但注意不要一次上太多的负载,造成目标服务器直接因内存耗光死机,而不得不硬重启。

    使用:https://www.jianshu.com/p/e3793ae91a62

    3. LoadRunner

    https://blog.csdn.net/mo_feng_/article/details/67639662

    4. Locust

    https://testerhome.com/topics/7607

    https://testerhome.com/topics/7631

    对比总结

    https://blog.csdn.net/lijie1010/article/details/79374361

    https://www.cnblogs.com/puresoul/p/5503134.html

     

    描述 JMeter LoadRunner
    架构原理 通过中间代理,监控和收集并发客户端的指令,把他们生成脚本,再发送的应用服务器,再监控应用服务器反馈的过程 同JMeter
    安装 简单,解压即可,比较灵活 LoadRunner安装包比较大,安装比较麻烦,工具本身相对比较笨重
    支持的协议 支持多种协议:HTTP、HTTPS、SOAP、FTP、Database via JDBC、JMS等,但相对LR还是不够全面,由于此原因相对来说jemter比较灵活,轻便 支持的协议非常多,比较全面,但正因此显得工具本身比较笨重,不够灵活
    脚本录制 提供了一个利用本地ProxyServer(代理服务器)来录制生成测试脚本的功能,也支持badboy录制再生成JMeter脚本 自带录制功能强大,可直接录制回放
    并发模型 通过增加线程组的数目,或者是设置循环次数来增加并发用户 支持多种并发模型,通过在场景中选择要设置什么样的场景,然后选择虚拟用户数
    分布式测试 支持,可设置多台代理,通过远程控制实现多台机器并发压力 同JMeter
    资源监控 通过JMeterPlugins插件和ServerAgent实现 自带资源监控功能
    报告分析 通过与Ant集成,生成HTML报告 自身支持生成HTML、Word报告
    虚拟IP 不支持 支持
    网速模拟 不支持 支持
    扩展性 开源,可根据需求修改源码 通过扩展函数库实现
    学习成本 主要是自学官网上的资料 网上资料和相关培训很多,购买正版的话,还有技术支持

    四、一个完整的性能测试流程

    什么时间做

    在系统功能测试完成、趋于稳定的情况下再进行性能测试。

    用什么做

    上述常用工具。

    怎么做

     

    五、参考链接

    性能测试基础理论:

    https://www.cnblogs.com/puresoul/p/5456855.html

     

    基础概念:

    https://blog.csdn.net/wind19/article/details/8600083

     

    Apache ab:

    https://www.cnblogs.com/lishuyi/p/5808661.html

     

    全链路压测:

    全链路压测平台(Quake)在美团中的实践

    阿里全链路压测-大促备战核武器

     

    https://www.cnblogs.com/puresoul/p/5463477.html

    https://www.cnblogs.com/puresoul/p/5503134.html

    展开全文
  • 一个完整的性能测试流程 下午逛一个测试交流群时,聊起性能测试,然后某位群成员说他们用的loadrunner做性能,当时觉得这话有点偏颇,虽然我也是一个性能测试道路上的摸索前进者。。。 诚然,我们在进行性能测试工作...

    一个完整的性能测试流程
    下午逛一个测试交流群时,聊起性能测试,然后某位群成员说他们用的loadrunner做性能,当时觉得这话有点偏颇,虽然我也是一个性能测试道路上的摸索前进者。。。

    诚然,我们在进行性能测试工作的过程中,需要借助工具的辅助来帮我们完成一些工作,但loadrunner≠性能测试!或者说,性能测试工具≠性能测试,工具永远是一种

    辅助的工具,而不能认为会用工具就会性能测试了!希望看到这里的童鞋(测试小白这种认知比较多),可以改变这个观念。。。

    下面,就说说一个完整的性能测试过程吧。。。

    PS:文末附上一张性能测试的思维导图

    一、准备工作

    1、系统基础功能验证

    性能测试在什么阶段适合实施?切入点很重要!一般而言,只有在系统基础功能测试验证完成、系统趋于稳定的情况下,才会进行性能测试,否则性能测试是无意义的。

    2、测试团队组建

    根据该项目的具体情况,组建一个几人的性能测试team,其中DBA是必不可少的,然后需要一至几名系统开发人员(对应前端、后台等),还有性能测试设计和分析人员、脚本开发

    和执行人员;在正式开始工作之前,应该对脚本开发和执行人员进行一些培训,或者应该由具有相关经验的人员担任。

    3、工具的选择

    综合系统设计、工具成本、测试团队的技能来考虑,选择合适的测试工具,最起码应该满足一下几点:

    ①支持对web(这里以web系统为例)系统的性能测试,支持http和https协议;

    ②工具运行在Windows平台上;

    ③支持对webserver、前端、数据库的性能计数器进行监控;

    4、预先的业务场景分析

    为了对系统性能建立直观上的认识和分析,应对系统较重要和常用的业务场景模块进行分析,针对性的进行分析,以对接下来的测试计划设计进行准备。

    二、测试计划

    测试计划阶段最重要的是分析用户场景,确定系统性能目标。

    1、性能测试领域分析

    根据对项目背景,业务的了解,确定本次性能测试要解决的问题点;是测试系统能否满足实际运行时的需要,还是目前的系统在哪些方面制约系统性能的表现,或者,哪些系统因素导致

    系统无法跟上业务发展?确定测试领域,然后具体问题具体分析。

    2、用户场景剖析和业务建模

    根据对系统业务、用户活跃时间、访问频率、场景交互等各方面的分析,整理一个业务场景表,当然其中最好对用户操作场景、步骤进行详细的描述,为测试脚本开发提供依据。

    3、确定性能目标

    前面已经确定了本次性能测试的应用领域,接下来就是针对具体的领域关注点,确定性能目标(指标);其中需要和其他业务部门进行沟通协商,以及结合当前系统的响应时间等数据,确定

    最终我们需要达到的响应时间和系统资源使用率等目标;比如:

    ①登录请求到登录成功的页面响应时间不能超过2秒;

    ②报表审核提交的页面响应时间不能超过5秒;

    ③文件的上传、下载页面响应时间不超过8秒;

    ④服务器的CPU平均使用率小于70%,内存使用率小于75%;

    ⑤各个业务系统的响应时间和服务器资源使用情况在不同测试环境下,各指标随负载变化的情况等;

    4、制定测试计划的实施时间

    预设本次性能测试各子模块的起止时间,产出,参与人员等等。

    三、测试脚本设计与开发

    性能测试中,测试脚本设计与开发占据了很大的时间比重。

    1、测试环境设计

    本次性能测试的目标是需要验证系统在实际运行环境中的性能外,还需要考虑到不同的硬件配置是否会是制约系统性能的重要因素!因此在测试环境中,需要部署多个不同的测试环境,

    在不同的硬件配置上检查应用系统的性能,并对不同配置下系统的测试结果进行分析,得出最优结果(最适合当前系统的配置)。

    这里所说的配置大概是如下几类:

    ①数据库服务器

    ②应用服务器

    ③负载模拟器

    ④软件运行环境,平台

    测试环境测试数据,可以根据系统的运行预期来确定,比如需要测试的业务场景,数据多久执行一次备份转移,该业务场景涉及哪些表,每次操作数据怎样写入,写入几条,需要多少的

    测试数据来使得测试环境的数据保持一致性等等。

    可以在首次测试数据生成时,将其导出到本地保存,在每次测试开始前导入数据,保持一致性。

    2、测试场景设计

    通过和业务部门沟通以及以往用户操作习惯,确定用户操作习惯模式,以及不同的场景用户数量,操作次数,确定测试指标,以及性能监控等。

    3、测试用例设计

    确认测试场景后,在系统已有的操作描述上,进一步完善为可映射为脚本的测试用例描述,用例大概内容如下:

    用例编号:查询表单_xxx_x1(命名以业务操作场景为主,简洁易懂即可)

    用例条件:用户已登录、具有对应权限等。。。

    操作步骤:

    ①进入对应页面。。。。。。

    ②查询相关数据。。。。。。

    ③勾选导出数据。。。。。。

    ④修改上传数据。。。。。。

    PS:这里的操作步骤只是个例子,具体以系统业务场景描述;

    4、脚本和辅助工具的开发及使用

    按照用例描述,可利用工具进行录制,然后在录制的脚本中进行修改;比如参数化、关联、检查点等等,最后的结果使得测试脚本可用,能达到测试要求即可;

    PS:个人而言,建议尽量自己写脚本来实现业务操作场景,这样对个人技能提升较大;一句话:能写就绝不录制!!!

    四、测试执行与管理

    在这个阶段,只需要按照之前已经设计好的业务场景、环境和测试用例脚本,部署环境,执行测试并记录结果即可。

    1、建立测试环境

    按照之前已经设计好的测试环境,部署对应的环境,由运维或开发人员进行部署,检查,并仔细调整,同时保持测试环境的干净和稳定,不受外来因素影响。

    2、执行测试脚本

    这一点比较简单,在已部署好的测试环境中,按照业务场景和编号,按顺序执行我们已经设计好的测试脚本。

    3、测试结果记录

    根据测试采用的工具不同,结果的记录也有不同的形式;现在大多的性能测试工具都提供比较完整的界面图形化的测试结果,当然,对于服务器的资源使用等情况,可以利用一些计数器或

    第三方监控工具来对其进行记录,执行完测试后,对结果进行整理分析。

    五、测试分析

    1、测试环境的系统性能分析

    根据我们之前记录得到的测试结果(图表、曲线等),经过计算,与预定的性能指标进行对比,确定是否达到了我们需要的结果;如未达到,查看具体的瓶颈点,然后根据瓶颈点的具体数据,

    进行具体情况具体分析(影响性能的因素很多,这一点,可以根据经验和数据表现来判断分析)。

    2、硬件设备对系统性能表现的影响分析

    由于之前设计了几个不同的测试环境,故可以根据不同测试环境的硬件资源使用状况图进行分析,确定瓶颈是再数据库服务器、应用服务器抑或其他方面,然后针对性的进行优化等操作。

    3、其他影响因素分析

    影响系统性能的因素很多,可以从用户能感受到的场景分析,哪里比较慢,哪里速度尚可,这里可以根据2\5\8原则对其进行分析;

    至于其他诸如网络带宽、操作动作、存储池、线程实现、服务器处理机制等一系列的影响因素,具体问题具体分析,这里就不一一表述了。

    4、测试中发现的问题

    在性能测试执行过程中,可能会发现某些功能上的不足或存在的缺陷,以及需要优化的地方,这也是执行多次测试的优点。

    六、性能测试思维导图

    在这里插入图片描述
    在这里插入图片描述

    以上就是一个较简单,完整的性能测试过程,当然其中很有很多值得分析和探讨的内容,限于篇幅和时间问题,这里不一一赘述,以后会慢慢对性能测试执行、瓶颈分析、优化的内容不断

    补充,也希望看到的童鞋可以提出建议和指正,如有兴趣,可加入博客主页的群链接,一起交流关于软件测试的相关技术和经验。。。
    在这里插入图片描述

    展开全文
  • 1、为什么要做性能测试? 1)目前绝大多数应用都是基于网络的分布式应用,我们无法知道用户数量,用户场景的不确定性,导致系统测试时,不仅仅是功能,业务逻辑,接口测试,还要测试系统性能。一个用户没问题,但是...
  • 性能测试方法

    2020-05-07 15:46:39
    负载测试:通过在被测系统上不断加压,直到性能指标达到极限,例如“响应时间”超过预定指标或者某种资源已经达到饱和状态。 测试目的: 主要目的是找到系统处理能力的极限。 系统不断加压,tps会达到最高后稳定,此...
  • 什么是性能测试?web性能应该注意些什么? 性能测试,简而言之就是模仿用户对一个系统进行大批量的操作,得出系统各项性能指标和性能瓶颈,并从中发现存在的问题,通过多方协助调优的过程。而web端的性能测试应该...
  • 如何做性能测试

    2019-12-17 17:53:29
    性能优化的常见概念 吞吐量(TPS, QPS):简单来说就是每秒钟完成的事务数或者查询数。通常吞吐量大表明系统单位时间能处理的请求数越多,所以通常希望TPS越高越好 响应时间:即从请求发出去到收到系统返回的时间...
  • 性能测试(Performance Test) 通过测试工具和测试手段,监测和收集测试过程中的软件系统运行数据,度量系统与预定义目标的差距。而预定义目标就是通过性能需求来表示。 怎样才能更有效的获得性能需求?以便更好...
  • 性能测试常见指标

    2018-09-06 19:33:56
    最近在学习性能测试的东西,对于一些常见性能测试指标做些总结,保存在这里方便后期查阅,文中摘抄自某大神的博客,文末放原文链接,有需要的童鞋可以更深入了解!       什么是性能测试?   压力测试:...
  • 一、 性能测试术语解释 1. 响应时间 响应时间即从应用系统发出请求开始,到客户端接收到最后一个字节数据为止所消耗的时间。响应时间按软件的特点再可以细分,如对于一个 C/S 软件的响应时间可以细分为网络传输...
  • app常见性能测试

    2018-11-01 11:17:58
    普遍的apk性能测试,主要是以下七类 1、响应 2、内存 3、cpu 4、FPS (app使用的流畅度) 5、GPU过度渲染 6、耗电 7、耗流 (app除了这些性能测试,还有:手机版本号兼容性,屏幕分辨率兼容性,稳定性测试,...
  • APP性能测试工具

    2019-12-18 14:23:45
    APP性能测试工具是一个简单易上手的Android性能监测工具,该工具是由emmagee开源项目二次开发而来,主要用于监测单个App的CPU、内存、流量、电量、电流、帧数以及整体性能状态,同时支持自定义的监控频率以及性能...
  •  本文档明确性能测试分析报告的评审行为,明确评审过程中使用的各项指标,使性能测试分析报告评审相关人员能够依据此规范检查性能测试分析报告的内容填写是否符合模版要求,检查性能测试分析报告是否正确反映了性能...
  • 《iOS APP 性能检测

    2017-10-16 11:06:37
    colawyeeqiu | 导语 最近组里在做性能优化,既然要优化,就首先要有指标来描述性能水平,并且可以检测到这些指标,通过指标 值的变化来看优化效果,于是笔者调研了iOS APP性能检测的一些方法,在此总结一下。...
  • 性能测试报告模板

    2018-03-27 17:21:02
    XXXX科技公司 名称:XXX性能测试报告 目 录 1 概述 11.1性能测试概念 11.2性能测试目的 11.3性能测试目标 11.4性能测试的常见分类 12 系统简介 22.1参考资料 ...
  • 性能测试指标含义

    2018-10-18 13:41:32
    性能测试是什么? 网上有很多,要说概念就得先说分类,性能测试,压力测试,负载测试,容量测试...在我看来,只是根据不同的测试目的(即想要达成的结果)而取的不同名字,手段都是一样的,不外乎模拟并发用户来访问...
  • 做过很多次的性能测试,现在回想之前的测试,有很多的地方不足,导致测试的结果可能不是很准确,现在总结下,如果有不足之处还请补充。 数据库相关的性能测试包含2个方面的测试:1涉及业务的性能测试2只是针对...
1 2 3 4 5 ... 20
收藏数 1,270,184
精华内容 508,073
关键字:

性能测试