zoukankan      html  css  js  c++  java
  • 接口测试及接口Jmeter工具介绍

    一、接口类型及数据传递的格式
    接口类型:
    1、HTTP接口:通过GET或POST来获取数据,在数据处理上效率比较高
    2、WebServer接口:通过SOAP协议来获取数据,比起http来说处理更加复杂的数据类型
    数据格式传送类型:
    主要有两种:json、XML
    接口学习案例
    1、汇聚数据: https://www.juhe.cn/
    2、老黄历:get/Postq请求
    3、QQ在线状态判断:soap请求
     
    soapUI介绍
    1、soapUI介绍WebServer的xml请求格式
    2、soapUI的http和webserver接口类型的区别?
     
    二、接口测试工具的选用
    工具介绍:
    • Firefox插件:httprequester
    • Chrome插件:postman
    • soapUI
    • Jmeter
    • 代码
    1、火狐,接口测试工具:httprequester
    特点:插件类工具
     
    2、chrome 接口测试工具:PostMan
    特点:插件类的工具
    3、soapUI可做http、webserver测试
    关键技能:简洁简单
    4、Jmeter 可测试接口,也可以测试性能压力、小型的压力测试
    关键技能:参数化(三种方式)/重复请求
     
    使用工具的目的:模拟客户端向接口发送数据
    接口测试原理:模拟客户终端向服务器发送报文请求,服务器接收请求报文后对相应的报文做处理并向客户返回应答,客户端接收到应答的一个过程
     
    关键是学习测试的方法,测试工具是作为辅助测试!!
    三、JMeter工具使用详解
    常用测试元件
    1、测试计划
    默认
     
    2、线程组
    并发数(相当于用户数)、并发时间
    用途:压力测试
    3、采样器-Sampler
    用途:常用的HTTP接口请求、Soap请求 、JDBC请求
    主要:3种主要的请求方式,需熟练
    3.1 HTTP请求实例
    1. 框架搭建
    (1)使用方法:线程组-》添加-》sampler-》HTTP请求
     
    (2)HTTP请求的配置,配置完成后,进行接口测试
    (3)添加察看结果树,对测试结果进行查看
     
    3.2 JDBC请求实例
    1.框架搭建:
    (1)添加线程组
    (2)线程组->添加Sampler->JDBC Request
    (3)添加配置元件:JDBC Connection Configuration,并要配置
    • 配置变量名Variable Name
    • 配置Database URL
    • 配置JDBC Driver class
    • 配置用户名和密码
    配置变量名Variable Name:
    1、Variable Name中的变量名和Sampler的JDBC Request变量名保持一致
    2、Variable Nam决定JDBC取样器的配置,就是在JDBC request的时候确定去哪个绑定的配置
    配置Database URL:
    1、填写本地数据库,3306端口,数据库名称为
    2、与部署在Tomcat,web服务器上的jdbc.properties配置文件中的URL一致,即可
    配置JDBC Driver class:
    1、填写JDBC连接时使用的驱动类
    2、与部署在Tomcat,web服务器上的jdbc.properties配置文件中的driver一致,即可
    配置用户名和密码:
    1、填写与web服务器进行数据交互的mysql库的用户名和密码
    2、余与部署在Tomcat,web服务器上的jdbc.properties配置文件中的username,password一致,即可
    jdbc.properties配置文件内容:
    #HYEC dataSource 1
    jdbc.driver=com.mysql.jdbc.Driver 用于配置JDBC Driver class
    jdbc.url=jdbc:mysql://192.168.43.129:3306/future?useUnicode=true&characterEncoding=utf-8 配置Database URL
    jdbc.username=root
    jdbc.password=123456
    cpool.minPoolSize=5
    cpool.maxPoolSize=50
    cpool.maxIdleTime=7200
    cpool.maxIdleTimeExcessConnections=1800
    cpool.acquireIncrement=5
    cpool.autoCommitOnClose=true
    cpool.checkoutTimeout=5000
    api.root=register
    2.在JDBC取样器中编写SQL脚本
    3.添加察看结果树,察看请求返回的结果
    4.注意事项
    在测试计划下添加,jdbc jar包
    3.2 Soap请求实例
    1.框架搭建
    (1)添加线程组
    (2)线程组->添加Sampler->Soap/XML-RPC Request
    (3)结果SoapUI工具配置URL 和 Action
    • 配置URL
    • 配置SOAPAction
    配置URL
    1、填写SOAP接口测试请求的URL
    配置Action
    1、使用SoapUI,New Soap Project项目
    2、发送Request请求后,查看服务器返回的Raw数据
    3、Action中填写的路径和服务器中返回的Action一致,即可
    2.添加察看结果树,察看请求返回的结果
     
    四、参数化的三种方式
    1、什么是参数化?
    把参数变量,进行参数值设定
    好处:
    • 数据可以进行多变
    • 通过变量引用,可以达到数据的随机性
    • 数据的批量设置
    注意:
    • 进行参数化,就需要进行变量引用,变量引用的方法:${变量名}
    2、参数化的方式
    方式一:用户定义的变量
    1、新建一个线程组,添加->配置元件->用户定义的变量,进行参数变量名添加,并可以对其赋值
    2、在取样器中,可以进行变量引用
    方式二:_Random、_RandomString函数
    1、运行时需要禁用用户定义的变量
    2、选项->函数助手对话框->进入函数助手
     
    方式三:CSV Data参数化
    1、使用添加--配置元件--CSV Data Set Config
    2、创建txt文件,文件中的每个变量值,用英文逗号,隔开
    表示有4个变量值:188、abc123456、25、5000
    3、Variable Names填写参数变量名,用户将txt文件的值赋值到该变量名,变量名和变量名用英文逗号隔开
     
    解决中文乱码的问题
    1、请求方式改成post
    2、编码改成utf-8
    3、对变量名勾选编码
     
    五、总结:
    1、使用Jmeter进行接口测试时,对每一个接口参数模块需要测试到的值作为CSV参数化。
    2、每个进程组作为成一个接口参数模块,使用进程数的个数,模拟用户使用测试到的参数值进行模拟测试
    3、CSV参数保存的文件名,命名为模块名_接口名_参数名_...._参数值个数.txt
    4、要点技巧:一个一个接口,用线程组分开

  • 相关阅读:
    [Leetcode]-- Median of Two Sorted Arrays
    Implement strStr()
    [Leetcode]-- Remove Element
    3Sum
    推荐一个跨平台内存分配器
    ACE的缺陷
    详谈高性能UDP服务器的开发
    vi查找替换命令详解
    gcc多版本切换
    Centos 5.5升级Python到2.7版本
  • 原文地址:https://www.cnblogs.com/yangsun/p/9751703.html
Copyright © 2011-2022 走看看