机器学习及其应用 第2版 课件 第12、13章 接口测试工具、性能测试工具JMeter_第1页
机器学习及其应用 第2版 课件 第12、13章 接口测试工具、性能测试工具JMeter_第2页
机器学习及其应用 第2版 课件 第12、13章 接口测试工具、性能测试工具JMeter_第3页
机器学习及其应用 第2版 课件 第12、13章 接口测试工具、性能测试工具JMeter_第4页
机器学习及其应用 第2版 课件 第12、13章 接口测试工具、性能测试工具JMeter_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第12章

接口测试工具目录2接口测试概述SaopUIJmeterPostman小结10.110.210.310.410.510.1接口测试概述接口测试概述

5接口测试的核心目的在于:以保证系统的正确和稳定为核心,以持续集成为手段,提高测试效率,提升用户体验,降低产品研发成本。接口测试是测试接口,尤其是那些与系统相关联的外部接口。接口测试是在保证高杂性系统质量的内在要求和低成本的经济利益的驱动作用下的最佳解决方案。接口测试工具的分类6Charles抓取接口工具SoapUI测试接口工具WiresharkFiddlerSaopUIJMeterPostman可编辑请求URL,设置不同的参数请求接口,测试接口的功能性、安全性等。可用来抓取HTTP或TCP请求,用来查看接口信息。

测试人员能力

接口测试工具的选择资金成本的考量不同测试工具的测试能力不同,要求使用人员掌握的技能也不同,应考虑测试人员自身的能力选取合适的测试工具。资金成本的考量。有些测试工具是收费的,有些是免费的。应当在能满足团队需求的情况下尽量减少对工具的资金投入。10.2SoapUISoapUI9介绍SoapUI是一个开源测试工具,通过soap/http来检查、调用、实现WebService的功能/负载/安全测试。该工具既可作为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans和IntelliJ中使用。SoapUIPro是SoapUI的商业非开源版本,实现的功能较开源的SoapUI更多。SoapUI的特点10支持Soap和Rest类型接口测试。SoapUI专门针对HTTP类型的两种接口,其初衷更是专门测试Soap类型接口,对于其他协议的接口不支持。支持对接口的功能测试、负载测试和安全测试。测试数据来源(DataSource)有文件、目录、数据库、Excel、Grid、Groovy等。为了让DataSource能循环起来,还要和DataSourceLoop结合。01020304GOALSoapUI的特点11良好的团队协作支持。SoapUI支持创建复合项目(CompositeProjects),允许多人同时在一个项目中工作。由ConditioinalGoto或者Groovy脚本控制流程。尽管TestCase的默认流程是相互依次执行定义的测试步骤,但根据历史TestStep的结果,用户如果希望增加循环或分支的许多场景,可使用这一功能。多格式的测试结果报告输出。支持以PDF/HTML/XML/CSV格式输出Projectreport、TestSuitereport、TestCasereport。01020304GOALSoapUI的使用-1新建SOAP项目:在File中点击NewSOAPProject,把/CurrencyConvertor.asmx?wsdl填写到InitialWSDL中。项目名称将自动被填充,然后点击OK。SoapUI将会根据导入的WSDL创建一个项目,显示在导航栏中。SoapUI的使用-2填写参数:展开CurrencyConvertor,双击Request1打开编辑窗口,将FromCurrency一行的问号修改为AWG(阿鲁巴盾弗罗林),ToCurrency一行的问号修改为AUD(澳大利亚元)。SoapUI的使用-3请求接口:点击左上角的绿色三角请求该汇率接口,可获得接口返回值0.7202,即AWG对AUD的汇率。10.3JmeterJmeter16介绍JMeter是Apache公司基于Java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。它既可以做压力测试,也能做接口测试。其中接口测试的简单操作包括执行http脚本(发get/post请求、加cookie、加header、加权限认证、上传文件)、WebService脚本、参数化、断言、关联和操作数据库等等。Jmeter的特点1701020304GOAL支持Soap和Rest类型接口测试,可扩展WebSocket和Socket接口。JMeter可以测试各种类型的接口,不支持的也可以通过网上或自己编写的插件进行扩展支持对接口的功能测试和负载测试。可从CSV文件中读取数据来源。支持ForEach控制器、循环控制器和While控制器。支持流程控制。由Switch控制器、If控制器、随机控制器等一系列控制器实现流程控制,更复杂的控制可以使用Beanshell脚本。Jmeter的使用-1打开Jmeter:进入JMETER_HOME/bin目录,双击JMeterw.bat(Linux/Unix系统则执行JMeter.sh)打开JMeter。Jmeter的使用-2配置参数:进入HTTPRequestDefaults配置页面,在ServernameorIP字段中输入需要录制脚本的网站地址,Path字段留空。Jmeter的使用-3启动代理服务器:进入HTTP(S)TestScriptRecorder,点击Start按钮。系统将启动JMeter代理服务器,用于拦截浏览器请求。在JMETER_HOME/bin文件夹中将生成一个ApacheJMeterTemporaryRootCA.crt安装证书,需要在浏览器中安装该证书。Jmeter的使用-4配置浏览器:启动Firefox浏览器,但不要关闭JMeter。在浏览器地址栏中输入about:preferences#advanced后按回车进入首选项配置页面。在高级->网络中点击设置按钮,在弹窗中选择自定义代理配置,在HTTP代理输入框中输入localhost或本机的IP地址,在端口输入框中输入8888,勾选为所有协议使用该代理服务器。最后点击确认按钮完成配置。录制脚本:在浏览器中访问目标网站,在网站中点击一些链接,然后关闭浏览器回到JMeter窗口。在ThreadGroup上右键选择Validate验证脚本正确性。运行测试脚本:点击Run->Start运行测试脚本,可在ViewResultsTree中查看脚本执行结果。10.4PostmanPostman23介绍Postman是一种网页调试与发送网页HTTP请求的Chrome插件。可以很方便的模拟GET或者POST或者其他方式的请求来调试接口。但谷歌应用商店从2018年3月开始停止Chrome应用程序的更新,除非继续使用老版本的PostmanChrome应用程序,现在可以更多的去选择使用Postman应用程序。Postman的特点24商业策略仅支持REST类型的接口测试。Runner中运行时,可加载CSV/JSON文件。Runner中的Iteration可用来实现循环通过JavaScript脚本控制实现流程控制。Request的Response以及Runner的Result均可导出为JSON文件。拥有团队协作功能,但需付费。PostmanPostman的使用-1GET请求:请求类型选择GET,在其后输入URL,这里以/search/issues为例。然后点击Params,输入参数KEY=q及其VALUE=orc,此时Postman会自动在URL后添加上“?q=orc”。GET请求的请求头与请求参数如在接口文档中无特别声明时,可以不填。点击Send按钮,则会开始发送请求,请求的返回结果会在下方的Body中展示出来。Postman的使用-2POST请求:请求类型选择POST,在其后输入URL,这里以/post为例。在Bodytab页中输入参数KEY=k及其VALUE=v。点击Send按钮,则会开始发送请求,请求的返回结果会在下方的Body中展示出来。Postman27本章首先对接口测试的目的和意义做了简要说明,并按工具的功能对接口测试工具作了分类。然后给出了在实际应用中选择接口测试工具需要注意的事项。接着详细介绍了三种接口测试工具SoapUI,JMeter和Postman,对它们的特点和各个工具的接口测试方法作了说明。小结谢谢大家下次课再见第13章性能测试工具JMeterPowerPointDesign2025.4目录CONTENTS01020405JMeter概述环境搭建与基本概念测试脚本开发与执行结果分析与报告0306测试计划与方案设计总结与对比JMeter概述PowerPointDesignPART01JMeter支持多种协议,如HTTP、FTP、JDBC等,可对不同类型的系统进行性能测试。例如,通过HTTP协议测试Web应用,FTP协议测试文件传输系统,JDBC协议测试数据库性能。多协议支持能模拟多种负载场景,包括高并发、大数据量等,满足不同测试需求。可设置线程数、Ramp-Up时间等参数,精确控制负载强度和增长速度。多样化负载模拟支持分布式测试,可利用多台机器进行测试,提高测试效率。通过配置分布式测试环境,可模拟大规模用户访问,准确评估系统性能。分布式测试能力核心功能详解030201开源vs商业JMeter是开源软件,免费使用,无成本;LoadRunner是商业软件,需购买许可证。开源软件社区支持强大,商业软件有官方技术支持,但需付费。学习成本与扩展性JMeter学习曲线平缓,适合初学者;LoadRunner功能复杂,学习难度大。JMeter通过插件可扩展功能,LoadRunner扩展性相对较弱。安装复杂度JMeter安装简单,只需Java环境和解压文件;LoadRunner安装复杂,需安装多个组件。JMeter对系统资源要求低,LoadRunner对硬件配置要求较高。与LoadRunner对比环境搭建与基本概念PowerPointDesignPART02安装Java安装Java并配置JAVA_HOME环境变量,确保JMeter运行环境。选择合适的Java版本,如JDK1.8或更高版本。下载解压JMeter从Apache官网下载JMeter最新版本,解压到指定目录。确保解压路径无中文字符,避免运行时出现乱码。配置环境变量配置PATH环境变量,添加JMeter的bin目录路径。通过命令行验证JMeter是否安装成功,输入jmeter-v查看版本信息。安装步骤测试计划是测试的入口,包含所有测试元素。可设置测试计划的名称、线程数、循环次数等参数。测试计划线程组用于模拟用户并发访问,控制线程数量和启动时间。可设置线程数、Ramp-Up时间、循环次数等参数。线程组取样器用于发送请求并获取响应,如HTTP请求取样器。可设置请求方法、URL、参数等信息。取样器核心组件点击“启动”按钮执行测试,查看监听器中的测试结果。分析结果,如响应时间、吞吐量、错误率等指标。执行测试与分析结果配置测试元素配置线程组参数,设置线程数、Ramp-Up时间等。配置取样器参数,设置请求方法、URL、参数等。创建测试计划打开JMeter,创建一个新的测试计划。在测试计划中添加线程组、取样器等测试元素。工作流程测试计划与方案设计PowerPointDesignPART03分析用户在系统中的行为路径,如登录、浏览、下单等。确定用户行为的频率和顺序,为测试场景建模。用户行为分析根据用户行为分析,模拟不同并发场景。例如,模拟100个用户同时登录系统,或50个用户同时浏览商品页面。并发场景模拟设计异常处理机制,如超时、错误重试等。确保测试过程中能够正确处理异常情况,避免影响测试结果。异常处理设计用户场景建模010203响应时间目标设定关键操作的响应时间目标,如登录<2秒,查询<1秒。根据业务需求和用户体验要求,确定合理的响应时间范围。资源使用率目标设定系统资源使用率目标,如CPU<70%,内存<80%。监控系统资源使用情况,确保系统在高负载下稳定运行。吞吐量目标设定系统的吞吐量目标,如每秒处理100个请求。根据业务需求和系统设计,确定合理的吞吐量目标。性能目标设定设计测试环境,包括硬件配置、网络拓扑等。确保测试环境与生产环境尽可能一致,提高测试结果的可靠性。环境设计设计负载模式,如峰值测试、持续测试等。根据业务需求和性能目标,选择合适的负载模式。负载模式设计设计具体的测试场景,如登录场景、查询场景等。确保测试场景覆盖系统的关键功能和业务流程。测试场景设计测试方案设计测试脚本开发与执行PowerPointDesignPART04使用HTTP请求取样器发送GET请求,获取资源。设置请求方法为GET,输入资源的URL地址。GET请求通过CSVDataSetConfig等组件实现请求参数化。从CSV文件中读取参数值,动态替换请求中的参数。参数化请求使用HTTP请求取样器发送POST请求,提交数据。设置请求方法为POST,输入请求参数和数据。POST请求HTTP请求示例在线程组中设置并发数,模拟多个用户同时访问。根据测试场景和性能目标,合理设置并发数。并发数设置设置Ramp-Up时间,控制线程的启动速度。避免线程同时启动对系统造成过大压力。Ramp-Up时间设置设置线程组的循环次数,控制测试的持续时间。可设置为固定次数或无限循环。循环次数设置线程组设置020301使用断言验证响应内容或响应时间。例如,使用响应文本断言验证返回结果是否符合预期。断言使用监听器查看测试结果,如查看结果树、聚合报告等。分析监听器中的数据,评估系统性能。监听器配置日志记录,记录测试过程中的详细信息。便于排查问题和分析测试结果。日志记录结果验证结果分析与报告PowerPointDesignPART05聚合报告展示关键性能指标,如吞吐量、错误率、响应时间等。通过这些指标评估系统的整体性能。关键指标关注百分位响应时间,如90%、95%响应时间。了解系统在高负载下的性能表现。百分位响应时间将聚合报告数据导出为CSV文件,便于进一步分析。使用Excel等工具对数据进行可视化处理。数据导出聚合报告趋势分析使用图形结果查看性能趋势,如样本数目、偏离值等。通过趋势图分析系统性能的变化趋势。图表类型选择合适的图表类型,如折线图、柱状图等。不同图表类型适用于不同的性能指标展示。数据对比对比不同测试场景或不同版本的性能数据。通过对比分析找出性能瓶颈。图形结果使用表格对比不同测试结果,直观展示性能差异。列出关键性能指标的对比数据。使用图形化工具

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论