day1_接口测试基础】的更多相关文章

一.什么是接口: 接口:一般分为两种,程序内部接口和程序对外接口 系统对外接口:系统与外部沟通,比如我们平时用的app,网站进行数据处理的时候都是通过接口调用后端服务器的数据. 程序内部接口:程序内部,模块与模块之间,方法与方法之间进行交互 二.接口分类:有两种接口 1.webService接口:这种接口形式已经不常用,体积太大.该接口走soap协议通过http传输,请求报文和返回报文是xml格式的,如下方样式.我们在测试的时候都是通过工具才能进行调用.测试 <nam>.张三</name…
写在前面:本文主要的章节规划: 1.什么是接口测试    另外,有的时候会直接调用别的公司的接口,比如银行的.淘宝的.支付宝的,此时也需要做接口测试以及验证数据: 做接口测试的好处:      其中, get和post请求是用的最多的  (截图来自fiddler)                  get和post请求的区别 从表面上看,GET后面跟的数据要比POST请求多很多!而get和post提交的数据哪个更大一些呢?get是通过地址栏来提交数据的,post是通过WebForm以表单的形式提…
# -*- coding:utf-8 -*- '''@project: jiaxy@author: Jimmy@file: study_接口测试基础知识一.py@ide: PyCharm Community Edition@time: 2018-11-27 09:07@blog: https://www.cnblogs.com/gotesting/ ''' ''' 接口的分类 按照不同的请求协议:http / webservice / dubbo / socket http协议 get post…
写在前面:本文主要的章节规划: 1.什么是接口测试    另外,有的时候会直接调用别的公司的接口,比如银行的.淘宝的.支付宝的,此时也需要做接口测试以及验证数据: 做接口测试的好处:      其中, get和post请求是用的最多的  (截图来自fiddler)                  get和post请求的区别 从表面上看,GET后面跟的数据要比POST请求多很多!而get和post提交的数据哪个更大一些呢?get是通过地址栏来提交数据的,post是通过WebForm以表单的形式提…
由于自己想学习API方面的测试,但是市面上搜不到相关的图书可以系统学习,网上的内容又零零散散,适合有点API开发基础的人去搜索.为了方面新手学习API测试,现在整理了他人的宝贵经验和自己的学习心得,尽量在一篇文章中囊括API测试前需要了解的API基础知识. 接口测试基础 1.什么是接口? 2.接口类型 3.接口本质 4.什么是接口测试? 5.为什么做接口测试? 6.怎样做接口测试? 7.接口测试的测试点是什么? 8.接口测试都要掌握哪些知识?---------------- 1.什么是接口? A…
前言: 本文主要针对http接口进行测试,使用Jmeter工具实现. Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对Http接口的测试. 一.开发接口测试案例的整体方案: 第一步:我们要分析出测试需求,并拿到开发提供的接口说明文档: 第二步:从接口说明文档中整理出接口测试案例,里面要包括详细的入参和出参数据以及明确的格式和检查点. 第三步:和开发一起对接口测试案例进行评审. 第四步:结合开发库,准备接口测试案例中…
接口文档访问地址:http://doc.nnzhp.cn/index.php?s=/6&page_id=8 1.什么是接口:从数据库里面取数据或是插入数据 接口测试:测接口一定要有接口文档--先测业务逻辑,再测异常情况:比如测试登录接口时用接口工具登录5次看是不是就被锁了不能登录了,                  其实就是功能测试,它比功能测试还要简单,不需要看页面,只需要看数据对不对就行   http://doc.nnzhp.cn/    xiaohei 123456 2.接口路径url.…
今天是unittest最后一讲,我们解决一下如何只运行一次setUp和tearDown方法以及简单的数据驱动的知识. 1.只运行一次setUp和tearDown方法 很简单,只需要把setUp和tearDown分别替换为setUpClass和tearDownClass即可,但是用这两个方法必须加上 @classmethod 修饰 # coding: utf-8 import unittest import time class MyTest(unittest.TestCase): @classm…
我们先来简单介绍一下unittest框架,先上代码,跟住了哦~~ 1.建立如下结构的文件夹: 注意,上面的文件夹都是package,也就是说你在new新建文件夹的时候不要选directory,而是要选package: 建好了文件夹,第一步就算完成啦! 2.第二步,我们先来说一下面向对象的思想 面向对象,很简单,你需要先找一个女朋友/男朋友……咳咳,跑题了.面向对象,就是把所有的功能都当做单独的模块,模块之间的耦合(就是关联)度越低,那么你的结构越好,当你需要这些功能时,你只需要去调用相应的模块即…
Jmeter接口测试 一般分五个步骤: (1)添加线程组 (2)添加http请求 (3)在http请求中写入接入url.路径.请求方式和参数 (4)添加查看结果树 (5)调用接口.查看返回值…
读取Excel表格中的内容,不多说,直接上代码: # coding: utf-8 import xlrd # excel路径 excel_path = r'C:\Users\weiming\Desktop\Inter\data\test_case_merchant_basic.xlsx' # 打开Excel data = xlrd.open_workbook(excel_path) # 查看Excel中的sheet名称 data.sheet_names() # 通过索引或表名获取第一个工作表:一…
现在我们就开始进入接口测试框架的知识准备阶段,今天是第一篇,很简单的,就是发送纯文字的电子邮件,会的童鞋可以忽略,不会的就多敲几遍,直到自己能敲出来为止~~ # coding: utf-8 import smtplib from email.mime.text import MIMEText mail_host = 'smtp.163.com' receivers = ['XX@qq.com','bb@qq.com'] receiver = ','.join(receivers) passwor…
接口定义 一般我们所说的接口即API,那什么又是API呢,百度给的定义如下: API(Application Programming Interface,应用程序接口)是一些预先定义的接口(如函数.HTTP接口),或指软件系统不同组成部分衔接的约定.用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节. 有点绕口,但我们看下定义里面这些关键字:预先定义的接口 (如函数.HTTP接口).基于软件或硬件得以访问.无需访问源码.无需理解内部工作机制,…
1.postman发送json格式的post请求,直接放链接 row里面body放请求参数,得到请求结果 2.jmeter请求json时需要注意在请求前创建http信息头管理器,然后信息头添加一条名称为 Content-Type,值为 application/json 即可,否则jmeter无法自动转换json请求格式…
如何在jmeter中上传文件:选择post方式后,选择FILES Upload--文件名称栏点击浏览,值栏写file,如果查看的时候报错,就在MIME类型中写TXT 参数化:添加学生信息:进行参数化1.random.选项--函数助手对话框--下拉框选择_Random--输入范围内的最大最小值--点击生成${__Random(00000000,99999999,)}--复制到要参数化的地方,在线程数设置循环的次数就是设置循环次数为52.time.取时间戳,从计算机诞生那一天到现在过了多少秒 在上面…
jmeter:性能测试工具,压测测试计划右键--添加--Threads(Users)--线程组(线程数就是并发数)--右键线程组--添加--Sampler--HTTP请求--最上面的名称可以修改,就是一个备注之类的,然后输入服务器名称或IP:api.nnzhp.cn,默认80端口可以不用写,GET方式时路径/api/user/stu_info?stu_name=xiaohei--点击上面的播放没有反应,所以右键左侧的线程组--添加--监听器--查看结果树--点击出来的查看结果树--再点击播放--…
smtplib发送邮件最后一篇,发送带图片的邮件: 大家可以去廖雪峰的网站看一下,下面的代码就是我跟着博客写的,哈哈,大家即使不明白为什么,也要多写两遍,记在心里,如果有不明白的地方可以留言,船长会第一时间给大家解决:今天有朋友让我建一个QQ群,我想现在还不是建群的时候,因为大家基本上没有什么问题,如果以后问题多了,我会建一个群,来集中解决大家的问题,谢谢大家的支持!开撸吧~~~ # coding: utf-8 import smtplib from email.mime.multipart i…
今天我们来学习python里面的“装饰器” 1.我在函数test运行前想先打印一些内容怎么办? def func(param):    print u"打印的内容"    param() def test():    print u"test内容" func(test) 以上代码即可实现,但是如果我有很多函数都要运行前先打印同样的内容,一个一个的去写就会显得非常笨拙.所以有必要有一个方法,只要通过一定的方式即可实现“调用”. 2.闭包 先看一段代码 def clos…
今天的东西很少,主要是给自己做个笔记,顺便帮大家普及一下Python中的边角知识: 1.if __name__ == "__main__"是什么意思 答:一个.py文件,如果是自身在运行,那么他的__name__值就是"__main__":如果它是被别的程序导入的(作为一个模块),比如:import unittest那么,他的__name__就不是"__main__"了.所以,在.py文件中使用这个条件语句,可以使这个条件语句块中的命令只在它独立…
通过上次的运行,大家应该已经发现了,就是我们写了三个用例,那么在测试报告中setUp和tearDown方法分别运行了三次.没错,这也就是说,每次运行用例之前都会运行setUp和tearDown方法.今天我们就来具体的说一下unittest模块是如何运行所有的用例的: 先写如下用例: # coding: utf-8 import unittest import time class MyTest(unittest.TestCase): def setUp(self): print "SetUp&q…
Logging:日志记录是为了跟踪记录软件运行时,发生的事件,包括出错,提示信息等等. log日志级别:日志级别大小关系为:CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET:模块默认级别为WARNING,即当且仅当等于或高于WARNING的事件会被记录下来,其余的忽略不计. 1.打印到屏幕: import logging logging.warn("this logging warn") logging.…
我先给大家补充一个用QQ发送纯文本电子邮件的代码,用QQ的朋友可以参考一下: # coding=utf-8 import smtplib from email.mime.text import MIMEText mail_host = “smtp.qq.com” receivers = “123@qq.com” sender = “456@qq.com” passwd = ‘QQ邮箱的授权码’ contents = “python发送邮件” # 构造邮件正文 msg=MIMEText(conte…
一,什么是接口 接口一般接口分两种: 系统对外接口:与外部系统对接的接口,用来获取或者传递数据给外部系统 系统内部接口:系统模块.方法之间用来获取或者传递数据的接口 二.接口分类 webservice接口:走soap协议,通过HTTP传输,现在用的较少,测试工具:soapUI HTTP api接口:走HTTP协议,请求方法一般为get和post两种,返回参数一般为json串 三.get请求和post请求区别: 1.get使用URL或cookie传参,post将数据放在body中(实质区别) 2.…
一.计算器5大组成:计算机硬件:(计算机是奴隶)         1.五大组成             控制器             运算器             存储器I/O:内存+外存             输入设备input             输出设备output         2.CPU             控制器+运算器=CPU             功能:控制+运算             工作方式:取指--->分析--->执行             软件的执…
fiddler抓包工作原理: 以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888,过程如下:web代理就是在客户端和服务器之间设置一道关卡,客户端先将请求数据发送出去后,代理服务器会将数据包进行拦截,代理服务器再冒充客户端发送数据到服务器:同理,服务器将响应数据返回,代理服务器也会将数据拦截,再返回给客户端. 1.不能抓https协议的网站? 解决思路:从fiddler里面导出证书,添加进浏览器的证书管理里:若已经安装好,网站显示不能访问,则可能是需要重…
总算是把这个过程理清楚了,现在我们的思路是:what?why?How?,实际上这些个机制产生的内部逻辑是从下至上的的:遇到问题了,想办法解决,总结归纳并取名.从解决一些小问题开始生长,不断打补丁直至完善.学习接口,永远有个认识:这是客户端 和 服务器的之间的交流,可以类别为 用户 和 超市! 什么是session? Http协议是无状态的,Session是一种让请求从无状态变成有状态的机制,实现session的方式有很多种,通过地址栏,借助cookie(cookie就是存在浏览器里的一些信息,以…
目录 一.Python基础 Python简介.环境搭建及包管理 Python基本语法 基本数据类型(6种) 条件/循环 文件读写(文本文件) 函数/类 模块/包 常见算法 二.接口测试快速实践 简单接口搭建(表单/REST) 接口测试基础 快速上手接口测试 接口自动化实践 requests库详解 三.接口安全验证,参数化及断言 各种类型接口的测试 参数化 断言/检查点 四.接口测试框架实现 什么是框架 目前主流接口测试方案 框架类型 框架的分层与规划 框架实现 一.Python基础 Python…
1.为什么要写代码实现接口自动化 大家知道很多接口测试工具可以实现对接口的测试,如postman.jmeter.fiddler等等,而且使用方便,那么为什么还要写代码实现接口自动化呢?工具虽然方便,但也不足之处: 测试数据不可控制 接口测试本质是对数据的测试,调用接口,输入一些数据,随后,接口返回一些数据.验证接口返回数据的正确性.在用工具运行测试用例之前不得不手动向数据库中插入测试数据.这样我们的接口测试是不是就没有那么"自动化了". 无法测试加密接口 这是接口测试工具的一大硬伤,如…
JMeter接口测试-断言  对应qq群号:616961231 一个http请求发出,怎么判断执行的是否正确呢? 通过检查服务器响应数据,是否符合预期的数据, 如果是,任务成功,  如果否, 任务失败. Jmeter断言有多种类型, 我这里就不一一举例了 添加断言方式, HTTP sampler 右键->添加->断言->响应断言 响应断言介绍: 1.Apply to 当我们发出一个请求,可能触发服务端多个请求, main sample only就足以覆盖. 2.要测试的响应字段: 响应文…
在linux/Unix 为代表的os上, 对后端进行测试, 模拟连接请求都会书写脚本 场景: 在Linux 上接口测试工具有ab, restClient, postman等, 最常用的方法是curl进行简单测试 curl是非常方便的Rest 客户端, 可以很方便的完成 Rest API测试, 利用curl对http协议发送Get/Post/Delete/Put, 同时还可以携带header 来满足Rest API 需求的特定条件 curl 常用的参数 -X/--request [GET|POST…