⦁ 环境搭建之接口测试工具Jmeter搭建

1) 什么是Jmeter?

Jmeter是一个接口测试工具,基于Java开发,是是Apche公司使用Java平台开发的一款测试工具。

运行环境需要配置:JDK、JRE、JVM。如果使用JMeter,必须要安装JDK或者JRE。正确配置环境变量。

1) 为什么要使用Jmeter?

作用:

1. 接口测试

2. 性能测试--属于性能测试

3. 压力测试--属于性能测试

4. Web自动化测试

5. 数据库测试

6. JAVA程序测试

优点:

1. 开源、免费--使用成本低

2. 支持多协议--HTTP、FTP、数据库协议等

3. 小巧--容易下载、方便安装、使用简单

4. 功能强大--比postman功能强大

缺点

不支持IP欺骗---LoadRunner可以做到IP欺骗

使用JMeter无法验证JS程序,也无法验证页面UI,所以要须要和Selenium 配合来完成Web2.0应用的测试

学习成本和维护成本较高

⦁ 怎么使用Jmeter?

下载Jmeter,官网:https://jmeter.apache.org/

⦁ 安装启动Jmeter:

(1) 解压到一个“没有空格”的目录。前提:正确安装JDK并正确配置环境变量

(2) 两种启动方式:进入bin目录,ApacheJMeter.jar及Jmeter.bat

2,使用Jmeter进行基本测试:

1) 新建测试计划

2) 基于测试计划,新添加线程组:

1) 基于线程组,新添加-取样器-HTTP请求:

1) 根据接口文档,构造HTTP请求消息(方法、URL(协议、服务器域名或者IP地址【端口号】、路径)、参数)

4.1,传参的两种方式:

第一种:路径后边填写参数

第二种:在参数列表中填写参数:

1) 查看结果,基于测试计划,新添加-监听器-查看结果树

1) 点击运行(工具栏的绿色三角形)

1) 观察结果,单击结果树,在右侧观察结果:

一、测试环境搭建之项目环境搭建:

学生信息管理系统:

0,安装python3.6以上版本,并且正确设置python和pip的环境变量

1) 在项目所在目录打开cmd命令窗口:

1) 在cmd命令安装依赖:

安装依赖模块:pip install -r requirements.txt -i https://pypi.douban.com/simple

若安装速度慢,指定国内源,需再加上: -i https://pypi.douban.com/simple

1) 启动命令:python run_server.py

1) 验证启动成功:

浏览器输入:http://localhost:8000/api/departments/ 或者 http://127.0.0.1:8000/api/departments/

出现以下内容,表示启动成功:

1) 如果浏览器输入地址,返回信息不是第四步所看到的,首先检查cmd窗口,是否服务器发生问题,终止运行。如果关闭启动项目的cmd窗口,则服务不可用。

二、数据格式:

1,功能

XML:传输

HTML:显示

相同点:都有标签

不同点:XML是自定义标签(灵活的),HTML是预定义标签(固定死的)

2,JSON:传输和存储

JSON数据:键名:键值

键名包含在双引号中

键值可以是:

数字(整数或浮点数)

·字符串(在双引号中)

·逻辑值(true 或 false)

·数组(在方括号中)

·对象(在花括号中)

·null

JSON数据之间使用逗号分隔

JSON数组:方括号扩住的JSON对象或者JSON数据

JSON对象:花括号括住的JSON数组或者JSON数据

回顾?

回顾:

1,接口

接口的概念:

两个系统或者同一个系统的不同功能载体,通过访问或者调用而相互连接的地方

接口的功能:

实现前后端的分离,从而更高效、经济、通用性更强。

接口的要素:

1,方法、参数(一系列参数,参数系)、返回值(记住)

2,从http接口的角度:输入(请求)--接口(黑盒子)--输出(响应)

请求地址(URL),请求方式,返回值,参数(记住)

请求携带参数有两种方式(记住):

1,GET:URL后边跟参数:

URL---https://www.baidu.com/?参数名=参数值&参数名=参数值

2,POST:在请求的消息体中携带:

text,json,xml,html等等。

接口的分类:

软件

本地接口

GUI、CMD、API等等

网络接口(协议接口,包括http接口)

HTTP接口:get接口,post接口,put接口,delete接口

硬件

USB  HDMI  网线接口

AR:增强现实

VR:虚拟现实

接口的本质(理解):数据传递的规范:规定传递什么数据,如何传递。

这个规定、约定,或者,接口的定义,在哪里?

接口文档:定义业务接口信息的相关文档。

要素(记住):

1,接口名称

2,简要描述

3,请求URL

4,请求方式(get、post,put delete。)

5,请求参数(参数类型、是否必选、说明)

6,返回值

7,返回参数(参数类型、是否必选、说明)

8,修订信息

功能:

接口开发和测试的依据

接口测试用例设计的依据

2,接口测试

概念(理解):验证接口是否符合接口文档中的定义

原理(重点,记住,必考)

构造接口文档中的请求,模拟用户发送给服务器,获取服务器的响应报文,判断是否符合接口文档中描述的预期,从而在接口层面验证业务是否正确实现。

流程:

工具:

发包:发送协议数据包(http协议报文):Jmeter PostMan

抓包:捕获协议数据包(http协议报文):Fiddler

方法:设计测试用例  ----- 项目实训时详细讲解

分类:

1,按执行方式:

手工执行

自动执行

2,按照内容分(记住):

接口功能测试

接口性能测试

接口安全测试

软件测试按内容划分:

功能、性能、安全、兼容性、易用性、安装卸载、本地化、AB测试、αβγ等等

软件测试按阶段划分:

单元、集成、系统、验收

软件测试按执行方式划分:

手工(第一阶段)、自动化(第二阶段)

动态测试、静态测试:

3,web工作流程

1,URL的概念理解

协议://域名[端口号]/路径(path01/path02/)/文件名-----本质:互联网上的某个资源的定位

2,请求和响应的消息结构(记住):

请求消息:

请求行(行、消息的行):方法 空格 URI 空格 http版本

请求头(消息头、头、头部字段信息):若干行的字段名:字段值--P7到P8

空行

消息体(请求体):

响应消息

状态行(响应行、响应消息的行):http版本 空格 状态码 空格 响应提示短语

响应头(消息头、头、头部字段信息):若干行的字段名:字段值--P7到P8

空行

消息体(响应体):

今天的内容:

1,下载、安装、介绍、使用Jmeter

2,使用Jmeter测试天气预报

3,介绍两种数据格式:json xml

4,搭建学生信息管理系统---使用Jmeter进行接口测试练习的项目

5,使用Jmeter对学院信息接口进行基本的测试

一,Jmeter安装简介:

1,下载,官网:https://jmeter.apache.org/,下载可执行程序的版本,解压即可直接运行,不需要安装

2,安装:解压直接运行,不需要安装。前提:操作系统中已安装JAVA环境:JDK jre jvm。

3,启动:

1,两种方式:

1,bat方式:jmeter.bat。

2,jar包的方式:ApacheJMeter.jar

2,Jmeter可以多开

4,简介:常用目录文件:讲义P63

shell:

property:属性  properties:复数形式

5,主界面:

菜单栏

主界面

状态栏

6,学习思路:按照问题场景,遇到哪个组件,讲解哪个组件。

二、Jmeter对天气预报进行基本的测试:

1,测什么:天气预报的接口--接口文档

2,用什么测:Jmeter

测试原理:

测试用例的执行过程:测试计划

新建方式:

1,打开Jmeter就新建测试计划

2,点击工具栏的空白页面

构造接口文档中的请求

Jmeter的实现方式:HTTP请求取样器:

1,同一个线程组,可以添加多个HTTP请求

2,Jmeter中GET方法,参数的填写(传参)有两种方式:

1,URL后边跟参数

2,参数列表中添加参数和参数值

3,两种方式只选其中一种即可

模拟用户发送给服务器

Jmeter模拟用户:线程组来模拟用户:一个线程就是一个用户

Jmeter发送给服务器:点击工具栏的启动(绿色三角形按钮),发送请求

获取服务器的响应报文

Jmeter的实现方式:察看结果树(监听器)

0,绿色请求成功,红色请求失败

1,记录:每次请求和响应的消息

2,清除记录:工具栏中的扫帚

判断是否符合接口文档中描述的预期

两种方式:

1,人眼观察

2,断言

从而在接口层面验证业务是否正确实现。

如果正确:测试通过

如果不正确:测试失败

三、两种数据格式:xml json

xml:

共同点:标签语言

不同点:

HTML    XML

显示数据 存储和传输数据

预定义标签 自定义标签

以后遇到的响应报文或者消息体数据格式,绝大部分都会是:XML JSON HTML。

JSON:(以下都是重点,记住)

1,JSON数据的基本格式:名称:值

· 数据在名称:值对中

· 数据由逗号分隔

· 花括号保存对象

· 方括号保存数组

2,JSON的名称必须是用双引号括起来的字符串

3,JSON数据的值可以是:

· 数字(整数或浮点数)----1 和 “1”

· 字符串(在双引号中)

· 逻辑值(true 或 false)---又叫布尔值

· 数组(在方括号中)

· 对象(在花括号中)

· null(空)

四、搭建学生信息管理系统:

1,启动:在run_server.py所在目录下,使用CMD启动项目。如果关闭dos窗口,就会关闭学生信息管理系统。

2,学生信息管理系统的接口。

调用接口,来实现调用学生信息系统的数据。

接口--学生信息管理系统---数据存储在数据库中--分为三个表:学院信息,班级信息,学生信息

3,查询数据库:

1,使用工具--SQLiteStudio-3.2.1

2,后缀名:.sqlite3.

4,项目接口简介:

1,学院信息接口:

四大类:

查询:6个

新增:1个

修改:1个

删除:2个

2,这些接口都是RESTFUL风格架构的接口:

3,构造接口请求,要严格遵循接口文档中的描述

Day02stu的更多相关文章

随机推荐

  1. java全栈项目

    文档地址:https://course.7yue.pro/lin/sleeve/ http://talelin.unna.com.cn/ 1.小程序里,我把结构分为三部分:wxml(view).pag ...

  2. Samba安装及配置

    samba 可以实现Windows对Windows . Windows对Linux.Linux对Linux的文件传输 在centos7安装samba yum install samba 启动samba ...

  3. C++ std::forward_list 基本用法

    #include <iostream> #include <string> #include <forward_list> using namespace std; ...

  4. FIRST 集与 FOLLOW 集

    文法: S→ABc A→a|ε B→b|ε First 集合求法: 能 由非终结符号推出的所有的开头符号或可能的ε,但要求这个开头符号是终结符号.如此题 A 可以推导出 a 和ε,所以 FIRST(A ...

  5. Java向上下转型中的陷阱{详细}

    1: 多态   多态时继承下面的产物,之所以存在向上向下转型的目的,就是解决参数传递的不变形,体现面向接口编程的重要性, 1.1 方法的多态性   ①. 方法的重载:同一个方法名称可以根据参数的类型或 ...

  6. Mysql的旧版本下载地址

    直接进入:http://downloads.mysql.com/archives/community/

  7. 单个div元素实现双边框

    昨天被问到一个很有意思的问题,单个div元素怎么实现双边框,当时脑子懵了一下,然后就回答出来用伪元素,别的实在是想不起来了,所以在此总结一下子防止以后再被问到 总结了一下大约有以下几种方案: 伪元素实 ...

  8. Ant Design Pro 改变默认启动端口号

    找到package.json文件,找到图位置加--port即可.

  9. CentOS 7.x 安装 ZSH 终端

    一.安装基本组件 首先执行 yum 命令来安装需要的 zsh 原始程序与 git 程序来 pull 代码. yum install -y zsh git 安装 oh my zsh 脚本 (这一步需要安 ...

  10. Redis 数据类型及应用场景

    一. redis 特点 所有数据存储在内存中,高速读写 提供丰富多样的数据类型:string. hash. set. sorted set.bitmap.hyperloglog 提供了 AOF 和 R ...